我在Windows 7上使用angularjs和oracle的elasticsearch。 它的工作更&更細(感謝stackoverflower幫助)。我有一個彈性搜索的問題:我的文檔中的元素數量在增加,我不知道爲什麼/如何。 由elasticsearch索引的我的oracle表包含12010個元素,現在我在彈性文檔中獲得了84070個元素(經常由curl _count檢查):所以它現在重複數據7次。前幾天我重新編制了索引表,但是我之前刪除了elasticsearch「data」文件夾。elasticsearch數據增加和重複在每次重新啓動
數據似乎增加每次我重新啓動Windows。
感謝您的幫助。
這是我的我是如何安裝和索引數據:
我這樣做只是第一次:
- 文件夾解壓彈性:d:\工作\ elasticsearch-1.3.1 \
- 安裝web界面:>插件-install mobz/elasticsearch頭
- 安裝JDBC:>插件--install JDBC --url http://xbib.org/repository/org/xbib/elasticsearch/plugin/elasticsearch-river-jdbc/1.3.0.0/elasticsearch-river-jdbc-1.3.0.0-plugin.zip
- 複製 「ojdbc6-11.2.0.3.jar」 到 「d:\工作\ elasticsearch-1.3.1 \插件\ JDBC」
- service.bat安裝
- service.bat開始
創建索引
curl -XPOST 'localhost:9200/donnees'
映射:
curl -XPUT 'localhost:9200/donnees/specimens/_mapping' -d '{
"specimens" : {
"_all" : {"enabled" : true},
"_index" : {"enabled" : true},
"_id" : {"index": "not_analyzed", "store" : false},
"properties" : {
"O_OCCURRENCEID" : {"type" : "string", "store" : "no","index": "not_analyzed" } ,
....
"I_INSTITUTIONCODE" : {"type" : "string", "store" : "yes","index": "analyzed" }
}
}}'
個
查詢Oracle和索引數據:
curl -XPUT 'localhost:9200/_river/donnees_s/_meta' -d '{
"type" : "jdbc",
"jdbc" : {
"index" : "donnees",
"type" : "specimens",
"url" : "jdbc:oracle:thin:@localhost:1523:recolnat",
"user" : "user",
"password" : "password",
"sql" : "select * from all_specimens_data"
}
}'
(這是正確的??如果我用「curl -XPUT'localhost:9200/donnees/samples/_meta'替換」curl -XPUT'localhost:9200/_river/donnees_s/_meta'「,我就用它來查詢),它不起作用。
測試:
curl -XGET 'http://localhost:9200/donnees/specimens/_count?q=*'
=> 12010
curl -XGET 'http://localhost:9200/donnees/specimens/_search?q=P00009359'
=> return data ok
您的選擇中是否應該有一個'_id'列用於正確識別已加載的行? – 2014-10-03 08:15:45
列「O_OCCURRENCEID」是我的數據庫表中唯一的ID。 您在映射中談論此行: 「_id」:{「index」:「not_analyzed」,「store」:false}? – AlainIb 2014-10-03 08:52:26
我的意思是像'選擇O_OCCURRENCEID作爲_id .... blahblah ...' – 2014-10-03 09:12:03