目录

Elasticsearch和Mysql的区别

目录

Elasticsearch和Mysql的区别

名词对比:

Elasticsearch:       index(索引)–>type(类型)–>document(文档)–>field(字段)

mysql:   database(数据库)–>table(表)–>row(行)–>line(列)

区别:

1:遍历方式

Elasticsearch有分片的概念,一个大的索引会被分成多个分片来进行存储数据,使用分布式的架构对分片进行并行搜索(基于倒排)

传统数据库的遍历,属于正向全表扫描

2: 索引

Elasticsearch采用倒排索引,通过把文档字段分词,生成一个term index,  term dictionary,  posting list建立倒排索引

mysql通过B+树建立正排索引,通过索引正向查询

3:事物

Elasticsearch没有事物,数据修改,删除不能回滚

mysql支持事物

4:数据量

在面对大数据量简单计算的时候Elasticsearch的效率原高于mysql等传统数据库,但是在定位某一个唯一值(如用会员id找会员)时并不需要es

但在大数据的相似计算与查找或简单计算时,Elasticsearch的分布式并行计算有绝对的优势

5:协议

Elasticsearch支持http

mysql支持jdbc

推荐下好用的文件转换工具: