2016-08-15 4 views
0

私は少し特別なリクエストがあります。カサンドラ:クエリで並べ替え

結構:私は地理データを保存するためにRedis DBを使用し、georediusを使用してそれらを戻し、距離でソートします。このキーで、私はcassandraのデータを検索します。しかし、カサンドラの結果は鍵か別のものに分類されます。

私が望むのは、私が要求したのと同じ順序で情報を戻すことです。 パーティションキーは、id(私はバックフォームの再取得)とステータスからビルドされています。

私はcassandraにid配列でソートするように指示できますか?

答えて

0

パーティションキーは、異なるノード間でランダムに分散するように設計されています。 ByteOrderedPartitionerを使用して、順序付けされたクエリを実行できます。しかし、BOPはアンチパターンとみなされています。あなたはそれについてもっと読むことができますCassandra ByteOrderedPartitioner

プライマリキーに、ディスクにデータを格納する方法を決定するパラメータを追加できます。これらはクラスタリングキーとして知られています。クラスタ化キーに関するOrder Byクエリを実行できます。これは、クラスタ化キーに関する良い文書ですhttps://docs.datastax.com/en/cql/3.1/cql/ddl/ddl_compound_keys_c.html

スキーマの詳細を共有できる場合は、クラスタリングキーとして何を使用するかを提案できます。

+0

ありがとうございます。 OK。私は後でそれを並べ替える機能があることを望んだ。だから私は自分のコードでこれを行う必要があります。私は経度と緯度がありますが、検索と結果ポイントの間の距離を取得するための情報はcassandraテーブルにありません。 – CordlessWool

関連する問題