数仓工具!! 项目要用

108 篇文章 2 订阅
13 篇文章 5 订阅

数仓工具(重点)

练习:http://hadoop02:8889/

账号:hue

密码:hue

Hue操作HDFS(操作)

新建文件夹、新建文件、上传文件、查看文件、编辑文件、删除文件。

Hue操作Hive(重点)

建库、建表、插入、查询

内置函数: 精度四舍五入 ▁▁▁round(double, length)

字符串截取函数 ▁▁▁substr(string, start, length)

字符串拼接函数 ▁▁▁concat concat_ws

年月日获取▁▁▁year/quarter/month/day/hour

日期格式化函数▁▁▁date_format(string, format)

判断函数 ▁▁▁if case when then

Sqoop

sqoop1与sqoop2

Sqoop1以▁▁▁client的形式存在和运行。

没有任务时是▁▁▁没有 进程存在的。

Sqoop2以▁▁▁server 的形式存在和运行。

没有任务时是▁▁▁有 进程存在的。

Sqoop和Hcatalog方式

1、▁▁▁Hacatalog 方式支持更多数据格式,包括RCFile, ORCFile, CSV, JSON和SequenceFile等格式。

2、▁▁▁sqoop 方式允许数据覆盖,▁▁▁Hcatalog 不允许数据覆盖,每次都只是追加。

3、Sqoop方式的字段是按照▁▁▁顺序 匹配的,HCatalog方式的字段是按照▁▁▁字段名 匹配的。

Sqoop常用参数

--connect ▁▁▁▁▁▁mysql连接地址和数据库

--username ▁▁▁▁▁▁mysql用户名

--password ▁▁▁▁▁▁mysql密码

--table ▁▁▁▁▁▁mysql的表,用的少

--where ▁▁▁▁▁▁mysql条件,用的少

--query ▁▁▁▁▁▁用的多,代替--table和--where,推荐使用双引号,后面记得加$CONDITIONS

--target-dir ▁▁▁▁▁▁hdfs的目录

--delete-target-dir ▁▁▁▁▁▁hdfs覆盖插入

--hcatalog-database ▁▁▁▁▁▁hive数据库

--hcatalog-table ▁▁▁▁▁▁hive表

-m ▁▁▁▁▁▁MR的数量

--split-by ▁▁▁▁▁▁切割的字段

导入命令 ▁▁▁▁▁▁sqoop import

导出命令 ▁▁▁▁▁▁sqoop export

数据仓库

面向主题:针对事务来说的,主题指的是分析主题。

数据集成:集成内部不同系统的数据源、外部数据源。

非易失:保留完整的历史数据;不会轻易修改或删除数据。

时变性:数据随时间而产生变化,1、新增 2、删除数据(比如10年前)3、统计聚合

数据仓库系统流程:

源数据——》▁▁▁——》▁▁▁——》▁▁▁——》报表、决策系统《——用户

维度建模

指标和维度

指标:多为行为事实数据,线状图中的▁▁▁轴,数值类型字段,如销售额,销量等;

维度:事务的特征,线状图中的▁▁▁轴,字符类型字段,如颜色、区域、时间等。

下钻与上卷

获取高级别的汇总信息的过程叫▁▁▁;

获取低级别的明细信息的过程叫▁▁▁。

事实表和维度表(重点)

事实表

记录了特定行为事件的数字化信息,此类数据的数据量较▁▁▁大,更新频率比较▁▁▁高。

维度表

维度是指观察数据的角度,一般是一个名词,维度表的记录数比事实表▁▁▁小,更新频率较▁▁▁低。

高基数维度表

数据量相对较▁▁▁大、重复性比较▁▁▁小,可辨识度高,比如:用户表、店铺表、商品表

低基数维度表

数据量相对较▁▁▁小、重复性比较▁▁▁高,可辨识度低,比如:性别、部门。

思考

1、事实数据和维度数据在线状图中谁是x轴谁是y轴?

2、事实数据和维度数据在统计sql中,分别处于什么位置?

select count(order_id) order_num, sum(order_price) price 
from t_order
group by year_month;

建模方法

▁▁▁星型模型:

一个事实表为中心,多个维度表。
​
优点:降维、冗余、性能较▁▁▁高。

▁▁▁雪花模型:

维表要通过其他维表连接到事实表。
​
优点:维度更清晰、性能较▁▁▁低。

渐变维

SCD1

直接覆盖,历史数据属于无效数据。

SCD2(重点)

拉链表,能够保留完整的▁▁▁▁▁▁历史快照。

两个核心字段:▁▁▁▁▁▁开始日期、▁▁▁▁▁▁截止日期

获取当前生效的数据:

select * from table
where ValidTo=null、'9999-99-99'、'9999-12-31';

获取2012-02-01生效的数据:

select * from table
where '2012-02-01' >= ValidFrom and  '2012-02-01' < ValidTo;

SCD3

增加列,只保存上一次和当前的数据。

数仓分层(重点)

1、ODS

▁▁▁▁▁▁层

动作:▁▁▁▁▁▁抽取,没有变更

作用:▁▁▁▁▁▁保留最原始最完整的数据

2、DW

2.1、DWD

▁▁▁▁▁▁层

动作:▁▁▁▁▁▁清洗转换

作用:▁▁▁▁▁▁保证数据质量

数据粒度与ODS相比▁▁▁▁▁▁一致

清洗:▁▁▁▁▁▁

转换:▁▁▁▁▁▁

2.2、DWM

▁▁▁▁▁▁中间层

动作:▁▁▁▁▁▁降维冗余、轻度聚合、留作复用

作用:▁▁▁▁▁▁减少join,提高DWS性能

2.3、DWS

▁▁▁▁▁▁业务层

动作:▁▁▁▁▁▁聚合统计

作用:▁▁▁▁▁▁数据集市

3、APP

▁▁▁▁▁▁应用层

动作:▁▁▁▁▁▁个性化字段、统计

作用:▁▁▁▁▁▁报表展现、辅助决策、画像等

4、DIM

▁▁▁▁▁▁维度层

作用:▁▁▁▁▁▁存放公共维度数据

新零售分层(重点)

ODS:▁▁▁▁▁▁

DWD:▁▁▁▁▁▁

DWB:▁▁▁▁▁▁

DWS:▁▁▁▁▁▁

DM:▁▁▁▁▁▁

RPT:▁▁▁▁▁▁

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值