1

オブジェクトのキーの値がリストの場合、cassandraまたはriakのデータをクエリするにはどうすればよいですか?

例=>ジャンル[キー]:ポップ、ロック[値]

ロックなどのジャンルの曲を全部リストアップしたいです。

Cassandra / Riakのセカンダリインデックスを使用してこれを行うことはできますか?

4

2 に答える 2

2

はい、Riakのセカンダリインデックスでこれを処理できます。

オブジェクトをRiakに保存し、適切なジャンルでインデックスを付けるだけです。

データが次のようになっているふりをします(JSON):

{ "song":"My awesome song", "genres":["rock", "alternative"] }

オブジェクトを保存し、ジャンルのバイナリインデックスを使用します(例:curlを使用)。

curl -v -X PUT \
-d '{ "song":"My awesome song", "genres":["rock", "alternative"] }' \
-H "Content-Type: application/json" \
-H "x-riak-index-genre_bin: rock" \
-H "x-riak-index-genre_bin: alternative" \
http://127.0.0.1:8098/riak/mybucket/mykey1

すべての曲を「ロック」でインデックス化するには、次のようにします。

curl http://127.0.0.1:8098/buckets/mybucket/index/genre_bin/rock
于 2012-05-10T18:58:09.777 に答える
0

Riak Searchはそれを簡単に処理できますが、たとえばリストをバイナリ文字列に連結するなどして、エントリが適切にインデックス付けされていることを確認する必要があります。

于 2012-05-10T16:58:27.063 に答える