2012-01-24 8 views
1

私はUbuntu NattyにRiak 1.0.2をインストールしました。Riak検索私に「利用可能なデータが見つかりません」というエラーが表示されました

また、サンプルデータをデータベースに追加しました。 Secondary Indexing機能をテストしたいのでLevelDBバックエンドを使用しています。

私はtest_1バケットを追加しました。そしてそのバケツに私は以下の情報を加えました。

array("name" => "Ray_6", "age" => rand(25, 90), "email" => "[email protected]") with key "id_1" 
array("name" => "Ray_7", "age" => rand(25, 90), "email" => "[email protected]") with key "id_2" 
array("name" => "Ray_8", "age" => rand(25, 90), "email" => "[email protected]") with key "id_3" 

私はこのデータを照会するために検索機能を使用しようとしています。

curl http://localhost:8098/solr/test_1/select?q=name:Ray_6 

しかし、私はこれを行うとき、私はノー見つかったエラーが表示されます。以下は、私は、コマンドラインに入力したCURLの要求があります。

紛失しているものがありますか?バケツに検索可能にするために何かする必要がありますか?

助けていただければ幸いです。

ありがとうございます。

答えて

2

まず、上記URLはRiak Searchを使用しており、セカンダリインデックスは使用していません。あなたはcURLのインタフェースを介してレコードを作成するときに、メタデータのヘッダを追加することにより、セカンダリインデックスを形成

/buckets/<bucket>/index/<fieldname_bin>/query 

:セカンダリインデックスを照会するURLは次の形式です。さまざまな言語のクライアントライブラリがこれを生成します。

特定の質問に戻る。 search-cmdツールを使用してtest_1バケットのインデックスをインストールしましたか?もしあなたがそうしたのであれば、その前にバケツにデータを持っていましたか? Riak Searchは遡及的にデータのインデックスを作成しません。これを行うにはいくつかの方法がありますが、実験的なアプリであればどちらも時間がかかります。

多くのデータがない場合は、インデックスを設定した後に再入力することをおすすめします。それ以外の場合は、セカンダリインデックスを追加するか、データを読み書きする際にsearch APIを使用してセカンダリインデックスを処理する必要があります。それは時間がかかりますが、それは今Riakを通じて利用可能なものです。

これが役に立ちます。

+0

コメントありがとうございます。私は、(1)私のapp.configでriak_searchを有効にし、(2)バケットにプリコミットフックを追加する必要があることを知りました。すぐに回答を投稿する –

関連する問題