从努力到选择
 从实现到设计
从部分到整体
以下是我对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. 2015-2016 ACM-ICPC, NEERC, Southern Subregional Contest, B. Layer Cake

    Description Dasha decided to bake a big and tasty layer cake. In order to do that she went shopping ...

  2. Natural language style method declaration and usages in programming languages

    More descriptive way to declare and use a method in programming languages At present, in most progra ...

  3. js中的排序

    不靠谱的sort() 众所周知,js中的sort()排序是按字母表顺序排序的,这就导致如下现象: var a = [9,60,111,55,8,7777]; a.sort(); alert(a); / ...

  4. 初学Node(三)模块系统

    模块系统 Node根据CommonJS规范实现了一套自己的模块机制,可以使用require()导入一个模块,使用module.exports导出一个模块. require使用 在Node中我们可以使用 ...

  5. javascript数组浅谈1

    最近心血来潮要开始玩博客了,刚好也在看数组这块内容,第一篇就只好拿数组开刀了,自己总结的,有什么不对的地方还请批评指正,还有什么没写到的方面也可以提出来我进行完善,谢谢~~ 首先,大概说说数组的基本用 ...

  6. arcgis安装msi安装包提示"在未标记为正在运行时,调用了RunScript”解决办法

    安装msi安装包提示"在未标记为正在运行时,调用了RunScript”解决办法   windows/temp目录相关权限不对,右击temp文件夹,选择管理员获取所有权限.

  7. SQL 查询学生缺考情况

    有三个表,如果学生缺考,那么在成绩表中就不存在这个学生的这门课程成绩的记录,写一段SQL语句,检索出每个学生缺考的科目.A 学生表(student)字段1 学生号(s_id)字段2 学生名(s_nam ...

  8. Android实战--电话拨号器

    今天跟着黑马视频建立一个android app--电话拨号器 首先新建一个android项目 activity_main_xml中的代码如下: <RelativeLayout xmlns:and ...

  9. 【读书笔记】iOS-垃圾回收

    Objective-C的垃圾回收器是一种继承性的垃圾回收器.与那些已经存在了一段时间的对象相比,新创建的对象更可能被当成垃圾.垃圾回收器定期检查变量和对象以及它们之间的指针,当发现没有任何变量指向某个 ...

  10. Android Studio安装使用图文教程(转)

    [开发环境] 物理机版本:Win 7旗舰版(64位) Java SDK版本:jdk1.8.0_20(64位) Android SDK版本:Android 4.4(API 20) Android Stu ...