2015-11-10 2 views
0

Я новичок в Riak, и я пытаюсь запустить Riak Search, но до сих пор я терпеть неудачу. Я перечислил шаги, которые я пробовал ниже, пожалуйста, сообщите, что мне не хватает.Поиск в Riak Finds Nothing

1) Создать индекс:

curl -X PUT http://192.168.189.153:10018/search/index/ix1 \ 
-H 'Content-Type: application/json' \ 
-d '{"schema":"_yz_default"}' 

2) Создать и активировать индекс

riak-admin bucket-type create citytype '{"props":{"search_index":"ix1"}}' 
riak-admin bucket-type activate citytype 

4) Создание с помощью Ruby,

require 'riak' 
client = Riak::Client.new(:nodes => [ 
       {:host => "192.168.189.153", :pb_port => 10017}, 
       {:host => "192.168.189.153", :pb_port => 10027}, 
       {:host => "192.168.189.153", :pb_port => 10037} 
      ]) 
city = { 
    :name => 'Roskilde', 
    :countrycode => 'DK', 
    :location => '1.2', 
    :population => 80000 
} 
city_bucket = client.bucket_type('citytype').bucket('byer') 
new_city = city_bucket.get_or_new(city[:name]) 
new_city.data = city 
new_city.store(w: 3, dw: 2) 

5) Получить Использование рубин

require 'riak' 

client = Riak::Client.new(:nodes => [ 
       {:host => "192.168.189.153", :pb_port => 10017} 
      ]) 

city_bucket = client.bucket_type('citytype').bucket('byer') 
fetched = city_bucket.get('Roskilde') 
p fetched 

results = client.search("ix1", "name:Roskilde") 

p results 
p results['docs'] 

6) Выход

ruby search1.rb 
#<Riak::RObject {byer,Roskilde} [#<Riak::RContent [application/json]:{"name"=>"Roskilde", "countrycode"=>"DK", "location"=>"1.2", "population"=>80000}>]> 
{"max_score"=>0.0, "num_found"=>0, "docs"=>[]} 
[] 

7) Через HTTP

http://192.168.189.153:10018/types/citytype/buckets/byer/keys/Roskilde 

{"name":"Roskilde","countrycode":"DK","location":"1.2","population":80000} 

http://192.168.189.153:10018/search/query/ix1?wt=json&q=name:Roskilde 

{"responseHeader":{"status":0,"QTime":10,"params":{"192.168.189.153:10034":"_yz_pn:51 OR _yz_pn:39 OR _yz_pn:36 OR _yz_pn:27 OR _yz_pn:24 OR _yz_pn:12","shards":"192.168.189.153:10014/internal_solr/ix1,192.168.189.153:10024/internal_solr/ix1,192.168.189.153:10034/internal_solr/ix1","q":"name:Roskilde","wt":"json","192.168.189.153:10014":"_yz_pn:64 OR (_yz_pn:61 AND (_yz_fpn:61)) OR _yz_pn:60 OR _yz_pn:57 OR _yz_pn:48 OR _yz_pn:45 OR _yz_pn:33 OR _yz_pn:21 OR _yz_pn:9","192.168.189.153:10024":"_yz_pn:54 OR _yz_pn:42 OR _yz_pn:30 OR _yz_pn:18 OR _yz_pn:15 OR _yz_pn:6 OR _yz_pn:3"}},"response":{"numFound":0,"start":0,"maxScore":0.0,"docs":[]}} 

Журналы 8) Ошибка Файл solr.log имеет только объяснимые ошибки (в случаях, где я, от отчаяния сделал некоторые странные подстановочные поиск)

Файл error.log содержит ряд ошибок, подобных этому, но ни один из набора последних новых тестов:

23:15:41.308 [error] Error in process <0.4385.0> on node '[email protected]' with exit value: {{badmatch,['[email protected]']},[{yz_index,wait_for_index,3,[{file,"src/yz_index.erl"},{line,415}]}]} 

9) Версии

[email protected]:~/riak$ dev/dev1/bin/riak-admin status | grep riak_kv_version 
riak_kv_version : <<"2.0.2-99-g404619c">> 
[email protected]:~/riak$ 

[email protected]:~/riak$ lsb_release -a 
No LSB modules are available. 
Distributor ID: Ubuntu 
Description: Ubuntu 14.04.3 LTS 
Release: 14.04 
Codename: trusty 
[email protected]:~/riak$ 
+0

Карстен, я не рубин человек, так что я не знаю, если ваш код рубин является правильным, однако (при условии, что это правильно) Я бы попробовал следующие вещи: 1. Проверьте файлы error.log и solr.log. Если у вас есть какие-либо ошибки, это поможет диагностировать проблему. 2. Попробуйте выполнить запрос Solr через curl или ваш веб-браузер (например, http://127.0.0.1:8098/search/query/ix1?wt=json&q=name: Roskilde), чтобы увидеть, работает ли он там – Craig

+0

Какую версию Riak вы используете? –

ответ

0

по умолчанию Схему [0] ожидает, что вы добавить тип данных для каждого поля с его именем, как name_s для строки или population_i для целого числа. В противном случае поле совпадает по умолчанию, который явно пропускает индексирование:

<dynamicField name="*" type="ignored" /> 

[0] https://raw.githubusercontent.com/basho/yokozuna/develop/priv/default_schema.xml

Смежные вопросы