CQLコレクションのクエリー

CQLコレクション・セットを含むテーブルを作成する例。

DSE Searchは、CQLコレクションをサポートしています。この例では、よく引用されるCQLセット・コレクションを含むテーブルを作成します。

手順

  1. DataStax EnterpriseをDSE Searchノードとして起動します。
  2. cqlshを起動します。
  3. コレクション・カラムや他のカラムのキースペースとテーブルを作成し、データを挿入します。
    CREATE KEYSPACE mykeyspace
      WITH REPLICATION = {'class':'NetworkTopologyStrategy', 'Solr':1};
    
    USE mykeyspace;
    
    CREATE TABLE mysolr (
      id text PRIMARY KEY,
      name text,
      title text,
      quotes set text
    );
  4. quotations.zipファイルをダウンロードします。
  5. quotations.zipファイルを解凍し、挿入コマンドをコピーして、各コマンドをcqlshコマンドラインにペーストします。
  6. tarボールでインストールした場合のbinディレクトリーにある、以下のコマンドを実行します。たとえば、tarボールでインストールした場合は、以下のようにします。
    installation_location/bin/dsetool create_core mykeyspace.mysolr generateResources=true reindex=true
    mykeyspace.mysolrコアを再作成する場合は、create_coreコマンドの代わりに、reload_coreコマンドを使用します。
    このコマンドからの出力はありません。インデックス作成が終了したら、データを検索できます。
  7. cqlshで、インデックス・データを検索してsucc*に類似した引用句を検出します。
    SELECT * FROM mykeyspace.mysolr WHERE solr_query='quotes:succ*';
    自動的に生成されたリソースを使用してコアを作成したため、検索インデックスの構成により、検索クエリーのCQLの使用に対して要求ハンドラーが定義されます。
  8. ブラウザーを使用し、Solr HTTP APIを使用してインデックス・データを検索してsucc*に類似したタイトルを検出します。
    http://localhost:8983/solr/mykeyspace.mysolr/
      select?q=quotes%3Asucc*&wt=json&indent=on&omitHeader=on
    {
      "response":{"numFound":2,"start":0,"docs":[
          {
            "id":"126",
            "title":"Success",
            "quotes":["If A is success in life, then A equals x plus y
              plus z. Work is x; y is play; and z is keeping your mouth
              shut."],
            "name":"Albert Einstein"},
            {
            "id":"125",
            "title":"Success",
            "quotes":["Always bear in mind that your own resolution to
              succeed is more important than any one thing.",
              "Better to remain silent and be thought a fool than to speak
              out and remove all doubt."],
            "name":"Abraham Lincoln"}]
    }}