Dremio使用数据反射提高查询响应-阿里云开发者社区

开发者社区> 数据库> 正文

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

简介: ## 1.描述 Dremio的数据反射就是用来维护源数据的物理优化,可直观理解为关系数据库中的索引;Data Reflections使用列化,压缩,排序,分区和聚合数据等技术,组织和优化Dremio查询执行引擎的数据;所以的反射数据都存在于Dremio的Reflection Store中,及如下配置.

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).数据反射结果

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

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
数据库
使用钉钉扫一扫加入圈子
+ 订阅

分享数据库前沿,解构实战干货,推动数据库技术变革

其他文章