Elasticsearch基础笔记

一个采用Restful API 标准的高扩展性和高可用性的实时数据分析的全文搜索工具
涉及到的一些概念:
node(节点),
Cluster:(集群,一个或多个node组织在一起),
Document:(文档)一个文档是一个可被索引的基础信息单元,
index:(索引) 一个拥有几分相似特征的文档的集合
Type:(类型) 一个索引中,你可以定义一种或多种类型
Field:(列) Field是Elasticsearch的最小单元,相当于数据的某一列,一个文档中可能包含多个field
Shards:(分片) Elasticsearch将索引分成若干份,每个部门是一个shard。 why?因为一个索引的大小可能会超出单个节点这个硬盘限制的大小(也就是说这个节点硬盘没那么大容量)
比如:一个具有10亿个文档的索引,它的大小可能就占据了将近1TB的磁盘空间,而你的节点可能就没有那么大的磁盘,其次,如果1TB大小的索引放在一个节点上,那么单个节点处理搜索的请求肯定会响应很慢。这个shards 在索引创建的时候就可以定义,默认值是5份,但是索引创建完之后,这个值就没法更改了。
Replicas:(复制) 是索引一份或多份的拷贝

非关系型数据库:存储的是非结构化的数据,图片,文本等
Elasticsearch 架构:
在这里插入图片描述
从最底层开始说吧:
当ES关闭再启动的时候,它就会从Gateway里面读取索引数据,支持,本地的,分布式的和HDFS等
再上一层就是ES就是基于Lucence这个框架写的
再网上就是ES对数据的加工方式,我们可以看到这个创建index的模块,搜索模块,Mapping 是定义index 下面 type字段的处理规则,比如说索引如何建立,还有索引数据类型等等,相当于mysql 里面的schema,River是运行在ES内部的插件,主要是从外部获取异构数据,然后再ES里面创建索引,常见的插件有:RabbitMQ River 还有Twitter River
Discovery 是ES 自动发现节点的机制,ES是基于P2P的机制,通过广播寻找节点,然后再通过多播协议来进行节点间的通信,同时也支持点对点的交互
Scripting 可以很方便对查询出来的数据进行加工处理,支持的脚本类型js,python
3rd 是ES支持很多种插件,社区活跃,比如中文分词,状态监控,一条命令就可以安装
Transport 是ES的交互方式,默认是HTTP协议
最顶层就是ES API的交互方式了。现在最主流的交互方式
JAVA语言是ES交互最好的。使用JAVA可以开发出工具更好的管理ES
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值