gpt4 book ai didi

elasticsearch - 重命名Elasticsearch响应中的字段

转载 作者:行者123 更新时间:2023-12-02 23:06:07 25 4
gpt4 key购买 nike

我正在使用PyES库查询elastcsearch。假设我的查询如下:

query = MatchAllQuery()
query = query.search(
fields=[
"content.title",
"content.description",
"content.timestamp",
"source.name",
"source.url"
],
count=10
)

result = es_conn.search(
query=query,
indices=['my'],
sort="content.timestamp:desc"
)

每个结果项都是一个以字段名称为键的字典,因此 item = {“ content.title”:“bla bla bla”,“ content.description”:“bla bla bla”,...}

我的脚本只是一个 setter/getter ,需要保存第3方脚本的结果而不进行处理,但是该脚本需要特殊的键名称: item = {“ name”:“bla bla”,“ text”:“bla bla bla”,。 ..}

是否可以在PyES请求中指定用于重命名返回对象中字段名称(至“名称”,“标题”,“日期”等)的规则?

当然,我可以从 elsticsearch获得响应后执行此操作,因为它需要遍历结果对象(这是我应该避免的),并且如果响应中有成千上万项,它看起来并不是那么理想。

最佳答案

您需要使用partial fields,但是不确定是否可以将它们与pyes一起使用。我快速浏览了文档,但找不到它。

您的JSON查询如下所示:

{
"query" : {
"match_all" : {}
},
"partial_fields" : {
"name" : {
"include" : "content.title",
},
"text" : {
"include" : "content.description",
}
}
}

关于elasticsearch - 重命名Elasticsearch响应中的字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12060705/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com