Elasticsearch之源码分析(shard分片规则)
Posted 大数据和人工智能躺过的坑
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Elasticsearch之源码分析(shard分片规则)相关的知识,希望对你有一定的参考价值。
前期博客是
(1)elasticsearch在建立索引时,根据id或(id,类型)进行hash,得到hash值之后再与该索引的分片数量取模,取模的值即为存入的分片编号。
源码:org.elasticsearch.cluster.routing.OperationRouting类中的generateShardId方法
(2)可以指定把数据存储到某一个分片中,通过routing参数
curl -XPOST \'192.168.80.10:9200/zhouls/emp?routing=rout_param\' -d \'{"name":"zs","age":20}\'
routing(路由参数)
(3)注意:显著提高查询性能,routing,routing,还是 routing
后续更新
以上是关于Elasticsearch之源码分析(shard分片规则)的主要内容,如果未能解决你的问题,请参考以下文章
数据库分库分表中间件 Sharding-JDBC 源码分析 —— SQL 解析之删除SQL
数据库中间件 Sharding-JDBC 源码分析 —— SQL 解析之查询SQL
数据库分库分表中间件 Sharding-JDBC 源码分析 —— SQL 路由之分库分表路由
Elasticsearch es primary shard 主分片 PrimaryOperationTransportHandler