| 语言 | 格式 | 评分 |
|---|---|---|
中文(简体) | .pdf | 3 |
| 摘要 | ||
文档详细介绍了ClickHouse数仓在多维分析中的应用实践。主要内容包括数据从Oracle平台通过Kettle工具同步至ClickHouse数据库,采用MergeTree引擎构建主题事实清单表和维度表,使用字典表进行数据处理,以及通过Davinci开源报表系统进行数据展示和多维分析。文档还展示了数仓建设的具体实施步骤和相关数据表结构。 | ||
| AI总结 | ||
## 《3. 数仓ClickHouse多维分析应用实践-朱元》总结
### 1. 数据同步
- **数据同步策略**:
- 基于公司T+1数据要求及开发人员水平和成本,采用可视化同步工具Kettle。
- 从Oracle数据平台同步维度信息和主题清单数据至ClickHouse数据仓库Etl服务器。
- 通过`clickhouse-client`将文本数据导入ClickHouse数据库。
### 2. 数仓建设
- **维度表**:
- 一般维度表数据量较小,采用`Log`引擎和字典表(`dictionary`)进行存储与管理。
- 字典表用于快速获取维度信息,提升查询效率。
- **主题事实清单表**:
- 采用`MergeTree`引擎,支持按`stat_day`进行分区,排序字段为`stat_day`和`dc_id`。
- 每日从Oracle数据平台进行增量同步,确保数据实时性。
- **表结构示例**:
```sql
create table dw_hr.fct_rpt_dc_shop_vender_day (
stat_year Int16,
stat_month Int32,
stat_day Date,
stat_day_str String default formatDateTime(stat_day, '%F'),
build Int8,
dc_id String,
venderid String,
dctype Int8,
shop_id String,
shopformid Int8,
logistics Int8,
datasource Int8,
rpt_qty Decimal(18,4),
rpt_boxes Decimal(18,4),
rpt_cost Decimal(18,4),
) engine = MergeTree
PARTITION BY toYYYYMM(stat_day)
ORDER BY (stat_day, dc_id)
SETTINGS index_granularity = 8192;
```
### 3. 对外数据
- **对外开放**:
- 封装主题事实清单表和维度表为视图(`vw_fct_rpt_dc_shop_sku_vender_day`),便于外部查询和使用。
- 使用`dictGet`函数获取维度信息,例如从`dw_buinfo`和`dw_shop`字典表中获取业务单元名称、店铺名称、区域等信息。
### 4. 数据展示与多维分析
- **分析工具**:
- 使用开源报表系统Davinci(地址:[https://github.com/edp963/davinci](https://github.com/edp963/davinci))进行数据展示和多维分析。
- 支持复杂查询和多维度数据展示,满足业务分析需求。
### 5. 图片内容
- 文档中包含多张图片链接,但具体内容未明确展示,需根据实际图片内容补充相关信息。 | ||
P1
P2
P3
P4
P5
P6
P7
P8
P9
P10
P11
P12
下载文档到本地,方便使用
- 可预览页数已用完,剩余
2 页请下载阅读 -
文档评分














3. 数仓ClickHouse多维分析应用实践-朱元