2011-08-12 17 views
2

誰もがjson文字列をcassandraに挿入する簡単な方法を知っています。 {'key1': 'val1'、 'key2': 'val2'}Apache-CassandraのJSON文字列を挿入する0.8.2

MongoDBでは、dbobj.insert(jsonstring)のようなjson文字列を直接挿入できます。 Cassandraでこれを行う方法はありますか?(Javaでコーディングしています)

+2

なぜだろう文字列の内容abountデータベースケア。それがJSON文字列であるという事実は他の文字列と違うものではありませんか? –

答えて

6

少なくとも3つの方法がありますが、達成しようとしていることと実行するクエリの種類によって異なります。

JSON文字列は、Cassandraの列名として単純な文字列/バイトとして格納できます(行キーとして使用できるものがあると仮定します)。ただし、JSONコンテンツに基づいてクエリを実行することはできません。これは、クライアント側で処理する不透明なデータになります。

ストレージの前にJSONを分割すると、key1、key2が列名、val1、val2が対応する列の値になるようにすることができます。ここでも、行キーとして使用するものが必要です。このメソッドを使用すると、個々の値を取得し、セカンダリインデックスを使用して特定の値を持つ行を取得できます。

行キーとしてkey1、key2を使用し、val1、val2を列名として使用することもできます。 JSONでグループ化されたキーとバレルのペアがあるとすれば、おそらく同じエンティティに属し、関連しているので、これは有用ではありませんが、完全性のために言及します。

編集に追加する:あなたの質問はすべてでカサンドラにデータを挿入する方法を実際にある場合、あなたがそのようなHectorなどのJavaクライアントのドキュメントを読んでください(他のオプションがあまりにもあります - http://wiki.apache.org/cassandra/ClientOptionsを参照)