我能够执行以下操作以创建新的ES索引:
>>> es.indices.create(index = 'example_index')
{u'index': u'example_index', u'acknowledged': True, u'shards_acknowledged': True}
但是,如果我添加任何种类的映射,都会出现未知错误。例如:
request_body = {
'mappings': {
'_doc': {
'properties': {
'address': {'index': 'not_analyzed', 'type': 'string'},
'some_PK': {'index': 'not_analyzed', 'type': 'string'},
}}}
}
es.indices.create(index = 'example_index', body=request_body)
> TransportError: <unprintable TransportError object>
如何在此处使用预定义的映射创建适当的索引?为什么它会给出这样无益的错误消息?
答案 0 :(得分:0)
虽然我只是尝试连接到外部ES服务器,但我不认为我需要在本地安装它,而是在本地安装它并确保已安装Java来解决上述问题。
似乎Elasticsearch
模块可能需要在本地安装java
和ElasticSearch
才能进行某些调用,即使不使用本地ElasticSearch集群也是如此。