Solr分片机制以及Solrcloud搭建及分片操作
Solr分片描述
分片是集合的逻辑分区,包含集合中文档的子集,这样集合中的每个文档都正好包含在一个分片中。集合中包含每个文档的分片取决于集合的整体“分片”策略。
当您的集合对于一个节点来说太大时,您可以通过创建多个分片将其分解并分段存储。
例如,您可能有一个集合,其中每个文档的“country”字段确定它是哪个shard的一部分,因此来自同一国家的文档位于同一个位置。不同的集合可能只在每个文档的uniquekey上使用“hash”来确定其分片。
在solrcloud之前,solr支持分布式搜索,允许跨多个分片执行一个查询,因此查询是针对整个solr索引执行的,搜索结果中不会遗漏任何文档。因此,在分片上分割索引并不是一个单独的solrcloud概念。
Solrcloud解决了这些限制。支持自动分发索引进程和查询,ZooKeeper提供故障转移和负载平衡。此外,每个分片都可以有多个副本,以增强健壮性。
Solrcloud 没有主从之分,相反,每个分片至少由一个物理副本组成,其中一个是领导者。领导者会自动当选,最初是基于先到先得的原则,然后根据zookeeper的选举原理。
每个分片中都有一个或多个副本,副本的类型有3种:
1. NRT:
This is the default. A NRT replica (NRT = NearRealTime) maintains a transaction log and writes new documents to it’s indexes locally. Any replica of this type is eligible to become a leader. Traditionally, this was the only type supported by Solr.
NRT:这是默认设置。NRT副本(NRT=NearRealtime)维护事务日志,并在本地将新文档写入其索引。此类型的任何副本都有资格成为领导者。传统上,这是solr支持的唯一类型。
2. TLOG:
This type of replica maintains a transaction log but does not index document changes locally. This type helps speed up indexing since no commits need to occur in the replicas. When this type of replica needs to update its index, it does so by replicating the index from the leader. This type of replica is also eligible to become a shard leader; it would do so by first processing its transaction log. If it does become a leader, it will behave the same as if it was a NRT type of replica.
TLOG:这种类型的副本维护事务日志,但不索引本地文档更改。这种类型有助于加速索引,因为副本中不需要进行提交。当这种类型的副本需要更新其索引时,它通过从领队复制索引来更新索引。这种类型的副本也有资格成为一个分片领队;它可以通过首先处理其事务日志来实现这一点。如果它真的成为一个领导者,它的行为将与它是一个NRT类型的复制品一样。
3. PULL:
This type of replica does not maintain a transaction log nor index document changes locally. It only replicates the index from the shard leader. It is not eligible to become a shard leader and doesn’t participate in shard leader election at all.
PULL:这种类型的副本既不维护事务日志,也不在本地更改索引文档。它只复制分片领导者的索引。它没有资格成为一个分片领袖,根本不参加分片领袖选举。
Solrcloud搭建及分片操作
1、在solr安装解压后的bin目录下输入:solr -e cloud

2、输入想要创建的solr节点数,此实例输入的是3个节点

3、输入每个节点的端口号,此实例3个节点的端口号分别为:20001,20002,20003

自此solrcloud搭建成功。
4、访问solr客户端管理页面:http://localhost:20001/solr/#/

5、创建集合以及设置分片和分片的副本:


