挿入されるすべての行に対してデフォルトのTTLを持つテーブルを作成することは可能ですか、それとも常にTTL挿入/更新を行うときは?
ドキュメントでこれに関する何かを見ることができません:
http://www.datastax.com/documentation/cql/3.0/cql/cql_reference/create_table_r.html
はい、列ファミリー全体にTTLを設定することは可能です。
CREATE TABLE test_table (
# your table definition #
) WITH default_time_to_live = 10;
Inserted rows then disappear after 10 seconds.
私はここでそれのために仕事が行われたと信じています:
https://issues.Apache.org/jira/browse/CASSANDRA-3974
DataStaxのPatrickMcFadin(@PatrickMcFadin)から送信されたドキュメントリファレンスは次のとおりです。
http://docs.datastax.com/en/cql/3.1/cql/cql_reference/tabProp.html
乾杯、
From Cassandra doc:
テーブルのdefault_time_to_liveプロパティを設定することで、テーブル全体にデフォルトのTTLを設定できます。より長い特定の列にTTLを設定しようとすると、テーブルTTLで定義された時間、ApacheCassandra™はエラーを返します。
参照: https://docs.datastax.com/en/cql/3.1/cql/cql_using/use_expire_t.html
そして、ここでTTLに関する一般的な目的のために: https://docs.datastax.com/en/cql/3.1/cql/cql_using/use_expire_c.html