ElasticSearch海量数据使用简述

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ElasticSearch海量数据使用简述相关的知识,希望对你有一定的参考价值。

参考技术A 应用场景当中经常会遇到模糊查询或多条件匹配查询,数据量较小的情况下通过简单的数据库模糊查询是可以解决的,但是对于数据量庞大的情况,数据库模糊查询就会出现性能问题。这种情况下的一种解决方案就是根据查询内容构建反向索引,借助搜索引擎进行查询,提升查询性能。

目前使用比较多的分布式搜索引擎是ElasticSearch。那么项目中如何使用ES?如何保证ES的数据更新?下面简单做个描述。

Elasticsearch使用可以简单分为两个阶段。数据初始化阶段、数据更新阶段。

数据初始化阶段。数据初始化常见的方式如下:

一、通过应用程序手动将数据库中的数据,调用ES接口API插入ES索引库中。

二、同过数据迁移工具将数据初始化到ES数据库。目前常用的ES同步工具有logstash-input-jdbc、DataX。通过同步迁移工具可以全量将数据库数据初始化到ES索引库中。

数据更新阶段。数据更新阶段常见的处理方式如下:

一、通过应用服务直接调用ES更新接口。这种方式实现比较简单但是对业务侵入性比较大。

二、对于实时性要求不高的可以采用定时任务监控数据表变化然后调用ES接口实现数据更新。

三、业务应用中通过发送消息异步更新数据。

四、通过DataX同步工具定时将修改的数据同步到ES库中。

上述是ElasticSearch使用的简单描述。使用的关键还是数据库与ES间的数据同步。能否用的好关键也是数据间的同步。

以上是关于ElasticSearch海量数据使用简述的主要内容,如果未能解决你的问题,请参考以下文章

数据采集 ETL 工具 Elasticsearch-datatran v6.3.9 发布

(高版本)ELK(Elasticsearch + Logstash + Kibana)服务服务搭建

SpringBoot 整合 Elasticsearch 实现海量级数据搜索

Elasticsearch 安装

海量日志数据存储用 elasticsearch 和 hbase 哪个好

elk+redis+filebeat