自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(137)
  • 收藏
  • 关注

原创 34个ETL子系统-25:版本控制系统

版本控制系统是存档和恢复ETL任务流中所有逻辑和元数据的一种快照功能。它负责控制所有ETL任务模块和作业的check-in以及check-out,对于开源的kettle,可以采用svn或者cvs等版本控制工具来实现。并且,版本控制系统也不应该成为一个事后才想起的问题。在ETL系统的设计上,每一部分都要确定一个主版本号,另外ETL系统的整体也应该有一个版本号。当某天发布的版本有严重的错误时,可以快速

2018-02-06 23:26:49 525 1

原创 34个ETL子系统-24:恢复和重新启动子系统

恢复和重新启动子系统:ETL设计的一个重要部分就是当ETL任务失败时,可以重新启动。在任务设计中,我们要尽量避免丢失数据和重复记录的情况。因此,这个子系统对整个ETL系统都是非常重要的。

2018-02-06 23:17:10 560

原创 34个ETL子系统-23:备份系统

备份在ETL过程中产生的各种中间数据也应该是ETL方案的一部分工作。Kimball推荐在ETL过程中的三个环节备份这些数据。1)从源系统加载后未进行任何改动之前。2)清洗之后3)已做完各种数据处理,可以写入正式数据仓库之前。

2018-02-06 23:14:01 439

原创 34个ETL子系统-22:作业调度

社区版的Kettle不提供自己的调度功能,而是依赖于Pentaho BI 的调度功能或者操作系统的croti功能。更好用的调度工具,例如OpenCron,opencron 是一个功能完善且通用的开源定时任务调度系统,拥有先进可靠的自动化任务管理调度功能,提供可操作的 web 图形化管理满足多种场景下各种复杂的定时任务调度,同时集成了 linux 实时监控、webssh 等功能特性。

2018-01-31 23:34:31 794

原创 34个ETL子系统-21:数据整合管理系统

数据整合管理系统,主要用来从数据仓库获取统计结果,并将这些结果推送到其他的应用环境中,例如离线数据分析,统计报表等。

2018-01-30 23:42:40 528

原创 34个ETL子系统-20: OLAP Cube构建系统

OLAP数据库的存储结构和通常的数据库不同。当进行数据加载时,可以先预聚集数据。一般的OLAP数据库只能加载不能更新,所以在更新前必须把原数据清除。其他的OLAP数据库(微软的分析服务器)可以更新事实表,但是是其自有的更新方式。在Kettle中无法使用。

2018-01-29 23:28:26 703

原创 34个ETL子系统-19:聚集构建

数据仓库的重点应用方向就是在线分析,这就对性能提出了很高的要求。为了能快速的响应前端的性能需求,可以有多种解决方案:升级硬件,采用内存数据库,数据表建立索引,对数据进行聚集。在这些方案中,在同等条件下,聚集表对性能的提升最大。如果能把数分钟的响应时间变成毫秒级的响应,则对前端的体验影响非常大。聚集表虽能达到这样的效果,但任何事物都有两面性。为了达到此效果,就得维护聚集表。一方面可以采用商业数据库,

2018-01-28 22:31:37 274

原创 管理能力梯队

领导梯队职位业绩要求领导力要求第一阶段,从管理自我到管理他人一线经理促成业绩实现工作计划、知人善任、分配工作、激励员工、教练辅导、绩效评估、时间管理第二阶段,从管理他人到管理经理人员部门经理、总监提高企业运营效率选拔一线管理人才、分配管理工作、评估下属、教练辅导、全局思考第三阶段,从管理经理人员到管理职能部门事业部副总

2018-01-27 23:04:04 521

原创 34个ETL子系统-18:事实表管理系统

事实表管理系统是负责如何创建、组织和管理事实表相关的任务。这个子系统和17一起联合工作。事实表管理系统通过维度管理系统获得维表的相关维度,将这些维度整合到事实表中。

2018-01-27 00:25:28 453

原创 34个ETL子系统-14:代理键管道

这个子系统负责为事实表抽取正确的代理键。在这里使用“管道”是因为事实表的加载看起来好像一个工序,在工序里各个环节里使用数据的自然键去查找维表里的代理键。

2018-01-25 23:46:22 341

原创 34个ETL子系统-17:维度管理系统

维度管理系统是整个数据仓库的中心控制系统,用来为数据仓库提供正确的维度数据。在这里,所谓的中心控制系统,不但是组织维表的数据,而且还要负责管理和维表相关的计算任务,包括维表的生成、维表的更新、缓慢变化维的更新管理、维表的加载、生成维杂项维的管理等

2018-01-25 23:46:03 748

原创 34个ETL子系统-16:迟到数据处理

