首页 > 解决方案 > Elasticsearch 改进滚动

问题描述

我在弹性索引中有 300 万个文档
我需要获取所有文档,所以我使用“滚动”
,因为我使用滚动,我需要等到每个滚动返回然后获取下一个滚动
,所以我得到 10,000 个结果,然后是另外 10,000 个结果和依此类推....
问题是花费了太多时间,因为我去数据库 300 次来获取所有文件。
还有其他方法可以更快地获取文件吗?

我需要获取“myId”和所有其他字段名称(只有名称,而不是值)之间的所有唯一组合,如下例所示:
doc1:

    {
myId: 123,
field1: "x",
field2: "y"
}

文档2:

    {
myId: 123,
field1: "x",
field3: "y"
}

文档3:

{
myId: 556,
field1: "x",
field2: "y"
}

预期结果:

[
{
myId:123,
fieldName: field1
},
{
myId:123,
fieldName: field2
},
{
myId:123,
fieldName: field3
},
{
myId:556,
fieldName: field1
},
{
myId:556,
fieldName: field2
}
]

谢谢,
拉里

标签: elasticsearch

解决方案


推荐阅读