,es数据库优缺点?

用户投稿 89 0

关于“elasticsearch_php手册”的问题,小编就整理了【2】个相关介绍“elasticsearch_php手册”的解答:

es数据库优缺点?

ElasticSearch较广泛的使用场景,是提供垂直搜索功能。什么是垂直搜索呢?

一般被拿来解决一些什么样的问题?

数据库字段太多,查询太慢,索引没有办法再做优化;

数据库一个count就拖死全表;

MySQL的limit翻到几十几百万页后实在是太慢;

数据库like实在太慢,每次like整个服务器cpu内存飙高,拖慢整个线上服务;

想要对外/内提供db里的数据的全文检索服务;

提供日志(程序运行)查询功能;

下面来针对上面几方面的问题逐一进行说明。

数据库方面

MySQL对于一些较为固定,字段较少的查询方式,可以通过简单的增加索引来完成优化。在大多数公司,即使对索引优化不熟悉,也有专门的dba来帮忙完成一些简单的优化。甚至有些公司要求程序中不允许出现orm,必须用纯sql来完成业务逻辑,这样dba可以直接介入到代码中来。

不过到字段太多的时候,这种方法就失灵了。字段越多,查询自然就越慢(比如单条记录可能都超过了4k)。

MySQL表在普通查询过程中,比如select * from xxx limit 100w, 100;这种,数据量小的时候随便写sql,可能不会体会到翻页的痛。但在一个单表3000w的系统中写了limit 100w, 10。那数据库服务器就哭了。因为实际上数据库为了取出想要的那几条数据,需要把所有的数据也就是10000010条都取到内存中,复杂一点的select再加上order by则可能会同时涉及到多次磁盘读取和文件排序,慢上加慢。

es用在什么地方?

ES 应用: Elasticsearch 三个使用场景

1、场景-:使用 Elasticsearch 作为 的后端。传统项目中,搜索引擎是部署在成熟的数据存储的顶部,以提供快速且相关的搜索能力。这是因为早期的搜索引擎不能提供耐用的存储或其他经常需要的功能。

。2、场景二:在现有系统中增加 Elasticse arch 。由于ES不能提供存储的所有功能,一些场景下需要在现有系统数据存储的基础上新增ES支持。

3、场景三:使用 Elasticsearch 和现有的工具。在一些使用情况下,您不必写一行代码就能通过elasticssearch完成一项工作。很多工具都可以与Elasticsearch一起工作,所以你不必到你从头开始编写。

到此,以上就是小编对于“elasticsearch_php手册”的问题就介绍到这了,希望介绍关于“elasticsearch_php手册”的【2】点解答对大家有用。

抱歉,评论功能暂时关闭!