elasticsearch3

  • document路由算法:shard=hash(routing)%number_of_primary_shards 默认情况下routing默认使用的是_id,也可以在发送请求的时候手动指定(routing value),对应用级别的负载均衡是很有帮助的,对id值进行hash。
  • document的增删改查内部实现原理:在主分区和复制分区都已经搞定之后然后向客户端发送客户端。
  • 我们在发送任何一个增删改操作的时候,比如说put /index/type/id,都可以带上一个consistency参数,指明我们想要的写一致性是什么?
    put /index/type/id?consistency=quorum   不满足的时候就会报超时退出

    one:要求我们这个写操作,只要有一个primary shard是active活跃可用的,就可以执行
    all:要求我们这个写操作,必须所有的primary shard和replica shard都是活跃的,才可以执行这个写操作
    quorum:默认的值,要求所有的shard中,必须是大部分的shard都是活跃的,可用的,才可以执行这个写操作

  • 当发送请求的时候,该请求会选择任意的节点进行发送,然后对该节点进行路由操作找到指定的分区保存数据

  • 当发送读请求的时候,也可以将请求转发到副本上,采用round-robin随机轮训的算法进行分配数据,尽量将读请求平均分配到每个分节点上保证负载均衡。建立索引的过程中可能doc还没有到replica中,就会返回结果找不到

  • GET /index/type/_search?timeout=10ms   获取多个索引下多个type所有的数据   对里面的参数进行说明.其中timeout参数是该查询所用的时间必须小于指定的时长,如果时间大于指定这个参数的话就会返回查询超时,这样做是有一个好的用户体验。

  • shards:shards fail的条件(primary和replica全部挂掉),不影响其他shard。默认情况下来说,一个搜索请求,会打到一个index的所有primary shard上去,当然了,每个primary shard都可能会有一个或多个replic shard,所以请求也可以到primary shard的其中一个replica shard上去。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值