我在python中有一个项目,我需要从索引1、2、3或4中的一个获取文档,但我只有id,在不久的将来,我还将有4个idexe,所以总共8个,我无法在8个索引中的每个索引中查找文档。
所以我的问题是,有没有办法直接通过身份证拿到医生?如果没有,还有别的选择吗?非常感谢你
以下是我到目前为止所拥有的:
url = settings.ES_URL+"/{}/_doc/{}?pretty=false"
url = url.format(index, id)
r = requests.get(url,auth=HTTPBasicAuth('*****', '*******'))
我尝试了所有的索引,但那不是我想要的
2条答案
按热度按时间juzqafwq1#
使用elasticsearch的别名功能Map一个别名下的所有索引。稍后,不用查询所有8个索引,而是查询关联的alias index和,这样您就可以搜索所有8个索引并返回结果。
v2g6jxz62#
可以使用索引别名。本质上,它仍然在多个索引中搜索,但在搜索时不必提及单个索引名。
假设我有以下两个索引
下面是索引中的两个文档
我可以创建别名索引
my_index
以下面的方式现在您可以简单地使用这个索引通过任何
term
或者match
查询。请注意,您不能像这样直接获取文档
GET my_index/_doc/1234
首先使用别名的概念,这是一个单一的索引操作,我相信使用别名的全部目的是无缝地增强搜索功能,而不是用于直接的文档检索。