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

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

目录
相关文章
|
4月前
|
数据库 Python
Python-ElasticSearch客户端的封装(聚合查询、统计查询、全量数据)
Python-ElasticSearch客户端的封装(聚合查询、统计查询、全量数据)
50 0
|
11月前
|
前端开发 JavaScript 数据库
(简易)测试数据构造平台:37 - 复杂工具(页面自动获取数据模块后端)
(简易)测试数据构造平台:37 - 复杂工具(页面自动获取数据模块后端)
|
12月前
|
SQL 程序员 数据库
789.【技术】当可选http接口和sql造数据,你会选用哪种方式呢?
789.【技术】当可选http接口和sql造数据,你会选用哪种方式呢?
122 0
|
JSON 数据格式 网络架构
Kettle使用接口获取数据(九)
Kettle使用接口获取数据(九)
535 1
Kettle使用接口获取数据(九)
|
SQL 物联网 Shell
SQLite 数据库编程回调方式获取数据表信息 | 学习笔记
快速学习 SQLite 数据库编程回调方式获取数据表信息
118 0
|
Java 数据库
一次小优化——请求后台返回RTSP获取筛选
一次小优化——请求后台返回RTSP获取筛选
231 0
|
前端开发 PHP
无参数名post数据客户端以及接口是如何实现的?
无参数名post数据客户端以及接口是如何实现的?
210 0
|
测试技术
Jmeter接口性能压力测试聚合报告各个字段详解
Jmeter接口性能压力测试聚合报告各个字段详解
188 0
Jmeter接口性能压力测试聚合报告各个字段详解
如何查询 ABAP 传输请求(Transport Request)和使用该请求修改了的程序的信息?
如何查询 ABAP 传输请求(Transport Request)和使用该请求修改了的程序的信息?
189 0
如何查询 ABAP 传输请求(Transport Request)和使用该请求修改了的程序的信息?
|
前端开发 开发者
前端,测试如何修改后端接口返回的响应数据
前端,测试如何修改后端接口返回的响应数据
前端,测试如何修改后端接口返回的响应数据