从努力到选择
 从实现到设计
从部分到整体
以下是我对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. 母版页 VS shtml—ASP.NET细枝末节(3)

    这算是html的重用吧? 摘自: http://www.cnblogs.com/mcad/p/4352665.html 网页很多地方长得一样,也有不一样的地方. 把网页中一样的地方,提取出来,形成一个 ...

  2. Oracle锁表与解锁

    查看锁表语句:方法1:    select sess.sid,           sess.serial#,           lo.oracle_username,           lo.o ...

  3. Android5.0新特性——兼容性(support)

    兼容性 虽然Material Design新增了许多新特性,但是并不是所有新内容对对下保持了兼容. 使用v7包 v7 support libraries r21 及更高版本包含了以下Material ...

  4. Webform(简单控件、复合控件)

    一.简单控件: 1.label控件 <asp:Label ID="Label1" runat="server" Text="账 号:" ...

  5. TCP中close和shutdown之间的区别

    该图片截取自<<IP高效编程-改善网络编程的44个技巧>>,第17个技巧.  如果想验证可以写个简单的网络程序,分别用close和shutdown来断开连接,然后用tcpdum ...

  6. Android启示录——开始Android旅途

    为了明年可以开始进行android程序开发,开始从零开始学习android,仅以此代表第一步开始(*^_^*),开始搭建环境…… 1. 软件下载 http://developer.android.co ...

  7. 【转】android应用程序的安装方式与原理

    四种安装方式: 1.系统应用安装――开机时完成,没有安装界面 2.网络下载应用安装――通过market应用完成,没有安装界面 3.ADB工具安装――没有安装界面. 4.第三方应用安装――通过SD卡里的 ...

  8. iOS 删除 Main.storyboard 和 LaunchScreen.storyboard

    第一步: 右键选中Main.storyboard —- delete —— Move to Trash LaunchScreen同理 第二步 点击工程名,就是最顶级目录 右侧出现general选项卡 ...

  9. Silverlight项目笔记3:Silverlight RIA Services缓存引发的问题

     问题描述:使用Silverlight的RIA Services进行数据库更新操作,重复提交时发现异常,SubmitOperation发生错误,提示实体类冲突,检查发现之前删除的数据竟然还存在(数据库 ...

  10. 实验:传输层:UDP协议 学习笔记

    一.传输层协议 从之前介绍的网络层协议来看,通信的两端是两台主机,IP数据报首部就标明了这两台主机的IP地址.但是从传输层来看,是发送方主机中的一个进程与接收方主机中的一个进程在交换数据,因此,严格地 ...