ElasticSearch
基于的lucene开发的搜索服务技术;天生支持分布式;
Es的结构
- gatway:存储层,所有的数据可以存储在本地(多个es节点形成分布式存储),hdfs输出位置,共享文件等
- 分布式lucene框架:把lucene缺少的分布式支持,做成一个基于lucene的框架
- ES自定义功能:ES自己的功能实现,例如关闭,打开索引,设置索引的读写权限等
- 功能插件:实现集群的管理,形成各种自定义插件,discovery自动发现功能
- 传输协议:支持http协议,支持thrift(AVRO)
- 用户接口: java api DSL操作命令基于http协议,发起的restFul传参操作ES
ElasticSearch存储应用概念
索引index:lucene中提到的索引文件,这个整体看来类似数据库中的某个库
类型Type: 在一个索引中,可以有不同结构的document存在,一批一批的相似结构,把同一批结构相同的document定义为一个类型(field结构相同);类似于数据库的表格
映射mapping: 不同类型中的各种field的属性(String int,分词计算器指定谁,长度,特性等等),都可以在mapping映射中体现;类似数据库的schema(结构)
文档document:搜索的数据基本单位,一个数据整体,document.类似数据库中一行数据记录row,类似java中的一个pojo对象
域属性field:类似于数据库中的一个列column