简介
Elasticsearch 是搜索引擎;简称ES
Elasticsearch 是一个免费及开放(free and open)的项目
Elasticsearch 是一个分布式的基于 REST 接口的为云而设计的搜索引擎
Elasticsearch 是由 Elastic 公司创建
使用场景
用于全文搜索、结构化搜索、分析以及将这三者混合使用
特点
分布式的实时文件存储,每个字段都被索引并可被搜索;
分布式的实时分析搜索引擎;
可弹性扩展到上百台服务器规模,处理PB级结构化或非结构化数据;
开箱即用(安装即可使用),它提供了许多合理的缺省值,并对初学者隐藏了复杂的搜索引擎理论。只需很少的学习既可在生产环境中使用。
近实时(NRT)
Elasticsearch是一个近乎实时
的搜索平台。这意味着从索引文档到可搜索文档的时间有一点延迟
(通常是一秒)。
ElasticSearch功能
Elasticsearch是一个基于 Apache Lucene (TM)的开源搜索引擎
完全用 Java 编写的搜索引擎库
提供强大的全文搜索功能
版本对比
- ES 7.0之前(ES 6.8.1)
- Index 数据库
- Type 表
- Document 行
- Field 列 数据库字段id,name…等
- ES 7.0之后,不再有Type列
- Index 数据库
- Document 行
- Field 列 数据库字段id,name…等
ES 7.0使用GET /goods/_search
ES 6.8使用GET /goods/info/_search
info为type类型,7版本后已不再使用
CRUD增删改查命令
GET 获取数据
PUT 保存数据(新增数据)
POST 修改数据(没有实际的修改操作,相当于删除数据+新增数据)
DELETE 删除数据
使用时机
向应用或网站添加搜索框
存储和分析日志、指标和安全事件数据
使用机器学习实时自动建模数据行为
使用 Elasticsearch 作为存储引擎自动化业务工作流程
使用 Elasticsearch 作为地理信息系统 (GIS) 管理、集成和分析空间信息
使用 Elasticsearch 作为生物信息学研究工具来存储和处理遗传数据