专栏首页我是攻城师ElasticSearch里面的偏好查询

ElasticSearch里面的偏好查询

在es查询的时候我们可以控制Preference,来完成特定shard或节点上的数据查询,默认情况下查询是随机的。

假如现在我们有一份索引5个shard和3个副本,当一个查询请求过来的时候,查询操作如何执行,在没有使用路由的情况下5个shard的数据肯定都要查询,然后查询5个shard时候到底查的是主shard还是replia都是随机的。

通过偏好查询,我们可以有更多的选择定制,比如我们可以设置只查询主shard,或者只查replia,或者仅仅查某几个节点的数据。

下面来介绍下Preference相关的参数:

大多数时候是不需要刻意使用Preference功能的,除非在一些特殊情况下,如shard不可读,shard失败,shard未分配情况,或者某些节点挂了,我们可以指定读取正常shard的数据,虽然不完整,但也比整个服务不可用体验要好。

本文分享自微信公众号 - 我是攻城师(woshigcs),作者:woshigcs

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2017-06-22

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • SolrCloud之Sharding路由介绍

    我是攻城师
  • 关于Elasticsearch里面聚合group的坑

    我是攻城师
  • elasticsearch的查询流程分析

    我是攻城师
  • 针对Sharding DB的单点故障,合理构建HA架构

    作者简介 ? 何剑敏 Oracle ACS华南区售后团队,首席技术工程师。多年从事第一线的数据库运维工作,有丰富项目经验、维护经验和调优经验,专注于数据库的整...

    数据和云
  • 控制MongoDB中的集群分片

    分片标记是MongoDB 2.2.0版中的一项新功能。它应该强制写入到本地数据中心,但也可以用来将集合固定到一个分片或一组分片。

    Hero
  • 控制MongoDB中的集合分布

    分片标记(Shard tagging)是MongoDB 2.2.0版中的一项新功能。通过对集合进行标记使其被强制写入到本地数据中心,也可以用来将某个集合固定到一...

    Sepmer Fi
  • 突破Java面试(14)-分布式搜索引擎的架构

    但现在不问了,因为现在项目基本都是采用基于 lucene 的分布式搜索引擎—— ElasticSearch.

    公众号-JavaEdge
  • 安装单机版Consul

    •下载最新稳定版:https://www.consul.io/downloads.html[1]•下载指定版本:https://releases.hashico...

    用户1516716
  • ES存在unassinged shard的调试方式

    YG
  • 基于Jenkins + Docker 搭建 Android 持续集成平台

    随着公司扩大和测试团队的引入,原有的本地打包已经无法满足需求,所以考虑搭建Android持续集成打包平台。因为我司前后端发版是通过Docker+Jenkins,...

    DevOps时代

扫码关注云+社区

领取腾讯云代金券