wzy0623的专栏

数据库、数据仓库、大数据

HAWQ取代传统数仓实践(十一)——维度表技术之维度合并

有一种合并维度的情况,就是本来属性相同的维度,因为某种原因被设计成重复的维度属性。例如,在销售订单示例中,随着数据仓库中维度的增加,我们会发现有些通用的数据存在于多个维度中。客户维度的客户地址相关信息、送货地址相关信息里都有邮编、城市和省份。下面说明如何把客户维度里的两个邮编相关信息合并到一个新的...

2017-05-31 15:03:12

阅读数:3333

评论数:0

HAWQ取代传统数仓实践(十)——维度表技术之杂项维度

一、什么是杂项维度        简单地说,杂项维度就是一种包含的数据具有很少可能值的维度。事务型商业过程通常产生一系列混杂的、低基数的标志位或状态信息。与其为每个标志或属性定义不同的维度,不如建立单独的将不同维度合并到一起的杂项维度。这些维度,通常在一个模式中标记为事务型概要维度,一般不需要所有...

2017-05-27 13:59:03

阅读数:3067

评论数:0

HAWQ取代传统数仓实践(九)——维度表技术之退化维度

退化维度技术减少维度的数量,简化维度数据仓库模式。简单的模式比复杂的更容易理解,也有更好的查询性能。        有时,维度表中除了业务主键外没有其它内容。例如,在本销售订单示例中,订单维度表除了订单号,没有任何其它属性,而订单号是事务表的主键,这种维度就是退化维度。业务系统中的主键通常是不允许...

2017-05-26 13:29:04

阅读数:3087

评论数:0

HAWQ取代传统数仓实践(八)——维度表技术之角色扮演维度

单个物理维度可以被事实表多次引用,每个引用连接逻辑上存在差异的角色维度。例如,事实表可以有多个日期,每个日期通过外键引用不同的日期维度,原则上每个外键表示不同的日期维度视图,这样引用具有不同的含义。这些不同的维度视图具有唯一的代理键列名,被称为角色,相关维度被称为角色扮演维度。        当一...

2017-05-25 15:47:41

阅读数:3844

评论数:0

HAWQ取代传统数仓实践(七)——维度表技术之维度子集

有些需求不需要最细节的数据。例如更想要某个月的销售汇总,而不是某天的数据。再比如相对于全部的销售数据,可能对某些特定状态的数据更感兴趣等。此时事实数据需要关联到特定的维度,这些特定维度包含在从细节维度选择的行中,所以叫维度子集。维度子集比细节维度的数据少,因此更易使用,查询也更快。        ...

2017-05-24 14:21:20

阅读数:3804

评论数:0

HAWQ取代传统数仓实践(六)——增加列

业务的扩展或变化是不可避免的,尤其像互联网行业,需求变更已经成为常态,唯一不变的就是变化本身,其中最常碰到的扩展是给一个已经存在的表曾加列。        以销售订单为例,假设因为业务需要,在操作型源系统的客户表中增加了送货地址的四个字段,并在销售订单表中增加了销售数量字段。由于数据源表增加了字段...

2017-05-23 17:18:25

阅读数:3647

评论数:0

HAWQ取代传统数仓实践(五)——自动调度工作流(Oozie、Falcon)

一旦数据仓库开始使用,就需要不断从源系统给数据仓库提供新数据。为了确保数据流的稳定,需要使用所在平台上可用的任务调度器来调度ETL定期执行。调度模块是ETL系统必不可少的组成部分,它不但是数据仓库的基本需求,也对项目的成功起着举足轻重的作用。本篇说明如何使用HDP中的Oozie和Falcon服务实...

2017-05-18 17:35:22

阅读数:5199

评论数:4

HAWQ取代传统数仓实践(四)——定期ETL(Sqoop、HAWQ)

一、变化数据捕获(CDC)        初始装载只在数据仓库开始使用前执行一次,然而,必须要周期性地执行装载源数据过程。与初始装载不同,定期装载一般都是增量的,并且需要捕获并且记录数据的变化历史。1. 识别数据源与装载类型        定期装载首先要识别数据仓库的每个事实表和每个维度表用到的并...

2017-05-12 16:03:17

阅读数:3790

评论数:8

HAWQ取代传统数仓实践(三)——初始ETL(Sqoop、HAWQ)

一、用sqoop用户建立初始抽取脚本        本示例要用Sqoop将MySQL的数据抽取到HDFS上的指定目录,然后利用HAWQ外部表功能将HDFS数据文件装载到内部表中。表1汇总了示例中维度表和事实表用到的源数据表及其抽取模式。 源数据表 HDFS目录 对应EXT模式中的表 抽取...

2017-05-12 11:00:54

阅读数:3695

评论数:0

HAWQ取代传统数仓实践(二)——搭建示例模型(MySQL、HAWQ)

一、业务场景        本系列实验将应用HAWQ数据库,为一个销售订单系统建立数据仓库。本篇说明示例的业务场景、数据仓库架构、实验环境、源和目标库的建立过程、测试数据和日期维度的生成。后面陆续进行初始数据装载、定期数据装载、调度ETL工作流自动执行、维度表技术、事实表技术、OLAP和数据可视化...

2017-05-11 15:31:39

阅读数:6583

评论数:2

HAWQ取代传统数仓实践(一)——为什么选择HAWQ

为了跟上所谓“大数据”技术的脚步,从两年前开始着手实践各种SQL-on-Hadoop技术,从最初的Hive,到SparkSQL,再到Impala,进行了一系列ETL、CDC、多维数据仓库、OLAP的实验。作为一名从业20年以上的DBA,从数据库的角度看,我的总体感觉是这些技术与传统的DBMS相比,...

2017-05-10 16:24:57

阅读数:11932

评论数:12

HAWQ与Hive查询性能对比测试

一、实验目的        本实验通过模拟一个典型的应用场景和实际数据量,测试并对比HAWQ内部表、外部表与Hive的查询性能。二、硬件环境1. 四台VMware虚机组成的Hadoop集群。2. 每台机器配置如下:(1)15K RPM SAS 100GB(2)Intel(R) Xeon(R) E5...

2017-05-09 16:00:22

阅读数:5659

评论数:3

提示
确定要删除当前文章?
取消 删除
关闭
关闭