Cassandraデータベースの場合、レコードを挿入時間の昇順で読み取ることができるように、FIFO方式でレコードをフェッチするメカニズムはありますか。基本的に、バッチで最も古いN行を読み取り、それらを処理し、処理されたらバッチを削除する必要があります。
私の理解では、列はタイプ(CompareWithで指定)でソートされ、行はパーティショナーでソートされます。
OrderPreservingPartitionerを使用して、挿入時間の昇順で行を並べ替えることはできますか?私は単一ノードでCassandraを実行しているので、キーの配布についてはあまり心配していません。OrderPreservingPartitionerを使用できる場合、レコードが挿入の昇順で維持されるように、キーの並べ替え基準を構成するにはどうすればよいですか?
あるいは、Hectorは、最も古い行が最初にフェッチされるように、常に行をフェッチするメカニズムを提供しますか?
編集 :
rs_atlの投稿を読んだ後、私はもう少し疑問があります:
これを正しく理解していれば、TimeUUIDTypeをコンパレータとして使用して列ファミリを作成します。次に、列名にタイムスタンプを使用する必要があります。頭に浮かぶ当面の質問は、列名の並べ替え順序を昇順または降順としてどのように定義するかです。列ファミリーの作成時にこれを行うことはできますか、それともクライアントAPIを介して行う必要がありますか?
シャード間隔として「時間」を使用することにした場合、つまり、キーに時間を追加した場合、最も古い時間の行を取得するにはどうすればよいですか?