Hectorとcassandraのスキルを向上させるために、cassandraからデータをクエリするさまざまな方法を試しています。
現在、私は簡単なメッセージシステムを作ろうとしています。最後に投稿されたメッセージを最初に、投稿されたメッセージを時系列で取得したいと思います。
プレーンSQLでは、「orderby」を使用できます。OrderPreservingPartitionerを使用すれば可能ですが、このpartionerは非推奨であり、RandomPartionerよりも効率が低くなっています。タイムスタンプals値を使用して2次列にインデックスを作成することを考えましたが、データを取得する方法がわかりません。少なくとも2つのクエリを使用する必要があると確信しています。
私のコラムFamilyは次のようになります。
create column family messages
with comparator = UTF8Type
and key_validation_class=LongType
and compression_options =
{sstable_compression:SnappyCompressor, chunk_length_kb:64}
and column_metadata = [
{column_name: message, validation_class: UTF8Type}
{column_name: index, validation_class: DateType, index_type: KEYS}
];
インデックス列にDataTypeを使用するか、longを使用するかはわかりませんが、この質問では重要ではないと思います。
では、どうすればデータを並べ替えることができますか?可能であれば、CQL構文とホワイトアウトをどのように実行するかを知りたいと思います。
前もって感謝します。