将Elasticsearch用作OLAP多维数据集的原因

use*_*141 6 olap reporting elasticsearch

乍一看,似乎使用Elasticsearch作为后端,可以轻松快速地构建具有类似枢轴功能的报表,如传统商业智能环境中所使用的那样.

通过"类似枢轴",我的意思是,在SQL术语中,数据按一到两个维度进行分组,过滤,按一维或二维排序,并通过多个指标聚合,例如总和或计数.

"简单"是指对于足够大的集群,不需要预先聚合数据,这样可以节省ETL和数据工程时间.

"快速"是指由于Elasticsearch的近实时功能报告,与传统商业智能系统相比,在许多情况下可以减少延迟.

是否有任何理由,不将Elasticsearch用于上述目的?

jhi*_*den 8

ElasticSearch是多维数据集的绝佳替代品,我们今天将它用于同一目的.一个巨大的好处是,使用多维数据集,您需要知道要创建报告的维度.使用ES,您只需要输入越来越多的数据,然后再计算出如何报告它.

在我们公司,我们经常会有数据经历以下生命周期.

  1. 记录被写入SQL
  2. SQL的主键写入RabbitMQ
  3. 我们很快回复客户
  4. 当Rabbit有时间时,它使用主键来收集我们想要报告的所有数据
  5. 该数据将写入ElasticSearch

一条忠告:如果您认为您可能想要报告,请从头开始.将1M行插入ES非常容易,更新1M行是一个更大的痛苦.

  • 这是一个非常有趣的见解,谢谢!通常认为 OLAP 多维数据集的好处是类似于对大数据集的复杂查询的 OLAP。在您的示例中,您似乎正在向客户端提供与单个记录相关的数据。这不是 OLAP DB 的典型用例,而是 OLTP DB 的一个用例。我很好奇,您是否成功地在 Elastic Search 中对所有可用数据量有效地支持 OLAP 查询?在哪个并发级别以及哪些数据量? (2认同)