在前面的讨论中,所有的数据都是在数据同时到达的假设前提下,但是在某些场景下却并非如此。事实表和维表的数据都有可能弯道。在这种情况下,对事实表不算什么太大的问题。唯一有区别的是,是要根据维度的有效时间来查找业务发生时的代理键。这种情况下,只要在查询条件中增加begin_time和end_time即可。处理这种情况,有两种方法。第一种,事实表已经加载完毕,而维表后续到达。择根据SCD2,在维表中增加一

2018-01-24 23:39:37 440

原创 34个ETL子系统-15:多值维度桥接表生成系统

在处理不同深度的层次时需要桥接表,例如一个大客户是一个学校,它有主校和分校。每个学校都可能去购买商品。如果要从主校的角度去看一共购买了多少商品,就得用桥接表来实现。当有多个维度项和事实表的其他维表关联时,也得用桥接表。

2018-01-23 23:40:35 1489

原创 34个ETL子系统-13:事实表加载

在这里将事实表的加载单独拿出来,主要是要强调如下三种不同类型的事实表。1、事务型事实表:以单个事务或者事件为单位,作为事实表的1行数据。2、周期快照事实表:事实表里并不保存全量的数据,只保存固定事件间隔的数据,如每个月的资金余额。3、累积周期快照事实表:当新的事实到达后,更新事实表的里记录。例如订单处理过程,有多个日期:下单日期、发货日期、签收日期、退款日期等。在这个订单的处理过程中,

2018-01-21 23:15:18 622

原创 34个ETL子系统-12:特殊维度生成系统

在数据仓库中,畜类缓慢变化维之外,还有一些特殊的维度。下面就列出一些:1、杂项维度:零散的属性,在主题分析时需要,但又不适合放在其他维表中。例如状态标识,0/1,true/false等一些低阶的维度。2、小维度:从大的维度表中分离出来的一些经常变化的属性,放在单独的维表中。3、静态维度:小的维表或参照表。在源系统中没有对应的数据。如性别。4、用户自定义维度:源系统里没有而报表需要描

2018-01-20 23:23:47 346

原创 34个ETL子系统-11:层次维度构建

层次维度,是数据仓库中需要考虑如何构建和维护的一个较难的方面。层次维度可以让用户分析和查看不同层级上的数据。例如,时间维度的层级就是一个最简单的层级结构,这个实现起来也较简单。可以直接采用“年-季度-月-周-日”或者“年-月-日”的方式。在维表中统一进行整合。其他类型的层次维度,就属于“不平衡”或“带缺失”的维度了。例如,行政区划,一般是按照“国家-省份-市-县”,但中国存在直辖市,这个直辖市和省

2018-01-19 22:36:53 469

原创 34个ETL子系统-10:代理键生成系统

代理键生成系统在ETL流程中可以生成代理键。在Kettle里,通过"增加序列"的步骤就能自动或者使用数据库里面的序列来生成代理键。生成的方法有如下3种:1、将表中现有的代理键的最大值+1(不是线程安全,强烈不推荐)2、使用数据库的序列。(线程安全,推荐使用)3、使用一个自增的字段。(也可以)

2018-01-18 23:46:20 998

原创 34个ETL子系统-9:缓慢变更维度处理

缓慢变更维度(Slowly Change Dimensions  )是基于维度建模的多维数据仓库的基础。当维度表的信息发生变化时,如何更新就成为一个问题。根据Kimball的经典著作,主要有3种方法来处理。Type 1:覆盖:直接用新值代替旧值。Type 2:增加新行。将当前行的状态设置为off,并设置一个endtime时间戳,将当前时间标记上。         同时新增1行,将其状态标记为on,

2018-01-17 23:24:19 299

原创 34个ETL子系统-8:数据一致性

数据经过排重子系统以及数据质量处理等步骤之后,就进入到数据一致性子系统。这个步骤的目的是将来源于多个业务系统的事实数据按照相同的维度进行整合。例如,当一个超市的客服管理系统和销售管理系统的数据进行整合,放到同一个数据仓库中,就需要把这两个系统的客户数据统一成一个单一的客户维度表。在加载这两个系统的事实数据是,需要将来自这两个系统的事实数据统一指向一个客户维度表。一种处理方式是,维度表保留原系统的自

2018-01-16 23:32:26 830

原创 34个ETL子系统-7:排除重复数据系统

