我在ElasticSearch和Rails时遇到问题,由于attr_protected,其中一些数据未正确索引。Elastic Search在哪里存储索引数据?检查实际的索引数据是否错误将很有用。
检查映射Tire.index('models').mapping对您没有帮助,将列出该字段。
Tire.index('models').mapping
探索您的ElasticSearch集群的最简单方法可能是使用elasticsearch -head。
您可以通过以下方式安装它:
cd elasticsearch/ ./bin/plugin -install mobz/elasticsearch-head
然后(假设ElasticSearch已在本地计算机上运行),打开浏览器窗口以执行以下操作:
http://localhost:9200/_plugin/head/
另外,您也可以curl从命令行使用,例如:
curl
检查映射以获取索引:
curl -XGET 'http://127.0.0.1:9200/my_index/_mapping?pretty=1'
获取一些样本文档:
curl -XGET 'http://127.0.0.1:9200/my_index/_search?pretty=1'
查看存储在特定字段中的实际术语(即如何分析该字段):
curl -XGET 'http://127.0.0.1:9200/my_index/_search?pretty=1' -d ' { "facets" : { "my_terms" : { "terms" : { "size" : 50, "field" : "foo" } } } }
此处提供更多信息:http : //www.elasticsearch.org/guide
Sense插件
到目前为止,curl为Elasticsearch 编写样式命令的最简单方法是Marvel中的Sense插件。
它带有源代码突出显示,漂亮的缩进和自动完成功能。
注意:Sense最初是一个独立的chrome插件,但现在已成为Marvel项目的一部分。