在 Mapping 里面,将 dynamic 参数设置成 strict 可以拒绝索引包含未知字段的文档。 此条 Tips 由 medcl 贡献。

使用ES进行数据分析的可行性如何?

Elasticsearch | 作者 xxxli | 发布于2019年05月23日 | 阅读数:9653

请教下大家几个问题。
 
1. 我看到很多都是用ELK套件来做日志分析,如果使用ES来做业务数据的多维度分析,可行性如何?因为日志数据与业务数据不太一样。
 
2. 业务数据都存储在MySQL,加起来数据量不到1TB,日变更记录总数200w左右(insert、update),本身因为数据量不够大,不适合使用Hadoop那套生态
 
我理解的ES是一个搜索引擎,着重点在搜索。在分析领域,应用还是少了点。了解ES不多,请大家指教。有无对应的案例分享下。
已邀请:

bindiego - be cool

赞同来自: laoyang360

ES确实是一个搜索引擎,非常擅长做文本数据检索这个工作。不过其实不管是文档数据库,关系数据库还是搜索引擎,都是数据处理计算的一个程序。每个都有自己擅长的事情,归根结底在于着重解决他们要解决的问题,所以针对数据,采用了不同的数据结构进行储存。这些结构为了是能更快的处理以后的查询、计算任务。起码现阶段并没有一个万能的数据库擅长所有事情。所以判断的依据大体2个层面吧,一个是数据进来的管道,根据ES的储存的特性,会不会有问题?第二个就是ES所支持的聚合操作能不能满足后期你业务的查询需求。这两点满足的话,完全可以用ES作为一个分布式的内存计算引擎来解决你数据分析的业务。空话说了一大堆,没涉及细节,也难免有遗漏,希望能有点帮助吧。 :)

laoyang360 - 《一本书讲透Elasticsearch》作者,Elastic认证工程师 [死磕Elasitcsearch]知识星球地址:http://t.cn/RmwM3N9;微信公众号:铭毅天下; 博客:https://elastic.blog.csdn.net

赞同来自:

说一下实战场景:检索针对你的数据量没有问题,深度分页和遍历做好选型。你说的分析涉及数据聚合的会多一些,需要提前评估性能问题。

注意一点,es是近实时,不是准严格实时。es不支持mysql curd 。选型注意下。

基本业务场景没有问题。

everything - 80后IT

赞同来自:

主要看数据量的大小,数据量小,mysql 也可以做多维度分析计算。
 
es 可以做多维度分析计算,但是 需要非常昂贵的硬件环境。
 
一般多维度分析计算,都是用流框架,比如flink 实时计算,或者离线框架计算。
 
最主要还是数据量。 抛开数据量谈框架,技术,都是不应该的。

xxxli

赞同来自:

多谢各位的指点。

要回复问题请先登录注册