在Elasticsearch中,最好查询1,000,000个文档中的50个字段或50,000,000个文档中的1个字段。我将用一个例子来解释我的问题:
对于情况1,我们的文档如下所示:
doc1: {
"f1": "abc",
"f2": "pqr",
"f3": "lmn",
...
"f50": "xyz"
}
在此,应从“f1”到“f50”执行应查询。
对于情况2,我们的文档如下所示:
doc1.1: {
"f": "abc"
}
doc1.2: {
"f": "pqr"
}
doc1.3: {
"f": "lmn"
}
...
...
doc1.50: {
"f": "xyz"
}
假设我担心包含查询值的文档,而与字段无关。
最佳答案
我将采用5000万份文档的方法。 ElasticSearch可以通过适当的硬件(自我体验)轻松处理该大小,并且查询和数据操作将更加容易。
关于multithreading - 用于优化性能的Elasticsearch文档结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47977336/