Dremio使用数据反射提高查询响应

  1. 云栖社区>
  2. 博客>
  3. 正文

Dremio使用数据反射提高查询响应

北斗云 2019-08-23 17:56:40 浏览3118
展开阅读全文

1.描述

Dremio的数据反射是基于Apache Parquet和Apache Arrow的高性能柱状数据结构,用来维护源数据的物理优化,可直观理解为关系数据库中的索引;Data Reflections使用列化,压缩,排序,分区和聚合数据等技术,组织和优化Dremio查询执行引擎的数据;所以的反射数据都存在于Dremio的Reflection Store中,及如下配置项:

## 可配置本地或HDFS等远程存储

paths: {
  # the local path for dremio to store data.
  local: ${DREMIO_HOME}"/data"

  # the distributed path Dremio data including job results, downloads, uploads, etc
  #dist: "pdfs://"${paths.local}"/pdfs"
}

2.数据反射的类型

a).Raw reflections(原始反射)

原始反射包括Raw数据集中的一个或多个字段,按特定字段排序,分区和分布

b).Aggregation reflections(聚合反射)

聚合反射包括Raw数据集中的一个或多个维度和度量字段,按指定字段排序,分区和分布

c).External reflections(外部反射)

外部反射是一种非托管反射,允许用户利用外部系统中内置的现有数据集和汇总表作为Dremio中的反射

3.创建数据反射

a).选择数据源

b).配置反射

c).反射执行任务

任务概括

任务执行明细

任务资源

4.验证反射

a).反射前聚合查询

任务概括

任务执行明细

b).反射后聚合查询

任务概括

任务执行明细

c).数据反射结果

数据反射可以明细提高聚合查询的响应时间,但同时配置了数据反射会增加反射数据的磁盘占用;这也是一种以空间换时间的业务理念。

网友评论

登录后评论
0/500
评论
北斗云
+ 关注