【发布时间】:2019-09-26 20:03:01
【问题描述】:
使用 Elasticsearch 1.4.3
我正在构建一种“报告”系统。客户可以选择他们希望在结果中返回哪些字段。
在 90% 的情况下,客户端永远不会选择所有字段,所以我想我可以在映射中禁用 _source 字段以节省空间。但后来我知道了
GET myIndex/myType/_search/
{
"fields": ["field1", "field2"]
...
}
不返回字段。
所以我假设我必须对每个字段使用 "store": true 。从我读到的内容来看,这对于搜索来说会更快,但我猜在空间方面它会与 _source 相同,或者我们仍然可以节省空间?
【问题讨论】:
-
我做了一些测试。插入 4 种类型 x 每种 100,000 = 每个索引 400,000。 _source: true = 45MB _source: true, _all: false = 34MB _source: false = 30MB _source: false, _all: false = 18MB _source: false, store: true (所有字段) = 39.5MB _source: false, store: true (所有字段),_all:false = 28.5MB
标签: elasticsearch