去除重复记录也许是ETL项目中最棘手的问题。大部分的ETL工具都没有自动处理重复数据的功能。数据重复问题,最简单的情况是删除重复的记录,或者是将不同数据系统中相互冲突的数据变得统一。处理重复数据有几种方法:模糊查询、正则表达式、或者各种数据挖掘的算法等。如果用开源的工具,也可以尝试DQ Guru,SQL Power DQguru Community Edition (formerly th

2018-01-15 22:14:17 768

原创 2018年学习计划

2017年已经过去,在这一年中,在Greenplum方面进行了较深入的学习和实践。翻译了管理员手册及参考手册。从10月份开开始,每天一篇博客,11月份完成的最好,30天。12月份稍差,21篇。总的来说,开始养成写文章的习惯。在2018年,整体的方向有如下几个:1、ETL     在这里,彻底将ETL的34个子系统完整梳理一遍,并结合Kettle,进行深入的实践。2、数据模型 

2018-01-14 11:59:26 1009

原创 34个ETL子系统-6:审计维度

34个ETL子系统-6:审计维度前面讲的错误数据处理,和数据仓库中的业务数据是完全独立的。但现在说的审计维度却是数据仓库内部的维度表。审计维度是一类特殊的维度表。审计维度表包含了事实表变更的元数据,事实数据的加载时间,数据质量指标。审计维度,可以提供如下的信息:审计信息:数据源是哪里,在什么时间加载,是用哪个过程加载,加载时所用的规则是什么。提供数据质量的指标和统计:读取了多少

2018-01-13 22:30:19 887

原创 34个ETL子系统-5:错误事件处理

处理过程错误:指的是在ETL过程的处理中发生的错误,这类错误是最严重的。例如,任务执行中触发了异常,系统资源不足,数据库连接失败等。对此类的错误,可以通过邮件提醒的方式来获取到,在处理过程中也增加相应的处理机制。数据校验错误:指的是一些数据不能通过数据校验机制。针对此类错误,可以通过将相关错误数据记录后,数据处理流程继续执行。不在任务执行中处理此类错误。过滤器错误:是指一些数据不满足过滤条

2018-01-13 10:20:30 422

原创 34个ETL子系统-4:数据清洗和数据质量处理系统

子系统4:数据清洗和质量处理系统数据清洗是指修改进入到ETL流程中的业务定义的脏数据。一般而言,我们反复强调数据清洗应当在数据源进行。但是原始数据的质量一般都不能满足数据仓库的需求,或者,原始数据清洗后,在数据仓库进行数据质量检查时,无法发现原始数据的质量问题。因此,一般都在ETL过程中进行数据清洗。其优势在于:1、在数据剖析阶段,就能知道哪些数据是错误数据2、在源系统中需要的数据清洗

2018-01-12 23:57:51 697

原创 34个ETL子系统-3:数据抽取系统

数据抽取系统,就是从不同的数据源里抽取数据,并将其输入到ETL流程中。数据的抽取方式有两种:基于流的抽取和基于文件的抽取。这两种方式,从本质上讲,都是数据流。唯一有区别的地方,基于静态的文件时进行抽取时,数据源是不变的,当然,如果是要抽取日志文件,则源也是随时发生变化的。     在数据的抽取实现过程中,需要重点考虑的是,当任务失败后,如何进行恢复。当数据源是静态时,重新启动作业即可。当数据源

2018-01-11 23:22:47 899

原创 34个ETL子系统-2:增量数据捕获系统

增量数据捕获系统,其目标是用来捕获源系统的变化。捕获数据变化的形式可以有很多种,典型的几种方式如下:1、基于数据源的数据变化捕获    1.1 时间戳   利用数据表的更新时间戳来实现,最好有两个时间戳。一个是数据生成时间(标记数据什么时间创建),一个更新时间戳(标记数据什么时间更新)     1.2 自增序列。大多数数据库都有自增序列,如果数据表有这个序列,那就很容易识别出来新增的数

2018-01-10 23:15:33 326

原创 34个ETL子系统-1:数据剖析系统

子系统1:数据剖析系统     该子系统主要分析不同数据源的结构和内容。    1、元数据信息    表名,表中文名,字段名,字段类型,字段备注,是否为空,是否主键,默认值    2、统计信息    记录行数,NULL个数,最小值,最大值,跳行记录

2018-01-09 22:31:52 724

翻译 Pivotal Clustering Concepts 安装指南

每个配置都需要特定的机架计划。 单机和多机架配置由配置中存在的服务器数量决定。 单机架配置就是将所有计划的设备放入一个机架中的配置。 多机架配置需要两个或更多的机架来容纳所有计划的设备。RackingGuidelines  for a 42U Rack 如果将集群安装在42U机架上,请考虑以下事项。•在安装任何硬件之前,请执行现场勘察以确定需要使用何种电源选项,电源电缆位于机架的顶

2018-01-08 23:02:42 185

翻译 Pivotal Clustering Concepts Greenplum 网络配置管理

NetworkLayout GuidelinesGeneral Recommendations Pivotal集群中的所有系统都需要以某种形式的高速数据互连连接在一起。Pivotal集群的一般经验法则是最大值的20%,每个分段节点的理论I/O扫描速率将通过互连传输。这显然取决于工作量,但出于规划的目的,这个数量确保了数据互连良好的服务。Greenplum数据库:至少有两个10

2018-01-07 23:30:36 582

翻译 Pivotal Clustering Concepts Greenplum磁盘设置

Greenplum磁盘设置具有24个可热交换磁盘的通用服务器可以具有多种潜在的磁盘配置。 Pivotal平台和系统工程师完成的测试表明,支持Pivotal软件的最佳性能存储是:•四个RAID5组,每个六个磁盘(用作四个文件系统)或者•使用逻辑卷管理器组合成一个或两个文件系统以下说明介绍如何为主节点和分段节点构建建议的RAID组和虚拟磁盘。相关操作系统“安装指南”中介绍了这些最终转换

2018-01-06 23:52:02 376

翻译 Pivotal Clustering Concepts-Greenplum服务器选择

Greenplum数据库集成了三种服务器:主服务器,段服务器和ETL服务器。 Greenplum数据库服务器必须符合以下标准。MasterServers通常是1U服务器与段服务器相同的处理器,RAM,RAID卡和NICs 卡将6到10个磁盘(最常见的8个)组织到一个RAID5组中,并配置一个热备份SAS 15k磁盘首选,10k磁盘紧随其后所有磁盘必须具有相同的大小和类型

2018-01-05 23:10:39 378

翻译 pivotal 集群相关概念-1

introduction toDesigning a Pivotal Cluster with Customer-supplied HardwarePivotalAppliance提供了一个现成的平台,致力于满足大多数客户的工作负载。 越来越多的Pivotal工程公司正在看到客户选择建立满足特定要求或目的的集群的情况。平台和系统工程公司发布这个框架,为现场人员提供一个资源来协助客户进行这项工作

2018-01-03 23:48:05 225

翻译 Chapter 18 Greenplum 特性总结

Chapter 18  Greenplum 特性总结This sectionprovides a high-level overview of the system requirements and feature set ofGreenplum Database. It contains the following topics:•    Greenplum SQL Standard

2018-01-02 23:41:01 2462

翻译 Chapter 16 Greenplum PL/Java 语言扩展-安装并使用PL/JAVA

Installing PL/Java对于Greenplum数据库,PL/Java扩展可作为一个包提供。从Pivotal网络下载软件包,然后使用Greenplum软件包管理器(gppkg)进行安装。gppkg实用程序会在群集中的所有主机上安装Greenplum数据库扩展以及任何依赖项。在系统扩展和分段恢复的情况下,它也自动在新主机上安装扩展。有关gppkg的信息,请参阅Greenplum

2017-12-26 22:21:54 2366

翻译 Chapter 16 Greenplum PL/Java 语言扩展-About PL/Java

通过使用Greenplum数据库PL/Java扩展,您可以使用您最喜欢的Java IDE编写Java方法,并将包含这些方法的JAR文件安装到Greenplum数据库中。Greenplum数据库PL/Java包基于开源的PL/Java 1.4.0。 Greenplum数据库PL/Java提供以下功能。•能够使用Java 1.6或更高版本执行PL/Java函数。•标准化实用程序(建模在SQ

2017-12-25 23:16:28 703

翻译 Chapter 15 PL/Python 语言扩展

Chapter15 PL/Python 语言扩展This sectioncontains an overview of the Greenplum Database PL/Python Language.•    About Greenplum PL/Python•    Enabling and Removing PL/Python support•    Developin

2017-12-24 14:22:33 1896

翻译 Chapter 14 Greenplum PL/R Language Extension

Chapter 14 Greenplum PL/RLanguage ExtensionThis chaptercontains the following information:•    About Greenplum Database PL/R•    Installing PL/R•    Uninstalling PL/R•    Migrating from PL/R

2017-12-24 14:21:42 911

翻译 Chapter 13 Greenplum PostGIS Extension

Chapter 13 GreenplumPostGIS ExtensionThis chaptercontains the following information:•    About PostGIS•    Greenplum PostGIS Extension•    Enabling PostGIS Support•    Upgrading the Greenp

2017-12-22 23:02:03 970

翻译 第12 章 Greenplum PL/pgSQL 程序语言

Chapter 12 GreenplumPL/pgSQL 程序语言This section contains an overview ofthe Greenplum Database PL/pgSQL language.•    About Greenplum Database PL/pgSQL•    PL/pgSQL 示例•    References 

2017-12-21 23:30:31 1039

翻译 Chapter 11 Greenplum MapReduce 规范

Chapter11 Greenplum MapReduce 规范本规范描述了定义GreenplumMapReduce作业的文档格式和模式。MapReduce是由Google开发的用于在一系列商品服务器上处理和生成大型数据集的编程模型。 GreenplumMapReduce允许熟悉MapReduce模型的编程人员编写map和reduce函数,并将其提交给Greenplum数据库并行引擎进

2017-12-20 22:38:17 815

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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