第一章:引擎介绍
引擎介绍——ElasticSearch
引擎可视化页面
引擎检索结果页面(一)—— 数据量:5,7949;took:6ms
引擎检索结果页面(二)—— 数据量:6027,9429;took:906ms
ElasticSearch是一个基于Lucene构建的开源、分布式、高可用性、多用户、RESTful全文搜索引擎。设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便,支持通过HTTP使用JSON进行数据索引,是当前流行的企业级搜索引擎。
硬件要求
1.内存
普遍使用的是32GB或者16GB
最理想的是64GB
小于8GB的达不到预期的目标,这样会要求提供很多机器
多于64G的会产生一些问题
2.CPU
大多数ElasticSearch集群都对CPU压力不大
处理器要处理的事情比其他资源少得多
可选择多核的处理器
一般集群会使用2至8核处理器
3.硬盘
最好的效果是使用SSD(Solid State Drives)——固态硬盘
避免使用网络附属存储(NAS)(连接在网络上,具备资料存储功能的装置)
实时数据
数据流进入的系统后,问题就是,数据怎么能够快速的可视化。用elasticsearch,实时展现当前的数据。
分布式
ElasticSearch允许你开始的时候容量比较小,但是随着你商业的增长,它是建立在横向扩展的开箱即用。当你需要更多的容量,只需添加更多的节点,并让集群重组,只需要增加额外的硬件,保护了你以前的硬件投入。
高可用性
Elasticsearch集群是弹性的–它们将自动检测和删除失败的节点,并重新组织自己,以确保您的数据安全和访问。
强大的分词功能
analyzer(分词器)有两种:index_analyzer(索引分词)和search_analyzer(检索分词)
常见的analyzer(分词器)插件有:
"analyzer": "ik" 中文分词
"analyzer": "simple_english_analyzer" 英文分词
"analyzer": "standard" 中文分词
"analyzer": "keyword_custom" 关键词定制,不分词,一般用在聚类字段
"index_analyzer": "pct_spliter" 百分号(%)分割
"index_analyzer": "semicolon_spliter" 分号(;)和顿号(、)分割
"index_analyzer": "custom_snowball_analyzer" 中英日俄文分词