1.Elasticsearch是什么?跟mysql的区别
Elasticsearch是什么
Elasticsearch是一个分布式、高性能、高可用、可伸缩的搜索和分析系统。
ElasticSearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的 全文搜索引 擎,基于RESTful web接口。Elasticsearch是用Java开发的,并作为 Apache许可条款下的开 放源码发布,是当前流行的企业级搜索引擎。设计用于云计算 中,能够达到实时搜索,稳定,可靠, 快速,安装使用方便。
跟mysql的区别
Elasticsearch中的概念与关系型数据库对比。
Relational DB ⇒ Databases ⇒ Tables ⇒ Rows ⇒ Columns
关系型数据库 数据库 表 行 列
Elasticsearch ⇒ Indices ⇒ Types ⇒ Documents ⇒ Fields
Els 索引 类型 文档 域(字段)
在Elasticsearch中,所有的字段缺省都建了索引。 也就是说每一个字段都有一个倒排索引,用于快 速查询。
es支持http协议(json格式)(9200端口)、thrift、servlet、memcached、zeroMQ等的传输 协议(通过 插件方式集成)。传统关系型数据库不支持。
es支持分片和复制,从而方便水平分割和扩展,复制保证了es的高可用与高吞吐。
2.Elasticsearch中的类型都是什么?
字符串类型 string,text,keyword
整数类型 integer,long,short,byte
浮点类型 double,float,half_float,scaled_float
逻辑类型 boolean
日期类型 date
范围类型 range
二进制类型 binary
数组类型 array
对象类型 object
嵌套类型 nested
嵌套类型 nested
地理地图 geo_shape
IP类型 ip
范围类型 completion
令牌计数类型 token_count
附件类型 attachment
抽取类型 percolator