Elasticsearch 系列(一) 简介

版权声明:如果觉得好的话,不防点个赞,那点你们认为不对或是需要补充,可以留言啊!本人原创,未经允许不得转载!! https://blog.csdn.net/qq_28289405/article/details/82909437

目录

一、ELK

二、Elasticsearch

1、定义:

2、涉及的几个基本概念

3、Elasticsearch 的架构

4、Elasticsearch 和Solr 的区别 :都是当前比较火的全文搜索引擎


一、ELK

1、定义 :ELK 是Elastic 公司旗下三款产品,Elasticsearch 、Logstash 、Kibana 的组合

2、为什么使用ELK ?   可以同时实现日志收集、日志搜索和日志分析的功能

二、Elasticsearch

1、定义:

分布式的、可扩展的、高可用的
实时搜索的能力,实时分析的能力
基于RESTFul 这个标准

总结:一个采用RESTFul API 标准的高扩展性和高可用性的实时数据分析的全文搜索工具。

2、涉及的几个基本概念

①、Node(节点):单个装有Es 服务并且提供故障转移和扩展服务器。

②、cluster(集群):一个集群就是由一个或多个node组织在一起,共同工作,共同分享整个数据具有负载均衡功能的集群。

③、Document(文档):一个文档是一个可被索引的基础信息单元。

④、Index(索引):索引就是一个拥有几分相似特征的文档的集合。

⑤、Type(类型):一个索引中你可以定义一种或多种类型。

⑥、Field(列):Field是Es的最小单位,相当于数据的某一列。

⑦、shards(分片):Es将索引分成若干份,每个部分就是一个shard。

⑧、Replicas(复制):Replicas是索引一份或是几份拷贝

总结:

(1)、Document :可以表示为单个客户的信息;

             Index:可以表示为多个客户的信息,索引里的文档都是相似的;建立索引,英文全都要小写。

             Replicas:Es为了防止数据的丢失,还为了做这个负载均衡,所以用Replicas。

(2)、Es是非关系型数据库

关系型数据库(MySQL) 非关系型数据库(Elasticsearch )
数据库 database 索引库 index
表 table 类型 type
行 row 文档 document
列 column 字段 field

3、Elasticsearch 的架构

分解来看:

⑥、Gateway :当这个Es关闭再启动的时候,它就会从这个gateway 里面读取索引数据。它支持的格式有:Local FileSystem (本地的) 、 分布式的(sharad)FileSystem 、 Hadoop HDFS 和亚马逊的S3。

⑤、是Lucene 的框架。Elasticsearch  是基于Lucene 框架而写的。

④、是Es对数据的加工处理方式。有创建index 的模板 、搜索的模板 、 mapping(定义索引下面type字段的处理规则。例如如何建立,还有索引数据类型等,相当于关系型数据库里的schema 【MySQL里的schema】)、River (是一个运行在Es集群内部的一个插件。主要就是用来从外部获取异构数据,然后在Es里面创建索引,常见的插件有RabbitMQ River还有Twitter River)。

③、A:这个Zen 是用来实现节点自动发现,还有Master节点选取用的。假如Master出现故障,不能工作了,那么其他的这个节点会自动选举,然后产生一个新的Master。

补充:Es是基于P2P的系统,它首先通过广播的机制寻找存在的节点,然后再通过这个多播协议来进行节点间的通信,同时也支持这个点对点的交互。

B:是Es的脚本执行功能。有了这个功能就能很方便对查询出来的数据进行加工处理,有mvel、js、python 脚本的类型。

C:Es支持安装很多第三方的插件。因为Es的社区支持力度比较大,会有很多插件提供给用户使用,是Es使用变得更加简单方便。以后可能会经常使用到中文分词、状态监控等插件。插件的安装简单,只需一条命令即可安装。

②、是Es的交互方式,有三种协议,Thrift , Memcached , HTTP 。默认的Elasticsearch  是用HTTP协议传输的。

①、Elasticsearch 的API支持模式了,Elasticsearch  采用restful的标准。java语言是对Elasticsearch 支持度最好的语言

4、Elasticsearch 和Solr 的区别 :都是当前比较火的全文搜索引擎

①、Elasticsearch 更侧重实时的数据分析,Solr 在实时搜索方面效率比 Elasticsearch 低 ;

②、在支持文本格式方面,Solr 比 Elasticsearch 强 。它支持的文本格式比较多,例如 HTML、PDF、Word 、Excel 、CVS 等,而 Elasticsearch 只支持json的格式。

猜你喜欢

转载自blog.csdn.net/qq_28289405/article/details/82909437