从努力到选择
 从实现到设计
从部分到整体
以下是我对DW design的一些想法
下次使用C#来实现一下
 
ETL中Source 的信息 
     数据提供形式:DB(ORACLE SQLSERVER VERTICA ...) FLAT FILE (EXCEL , CSV, TXT...)
     源系统 db:host port databasename  flat file:  share folder path
     数据更新周期:dayly weekly monthly
     数据提供形式:full data .delta data
     提供数据的业务含义描述:
     主要是事实表还是维度表来源:
 
ETL中数据的mapping信息:
     数据如何从stage表map到Dimension或Fact表的信息
     可以配置在mapping表中?
     在做ETL的时候进行获取,动态生成sql来完成数据的ETL?
     还是尽可能地根据这些信息生成包,然后再去执行包。
         
     聚合计算元数据的说明:
     这些元数据说明我们的metric是如何被计算的,
     我们可以把这些元数据应用在报表中,让看报表的业务人员理解metric是怎么计算的,
     以免对数字产生误解。
     如果有必要,可以专门设计一个页面进行说明,对我们计算的基本流程进行说明。
     要让业务人员清楚我们的计算流程没有违背他们的意愿。     
 
ETL中的job依赖关系与执行记录
     job与subjob之间的依赖关系
     job与job之间的依赖关系
     job的控制情况怎么样?
 
     JOB执行成功率怎么样?
     不同job的执行时长怎么样? 执行的时间趋势怎么样?
     (开始时间,结束时间,时长)
     (失败后如何处理?重做?发送邮件进行通知?)
   
ETL中的数据和使用情况的audit:
     加载过来的源数据有多少条?
     加载到DW听数据有多少条?
     数据from source to target, how about the data record count every load?
     and the data volume trend?
    每次执行事实表或维度表大概多大的数据量?以及数据量的变化趋势怎么样?
    有没有需要以报表的形式呈现出来?
    
    有没有机制来监控我们提供的入口或报表被用户访问的情况?
     (让我们知道我们做的东西是否被使用,使用情况怎么样?)
    描述:哪些用户在什么时候访问我们的报表,访问频率是怎么样的?
     哪些报表是他们最在意的?
 
ETL中data quality 相关的操作:
     确定一些检查规则,检查源数据。
     这只是关于源数据的检查,
 
    检查源数据,是否违反了我们后续操作的一些基本假设,
     示例:
     检查 否则字段是否为空(不能为空的字段)
     检查 某些日期字段的情况(startdate<enddate)
     检查数据是否duplicate
     检查使用的业务主键是否重复
 
     基于业务和TestCase的检查:
     关于业务相关的对于dimention和fact表关系的检查的一些testcases,可以一直运行,
     以保持数据库数据的一致性检查?
     就像QA人员写的test cases,写一个系统可以让其一直按配置的周期执行,而且测试的效率也会得到提高。
    
     Data Enrichment:
     主要是数据从旧的字段的派生,derived column完成的功能,是否可以可配置化地完成,可以随时停止这种配置?
     数据从字段中抽取
     数据的内容进行标准化
 
   
 业务数据源的元数据、数据仓库的元数据、抽取任务的元数据、转换规则的元数据、数据库操作元数据、异常元数据、ETL任务调度的元数据等 
   
     
   实时ETL:在线实时处理 简单的交易型数据 转换比较少 速度是成功的主要因素
   批量ETL:在点上批量处理 转换比较多 适合复杂的用时长的ETL
 
1.如何处理相同数据的多个来源?
2.如何确定数据的默认值?

