2012-04-12 10 views
4

私の設定で何が起こっているのか分かりませんが、索引付け後に何も照会できません。インデックス部分を正しく実行する)。誰かが次のことがそれぞれ意味するものとそうでなければならないことを教えてもらえますか?Elastic Search RiverでCouchDBのインデックスを作成する方法:プレーン・イングリッシュ

bestdbというCouchDBデータベースがあります。このデータベースの中に私はproductcustomerのような文書タイプがあります。

私は弾性検索バージョン0.18.7と対応するcouchdb川をインストールしました。私は弾性検索とcouchdbを始めました。私はelasticsearchのnetwork.hostをIPアドレス:10.0.0.129に設定しました。私はtutorialの指示に従った:

curl -XPUT '10.0.0.129:9200/_river/{A}/_meta' -d '{ 
    "type" : "couchdb", 
    "couchdb" : { 
     "host" : "localhost", 
     "port" : 5984, 
     "db" : "bestdb", 
     "filter": null 
    }, 
    "index" : { 
     "index" : "{B}", 
     "type" : "{C}", 
     "bulk_size" : "100", 
     "bulk_timeout" : "10ms" 
    } 
}' 

{A}:これは何ですか?私の理解は、これはちょうど内部の弾性の検索インデックスの権利ですか?クエリや検索には使用されていませんか?だからこれはどんな名前でもいい?

{B}:このインデックスは何ですか。これは上のものとどう違うのですか?私のシナリオでは、これの価値はどうあるべきですか?

{C}:productまたはcustomerのようなcouchdbのドキュメントタイプに関連していますか?

オンラインチュートリアルでは、すべてが同じ値に設定されています。すべての製品ドキュメントまたは顧客ドキュメントを照会したい場合、どのように私のカール・ステートメントがどのように見えますか?

私のために少しでも物事をクリアする人に感謝します。

よろしく、 マーク・黄

答えて

1

kimchyのドキュメントは、多くの場合、想像に少しを残します。 :-)

は川の名前です。川はちょうどESドキュメントで、_riverという名前のインデックスに格納されています。名前は任意の名前のタイプで、ドキュメントIDは_metaです。

B & CあなたbestdbのCouchDB _changesストリームはにインデックスされます、ローカルindex/_typeです。これらは、couchdb文書の_indexフィールドと_typeフィールドで上書きすることができます。上記のいずれも指定されていない場合は、デフォルトでcouchdbインスタンス名bestdb/bestdbになります。

+0

ありがとう、本当にありがとうございます。私が提供した文脈を使って私に説明することができますか?製品のドキュメントタイプ? _indexフィールドと_typeフィールドは一般にどのようなものでしょうか?私の場合、_index(または上記の例{B})はプロダクトIDと_タイプが「プロダクト」になるでしょうか? – Mark

+0

インデックスオブジェクトを追加しないと、couchdbインスタンスにどのように問い合わせますか? – Mark

+0

couchdbの仕組みになじみはありませんが、ESコードから、 '_changes'ストリームのドキュメントに' _index'と '_type'フィールドがある場合、それらは川の設定のデフォルトを上書きします。したがって、設定で** B **と** C **の合理的なデフォルトを設定することはできますが、ビジネスロジックのために製品/顧客ドキュメントを分離するためには、ビジネスロジックのいくつかを実行する必要がありますcouchdbドキュメント。 – drewr

関連する問題