replica

es的replica&shard的机制

五迷三道 提交于 2019-11-30 04:21:00
1、shard&replica机制再次梳理 (1)index包含多个shard (2)每个shard都是一个最小工作单元,承载部分数据,lucene实例,完整的建立索引和处理请求的能力 (3)增减节点时,shard会自动在nodes中负载均衡 (4)primary shard和replica shard,每个document肯定只存在于某一个primary shard以及其对应的replica shard中,不可能存在于多个primary shard (5)replica shard是primary shard的副本,负责容错,以及承担读请求负载 (6)primary shard的数量在创建索引的时候就固定了,replica shard的数量可以随时修改 (7)primary shard的默认数量是5,replica默认是1,默认有10个shard,5个primary shard,5个replica shard (8)primary shard不能和自己的replica shard放在同一个节点上(否则节点宕机,primary shard和副本都丢失,起不到容错的作用),但是可以和其他primary shard的replica shard放在同一个节点上 ----------------------------------------------------------------

Elasticsearch 顶尖高手(10)—图解横向扩容过程,如何超出扩容极限,以及如何提升容错性

佐手、 提交于 2019-11-29 14:42:57
1.图解横向扩容过程,如何超出扩容极限,以及如何提升容错性 primary&replica自动负载均衡,6个shard,3个primary,3个replica 每个node有更多的shard,IO/CPU/Memory资源给每个shard分配更多,每个shard性能更好 扩容的极限,6个shard(3 primary,3 replica),最多扩容到6台机器,每个shard可以占用单台服务器的所有资源,性能最好 超出扩容极限,动态修改replica数量,9个shard(3个primary,6个replica),扩容到9台机器,比3台机器时,拥有3倍的吞吐量。 3台机器下,9个shard(3个primary,6个replica),资源更少,但是容错性更好,最多容纳2台机器宕机,6个shard只能容纳0台机器宕机 来源: https://www.cnblogs.com/Mr-WangYue/p/11519820.html

9-12ElasticSearch

心不动则不痛 提交于 2019-11-29 13:14:18
ES文档操作 ES是面向文档(document oriented)的,这意味着它可以存储整个对象或文档(document)。然而它不仅仅是存储,还会索引(index)每个文档的内容使之可以被搜索。在ES中,你可以对文档(而非成行成列的数据)进行索引、搜索、排序、过滤。 一个文档必须的三个元节点 _index:索引库,类似于关系型数据库里的“数据库”—它是我们存储和索引关联数据的地方。 _type:在应用中,我们使用对象表示一些“事物”,例如一个用户、一篇博客、一个评论,或者一封邮件。可以是大写或小写,不能包含下划线或逗号。我们将使用 employee 做为类型名。 _id:与 _index 和 _type 组合时,就可以在ELasticsearch中唯一标识一个文档。当创建一个文档,你可以自定义 _id ,也可以让Elasticsearch帮你自动生成。 文档的简单查询 批量获取 方式1:GET _mget 方式2:同一个索引库的同一个类型下 通过文档ID获取 空搜索 没有指定任何的查询条件,只返回集群索引中的所有文档: GET _search 分页搜索 查询字符串搜索 DSL查询与过滤 DSL查询 由ES提供丰富且灵活的查询语言叫做DSL查询(Query DSL),它允许你构建更加复杂、强大的查询。 DSL查询语句则像是“有多像”。 DSL过滤

kafka详细原理总结

别说谁变了你拦得住时间么 提交于 2019-11-27 12:35:24
Kafka是最初由Linkedin公司开发,是一个分布式、支持分区的(partition)、多副本的(replica),基于zookeeper协调的分布式消息系统,它的最大的特性就是可以实时的处理大量数据以满足各种需求场景:比如基于hadoop的批处理系统、低延迟的实时系统、storm/Spark流式处理引擎,web/nginx日志、访问日志,消息服务等等,用scala语言编写,Linkedin于2010年贡献给了Apache基金会并成为顶级开源项目。 1.前言 消息队列的性能好坏,其文件存储机制设计是衡量一个消息队列服务技术水平和最关键指标之一。下面将从Kafka文件存储机制和物理结构角度,分析Kafka是如何实现高效文件存储,及实际应用效果。 1.1 Kafka的特性: - 高吞吐量、低延迟:kafka每秒可以处理几十万条消息,它的延迟最低只有几毫秒,每个topic可以分多个partition, consumer group 对partition进行consume操作。 - 可扩展性:kafka集群支持热扩展 - 持久性、可靠性:消息被持久化到本地磁盘,并且支持数据备份防止数据丢失 - 容错性:允许集群中节点失败(若副本数量为n,则允许n-1个节点失败) - 高并发:支持数千个客户端同时读写 1.2 Kafka的使用场景: - 日志收集

什么是Kafka?

﹥>﹥吖頭↗ 提交于 2019-11-27 10:15:33
通过Kafka的快速入门 https://www.cnblogs.com/tree1123/p/11150927.html 能了解到Kafka的基本部署,使用,但他和其他的消息中间件有什么不同呢? Kafka的基本原理,术语,版本等等都是怎么样的?到底什么是Kafka呢? 一、Kafka简介 http://kafka.apache.org/intro 2011年,LinkIn开源, November 1, 2017 1.0版本发布 July 30, 2018 2.0版本发布 参考官网的图: Kafka®用于构建实时数据管道和流式应用程序。它具有水平可扩展性、容错性、速度极快,并在数千家公司投入生产。 kafka官网最新的定义:Apache Kafka® is a distributed streaming platform 也就是分布式流式平台。 介绍: 三个特点: Publish and subscribe to streams of records, similar to a message queue or enterprise messaging system. Store streams of records in a fault-tolerant durable way. Process streams of records as they occur. 消息 持久化

图解Elasticsearch的核心概念

假如想象 提交于 2019-11-25 21:42:03
本文讲解大纲,分8个核心概念讲解说明: NRT Cluster Node Document&Field Index Type Shard Replica Near Realtime(NRT)近实时 Elasticsearch的核心优势就是(Near Real Time NRT)近乎实时,我们称之为近实时。 NRT有两个意思,下面举例说明下: 从写入索引数据到数据可以被搜索到有一个小延迟(大概1秒); 举个例子:电商平台新上架一个新商品,1秒后用户就可搜索到这个商品信息,这就是近实时。 基于Elasticsearch执行搜索和分析可以达到秒级查询 也举个例子说明,比如我现在想查询我在淘宝,最近一年都买过几件商品,总共花了多少钱,最贵的商品多少钱,哪个月买到东西最多,什么类型的商品买的最多这样的信息,如果淘宝说,你要等待10分钟才能出结果,你是不是很崩溃,这个延迟的时间就不是近实时,如果淘宝可以秒级别返回给你,就是近实时了。 下面画一个图,解释下三个基本概念的 Cluster:集群 包含多个节点,每个节点属于哪个集群是通过一个配置(集群名称,默认是elasticsearch)来决定的,对于中小型应用来说,刚开始一个集群就一个节点很正常。集群的目的为了提供高可用和海量数据的存储以及更快的跨节点查询能力。 Node:节点 集群中的一个节点,节点也有一个名称(默认是随机分配的)