Solr分片机制以及Solrcloud搭建及分片操作的更多相关文章
- Centos7:solr伪集群(SolrCloud)搭建
JDK,tocmat环境搭建 zookeeper集群安装 解压缩zookeeper的压缩包 创建data目录 复制zoo_sample.cfg为zoo.cfg 修改confg/zoo.cfg中 dat ...
- 搭建MongoDB分片集群
在部门服务器搭建MongoDB分片集群,记录整个操作过程,朋友们也可以参考. 计划如下: 用5台机器搭建,IP分别为:192.168.58.5.192.168.58.6.192.168.58.8.19 ...
- Solr学习笔记(4) —— SolrCloud的概述和搭建
一.概述 1.1 什么是SolrCloud Lucene是一个Java语言编写的利用倒排原理实现的文本检索类库: Solr是以Lucene为基础实现的文本检索应用服务.Solr部署方式有单机方式.多机 ...
- MongoDB 分片的原理、搭建、应用
一.概念: 分片(sharding)是指将数据库拆分,将其分散在不同的机器上的过程.将数据分散到不同的机器上,不需要功能强大的服务器就可以存储更多的数据和处理更大的负载.基本思想就是将集合切成小块,这 ...
- 搭建mongodb分片
搭建mongodb分片 http://gong1208.iteye.com/blog/1622078 Sharding分片概念 这是一种将海量的数据水平扩展的数据库集群系统,数据分表存储在shardi ...
- mongodb 3.4 集群搭建:分片+副本集
mongodb是最常用的nodql数据库,在数据库排名中已经上升到了前六.这篇文章介绍如何搭建高可用的mongodb(分片+副本)集群. 在搭建集群之前,需要首先了解几个概念:路由,分片.副本集.配置 ...
- mongodb 3.6 集群搭建:分片+副本集
mongodb是最常用的nosql数据库,在数据库排名中已经上升到了前六.这篇文章介绍如何搭建高可用的mongodb(分片+副本)集群. 在搭建集群之前,需要首先了解几个概念:路由,分片.副本集.配置 ...
- 第43章:MongoDB-集群--Sharding(分片)--多机的搭建
①环境准备 服务器规划 服务器[192.168.0.75] 服务器[192.168.0.84] 服务器[192.168.0.86] mongos mongos mongos config server ...
- ElasticSearch高可用集群环境搭建和分片原理
1.ES是如何实现分布式高并发全文检索 2.简单介绍ES分片Shards分片技术 3.为什么ES主分片对应的备分片不在同一台节点存放 4.索引的主分片定义好后为什么不能做修改 5.ES如何实现高可用容 ...
随机推荐
- Mybatis源码解析,一步一步从浅入深(三):实例化xml配置解析器(XMLConfigBuilder)
在上一篇文章:Mybatis源码解析,一步一步从浅入深(二):按步骤解析源码 ,中我们看到 代码:XMLConfigBuilder parser = new XMLConfigBuilder(read ...
- C语言入门-数据类型
一.C语言的类型 整数:char.short.int.long.longlong 浮点型:float.double.long double 逻辑:bool 指针 自定义类型 类型有何不同 类型名称:i ...
- CreateFolder
import java.io.IOException; import java.net.URI; import java.net.URISyntaxException; import org.apac ...
- python-字符编码、字符串格式化、进制转化、数据类型、列表、元组、字典总结
目录: 一.字符编码 二.字符串格式化 三.进制转换 四.数据类型及其操作 五.字符串转换 六.列表 七.元组 八.字典 一.字符编码: 计算机由美国人发明,最早的字符编码为ASCII,只规定了英文字 ...
- 免费下载 80多种的微软推出入门级 .NET视频
.NET Core 3.0发布视频系列中宣布了80多个新的免费视频,这些视频同时放在Microsoft的Channel 9 和youtube上面. 在线观看由于跨洋网络效果不太好,下载到机器上慢慢上是 ...
- centos7 Apache开启URL重写组件并配置.htaccess实现伪静态
第一.修改httpd.conf文件 A - 在etc/httpd/conf/目录下的httpd.conf 文件,找到: LoadModule rewrite_module modules/mod_re ...
- Java中类加载和反射技术实例
我们知道一个对象在运行时有两种类型,一个是编译类型,一个是运行时类型.在程序运行时,往往是需要发现类和对象的真实的信息的.那么如何获的这种信息呢? 其一,如果我们在编译和运行时都知道类型的具体信息,这 ...
- .Net Core 商城微服务项目系列(十三):搭建Log4net+ELK+Kafka日志框架
之前是使用NLog直接将日志发送到了ELK,本篇将会使用Docker搭建ELK和kafka,同时替换NLog为Log4net. 一.搭建kafka 1.拉取镜像 //下载zookeeper docke ...
- 揭秘C# SQLite的从安装到使用
SQLite,是一款轻型的数据库,是遵守ACID的关联式数据库管理系统,它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了 ...
- Maven配置JRE版本
Maven配置JRE版本 apache-maven-3.5.0\conf\settings.xml <profiles> <profile> <id>develop ...