【问题标题】:Are there any performance impact of using source filtering in elasticsearch or spring data elasticsearch?在弹性搜索或弹簧数据弹性搜索中使用源过滤是否会对性能产生影响?
【发布时间】:2020-10-31 00:57:13
【问题描述】:

我们有 50k-100k 范围内的文档。我们正在使用 spring-data-elasticsearch 的 ElasticsearchOperations 接口,并使用 NativeSearchQueryBuilder()s withSourceFilter(new FetchSourceFilter(includeFields, excludeFields))method 仅返回必填字段。我们想知道这种源过滤是否会对性能产生影响?即使我们使用返回所有记录但具有源过滤的简单弹性搜索查询,性能会受到影响吗?还是返回所有字段更好?我们选择不返回所有字段,因为某些字段的大小可能更大,即某些字段可以是包含数千个项目的列表/数组。

【问题讨论】:

    标签: spring-boot elasticsearch spring-data elastic-stack spring-data-elasticsearch


    【解决方案1】:

    是的,排除您不需要响应的字段实际上是个好主意,因为它可以大大减少传输数据所需的带宽,尤其是当您需要返回大字段时。

    您也可以关注this discuss link以获取更多信息,请注意过滤会产生费用,因此您可能需要为不需要检索的字段设置store:false选项以进一步加快过滤速度它可以节省您的磁盘空间并减少索引时间。

    更多信息请参考store

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-02-07
      • 1970-01-01
      • 2019-05-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多