初识elasticsearch
一个开源的分布式搜索引擎,可以用来实现搜索、日志统计、分析、系统监控等功能;
elasticsearch 是结合kibana、Logstash、Beats,也就是elastic stach(ELK)。被广泛应用在日志数据分析、实时监控等领域。
elasticsearch 是 elastic stach的核心,负责存储、搜索、分析数据。
kibana:数据可视化
elasticsearch:存储、计算、搜索、分析数据
Logstash:数据抓取
是以elasticsearch为核心的技术栈,包括beats、Logstash、kibana、elasticsearch
是Apache的开源搜索引擎类库,提供了搜索引擎核心API
Lucene产生: 1997 年开始,利用业余时间开发出了 Lucene。Lucene 面世于1999年
Compass:2004 年,Shay Banon 基于Lucene 开发了 ElasticSearch 的前身 Compass
Elasticsearch:2010 年,Shay Banon 重写了Compass,取名为Elasticsearch
官网地址:https://www.elastic.co/cn
相对于Lucene,Elasticsearch具备的优势:
《1》支持分布式,可水平扩展
《2》提供Restfull接口,可被任何语言调用
每一条数据就是一个文档
对文档中的内容分词,得到的词语就是词条
基于文档id创建索引。查询词条必须先找到文档,而后判断是否包含词条
对文档内容分词,对词条创建索引,并记录词条所在文档的信息。查询时先根据词条查询到文档id,而后获取到文档
文档:一条数据就是一个文档,es中是json格式
字段:json文档中的字段
索引:同类型文档的集合
映射:索引中文档的约束,比如字段名称、类型
elasticsearch与数据库的关系:
数据库负责事务类型操作
elasticsearch负责海量数据的搜索、分析、计算