elasticsearch - 如何使用 elasticsearch python 客户端创建连接关系

标签 elasticsearch

我正在寻找任何使用 python 接口(interface)实现父子关系的示例。

我可以定义一个映射,例如

es.indices.create(
  index= "docpage",
  body= {
    "mappings": {
        "properties": {
         "my_join_field": { 
           "type": "join",
           "relations": {
             "my_document": "my_page" 
           }
         }
        }
      }
    }
)

然后我正在使用索引文档
res = es.index(index="docpage",doc_type="_doc",id = 1, body=jsonDict) , 

其中 jsonDict 是文档文本的 dict 结构,jsonDict['my_join_field']= 'my_document' ,以及其他相关信息。

Reference example.

我尝试添加 pageDict其中页面是包含文档页面上的文本的字符串,并且
pageDict['content']=page
pageDict['my_join_field']={}
pageDict['my_join_field']['parent']="1"
pageDict['my_join_field']['name']="page"

res = es.index(index="docpage",doc_type="_doc",body=pageDict)

但我得到一个解析器错误:

RequestError(400, 'mapper_parsing_exception', 'failed to parse')



有任何想法吗?

最佳答案

这对我有用:
res=es.index(index="docpage",doc_type="_doc",body={"content":page,
“我的加入字段”:{
“名称”:“我的页面”,
“父”:“1”}
})

关于elasticsearch - 如何使用 elasticsearch python 客户端创建连接关系,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59056225/

相关文章:

elasticsearch - ElasticSearch中的Random InternalServerError

elasticsearch - 在Logstash中禁用索引轮换

elasticsearch - 打开一个关闭的索引后,健康的 Elasticsearch 集群变为红色

javascript - Elasticsearch 按自定义项目重量排序

elasticsearch - 查询集群中的单个ElasticSearch节点

amazon-web-services - 将 Elasticsearch kibana 查询字符串格式转换为 URI 搜索格式

php - 您可以在PHP的Elasticsearch上使用命名查询吗?

api - 出色的基本许可证安装

python - Cloud 9中的Django-Haystack elasticsearch配置

spring - 如何将Grails ElasticSearch插件更新为ElasticSearch的最新版本?