基础概念 Elasticsearch有几个核心概念.从一开始理解这些概念会对整个学习过程有莫大的帮助. 1.接近实时(NRT)        Elasticsearch是一个接近实时的搜索平台.这意味着,从索引一个文档直到这个文档能够被搜索到有一个轻微的延迟(通常是1秒). 2.集群(cluster)        一个集群就是由一个或多个节点组织在一起,它们共同持有你整个的数据,并一起提供索引和搜索功能.一个集群由一个唯一的名字标识,这个名字默认是“elasticsearch”.这个名字是重要…
基本概念 Node 与 Cluster Elastic 本质上是一个分布式数据库,允许多台服务器协同工作,每台服务器可以运行多个 Elastic 实例. 单个 Elastic 实例称为一个节点(node).一组节点构成一个集群(cluster). Index ( 对应数据库的表 ) Elastic 会索引所有字段,经过处理后写入一个反向索引(Inverted Index).查找数据的时候,直接查找该索引. 所以,Elastic 数据管理的顶层单位就叫做 Index(索引).它是表的同义词.每个…
一.序言 从学校出来到实习,发现学校学的东西太过基础,难于直接运用于工作中.而且工作中,现在都以web开发为主,学校开了web开发相关课程.自己学的不够深入,所以本人自学JavaWeb开发,介于学习巩固之需,把自己的学习过程和想法总结成笔记.形成文章,便于今后回顾.正所谓温故而知新,可以为师矣. 同时,也考虑到跟我一样的很多初出校园的朋友们,面临着同样的问题,所以整理发布到公众号和博客上,本意是跟大家一起学习交流,沟通互动,共同进步. 二.本系列大纲 我们先做个关于JavaWeb体系的了解,它到…
什么是消息队列(MQ) 消息是在不同应用间传递的数据.这里的消息可以非常简单,比如只包含字符串,也可以非常复杂,包含多个嵌套的对象.消息队列(Message Queue)简单来说就是一种应用程序间的通讯方式,消息发送后立即返回,然后由消息系统保证消息的可靠性传输,消息生产者只需要把消息发到 MQ 中就可以了,不需要关心消息的消费,同样,消息消费者只管从 MQ 中拉取消息而不管是谁生产的消息,通过这样的一个"互相不知道对象存在"模式,将消息的生产者和消息的消费者解耦了. 什么场景下考虑使…
  Elasticsearch研究有一段时间了,现特将Elasticsearch相关核心知识和原理以初学者的角度记录下来,如有不当,烦请指正! 0. 带着问题上路——ES是如何产生的? (1)思考:大规模数据如何检索? 如:当系统数据量上了10亿.100亿条的时候,我们在做系统架构的时候通常会从以下角度去考虑问题: 1)用什么数据库好?(mysql.sybase.oracle.达梦.神通.mongodb.hbase…) 2)如何解决单点故障:(lvs.F5.A10.Zookeep.MQ) 3)如…
转自:https://blog.csdn.net/zxf_668899/article/details/54582849 配置文件 基本概念 接近实时NRT 集群cluster 索引index 文档document 映射mapping 类型type 分片shards 副本replicas 数据恢复recovery 数据源River 网关gateway 自动发现discoveryzen 通信Transport 分片和复制shards and replicas elasticsearch yml 详…
Elasticsearch对复杂分布式机制的透明隐藏特性 Elasticsearch是一套分布式的系统,分布式是为了应对大数据量 隐藏了复杂的分布式机制 分片机制(随随便便就将一些document插入到es集群中去了,我们有没有care过数据怎么进行分片的,数据到哪个shard中去) cluster discovery(集群发现机制,在做那个集群status从yellow转green的实验里,直接启动了第二个es进程,那个进程作为一个node自动就发现了集群,并且加入了进去,还接受了部分数据,r…
Lucene的概念 document:以json的形式体现,搜索和搜索的主要载体 field:document的一个部分 term(词项):代表文本中的一个词 token(词条):term在field中的一次出现,包括词项的文本.开始和结束的偏移.词条类型 inverted index(倒排索引):将词项映射到文档.倒排索引是面向词项,而不是面向文档的. segmeng:每个索引由多个段组成,创建后不再修改,文档被删除后,删除信息单独保存在一个文档中,而段本身并没有修改. segmengs me…
一.Kubernetes概述 Kubernetes ,又称为 k8s(首字母为 k.首字母与尾字母之间有 8 个字符.尾字母为 s,所以简称 k8s)或者简称为 "kube" ,是一个可移植的.可扩展的开源平台,用于管理容器化的工作负载和服务,可促进声明式配置和自动化. Kubernetes 拥有一个庞大且快速增长的生态系统.Kubernetes 的服务.支持和工具广泛可用. k8s作用: 服务发现和负载均衡 Kubernetes 可以使用 DNS 名称或自己的 IP 地址公开容器,如…
上一篇 RabbitMQ 入门之基础概念 介绍了 RabbitMQ 的一些基础概念,本文再来介绍其中的一些细节和其它的进阶的概念. 一.消息生产者发送的消息不可达时如何处理 RabbitMQ 提供了消息在传递过程中无法发送到一个队列(比如根据自己的类型和路由键没有找到匹配的队列)时将消息回传给消息发送方的功能,使用 RabbitMQ 的客户端提供 channel.basicPublish 方法的两个参数 mandatory 和 immediate (RabbitMQ 3.0 以下版本),除此之外…