我正在使用Carrot2和ElasticSearch。当我安装carrot2插件时,我的弹性搜索服务器运行了大量数据。
想要得到一些基本问题的答案:
群集是否只适用于新索引的文档甚至是旧文档?
如何指定要查看哪些字段进行群集?
curl命令正在运行并提供一些结果。如何获取curl命令,该命令将JSON作为输入到localhost形式的REST API url:9200 / article-index / article / _search_with_clusters?.....
感谢任何帮助。
答案 0 :(得分:1)
是的,如果您想直接在ES安装中使用该插件,则需要进行自己的REST调用。我相信你使用的是Python。看看requests。它是python的一个令人愉快的REST工具。
要发出POST请求,您可以执行以下操作:
import json
url = 'localhost:9200/article-index/article/_search_with_clusters'
payload = {'some': 'data'}
r = requests.post(url, data=json.dumps(payload))
print r.text
在requests documentation了解更多信息。
答案 1 :(得分:0)
群集是否仅适用于新索引的文档甚至是旧文档 文件?
它甚至可以用于旧文档
如何指定要查看哪些字段进行群集?
以下是使用shakepspeare dataset的示例。这个问题是莎士比亚戏剧中哪些是关于战争的?
$ curl -XPOST http://localhost:9200/shakespeare/_search_with_clusters?pretty -d '
{
"search_request": {
"query": {"match" : { "_all": "war" }},
"size": 100
},
"max_hits": 0,
"query_hint": "war",
"field_mapping": {
"title": ["_source.play_name"],
"content": ["_source.text_entry"]
},
"algorithm": "lingo"
}'
运行这个你会得到像理查德,亨利这样的戏剧......标题是胡萝卜2用来开发集群名称的标题,文本条目是用来制作集群的。
curl命令正在运行并提供一些结果。我怎么能得到 curl命令,它将JSON作为表单的REST API URL的输入 本地主机:9200 /物品索引/条/ _search_with_clusters .....
通常使用elasticsearch client libraries作为您选择的语言。