基于元数据的ETL系统的更多相关文章

  1. 京东基于Spark的风控系统架构实践和技术细节

    京东基于Spark的风控系统架构实践和技术细节 时间 2016-06-02 09:36:32  炼数成金 原文  http://www.dataguru.cn/article-9419-1.html ...

  2. 基于s5pv210嵌入式linux系统sqlite3数据库移植

    基于s5pv210嵌入式linux系统sqlite3数据库移植 1.下载源码 http://www.sqlite.org/download.html 最新源码为3080100 2.解压 tar xvf ...

  3. 基于xml文件实现系统属性配置管理

    文章标题:基于xml文件实现系统属性配置管理 . 文章地址: http://blog.csdn.net/5iasp/article/details/11774501 作者: javaboy2012 E ...

  4. 基于Vue实现后台系统权限控制

    原文地址:http://refined-x.com/2017/08/29/基于Vue实现后台系统权限控制/,转载请注明出处. 用Vue/React这类双向绑定框架做后台系统再适合不过,后台系统相比普通 ...

  5. 基于 OS X Mavericks 系统

    基于 OS X Mavericks 系统远景论坛黑苹果区新手引导 常见疑难解答 以及必要知识普及帖 请善用论坛搜索功能 认真仔细地阅读置顶帖里的教程以及注意事项 前言:之前建立10.9区求助规范帖时, ...

  6. 基于Web在线考试系统的设计与实现

    这是一个课程设计的文档,源码及文档数据库我都修改过了,貌似这里复制过来的时候图片不能贴出,下载地址:http://download.csdn.net/detail/sdksdk0/9361973   ...

  7. JS基础:基于原型的对象系统

    简介: 仅从设计模式的角度讲,如果我们想要创建一个对象,一种方法是先指定它的类型,然后通过这个类来创建对象,例如传统的面向对象编程语言 "C++"."Java" ...

  8. 基于jeesite的cms系统(一):开发环境搭建

    基于jeesite的cms系统系列,是对基于jeesite进行二次开发的博客模块开发过程的总结.涉及入门安装,二次开发,部署等 一.概况: JeeSite 是一个 Java 企业级快速开发平台,基于经 ...

  9. [原创] 浅谈ETL系统架构如何测试?

    [原创] 浅谈ETL系统架构如何测试? 来新公司已入职3个月时间,由于公司所处于互联网基金行业,基金天然固有特点,基金业务复杂,基金数据信息众多,基金经理众多等,所以大家可想一下,基民要想赚钱真不容易 ...

随机推荐

  1. Netty学习之服务器端创建

    一.服务器端开发时序图 图片来源:Netty权威指南(第2版) 二.Netty服务器端开发步骤 使用Netty进行服务器端开发主要有以下几个步骤: 1.创建ServerBootstrap实例 Serv ...

  2. Discuz的缓存体系

    参考文档:<http://dev.discuz.org/wiki/index.php?title=缓存机制> Discuz中涉及数据缓存的地方有: 1. session Dz的sessio ...

  3. Json Utils

    import java.util.List;import java.util.Map; import net.sf.json.JSONArray;import net.sf.json.JSONObje ...

  4. javascript Array 方法学习

    原生对象Array学习 Array.from()   从类似数组的对象或可迭代的对象返回一个数组 参数列表 arraylike  类似数组的对象或者可以迭代的对象 mapfn(可选)   对对象遍历映 ...

  5. 生理周期(c++实现)

    描述:人生来就有三个生理周期,分别为体力.感情和智力周期,它们的周期长度为23 天. 28 天和33 天.每一个周期中有一天是高峰.在高峰这天,人会在相应的方面表现出色.例如,智力周期的高峰,人会思维 ...

  6. 当Thread.Sleep的暂停时间参数设置过小时,精度很差的解决方法

    一.问题产生 在C#和C++中有这样一个函数:void Sleep(int Timeout),可以让线程暂停指定的毫秒数. 但是我在win8下调用这个函数实现按照固定频率发送udp数据包时,会有一个问 ...

  7. Android开发 Failed to install *.apk on device 'emulator-5554': EOF

    在运行android 程序时出现这样的错误: Failed to install homework.apk on device 'emulator-5554': EOF java.io.IOExcep ...

  8. AngularJS(一)

      <!doctype html> <html ng-app=""> <!-- ng-app指令标记了AngularJS脚本的作用域 --> & ...

  9. 使用Sharepoint定时运行Excel中宏程序

    需求:因为Excel中数据量很大,其中包含了几个宏程序从其他数据源读取数据,运行一次宏需要比较长的时间,为了不影响使用,要求每天半夜运行一次Excel中的宏(无参数),Excel存放在共盘上. 解决方 ...

  10. Searching External Data in SharePoint 2010 Using Business Connectivity Services

    from:http://blogs.msdn.com/b/ericwhite/archive/2010/04/28/searching-external-data-in-sharepoint-2010 ...