`
suifeng
  • 浏览: 183209 次
  • 性别: Icon_minigender_1
  • 来自: 天津
社区版块
存档分类
最新评论

newniu ETL框架

阅读更多

前言

ETL工具能够在方面优化

  1.  
    1. 体系结构
    2. 系统性能
    3. 开发效率
    4. 维护成本
说明:以前的活动结束.


newniu ETL框架

源数据库(db1):Table1,Table2, ...,TablesN---------->  目的数据库(db2):TableX
源数据库(db1):视图   ------------newniu ETL---------->  目的数据库(db2)视图

要求:db1和db2中建立的视图结构完全一致的,包括:列名,列的数据类型, 列的含义;

newniu ETL 功能
  1. 根据表名生成视图
  2. 根据视图进行ETL
  3. 四种同步机制 : 初始化同步,增量同步,变更同步1(不保留历史数据),变更同步2(保留历史数据)

你的工作

  1. 整理出哪些表需要ETL
  2. 整理出建立视图的SQL语句
  3. 配置抽取ETL策略
  4. 让newniu ETL完成剩下的工作

工具 

pl/sql, powerdesign, excel, ultraedit

 

 

一,部署

 

1, 创建用户, 使用用户里面的预览脚本

2, 切换用户, 用创建的用户登陆

3, 创建数据库,  使用整个数据的预览脚本-------创建dw数据仓库 <<DW---构建.SQL>>

4, 创建db link,  使用下面的db link脚本

5, 创建存储过程和触发器, 使用 数据库-->创建触发器存储过程 菜单里面生成到脚本

 

 

二,开发

6, 数据插入etl_tables, 数据来源于 <<核心初始数据.xls>> 

6.1 在 pl/sql中执行 <<核心初始数据.xls>>-->要抽取的表信息---> 插入的sql语句

6.2 然后对数据区解锁, 将excel中的数据copy过去(包括序号列), 更新-->提交

 

7, 执行存储过程 pro_etl_views_insert 生成 etl_views里面的数据---->查看etl_views里是否成功生成数据

 

8, 修改etl_views里数据, 使其是正确到数据-----------------特别注意 8 修改后 要执行 9和10项才能生效

//8.1  远程表表名后面跟@db_link_name----db中的表

8.2  dw中的加上限制条件 dw_data_age = 0,  下面有更新的SQL语句

8.3  录入db的视图, 将 核心初始数据.xls--->db的视图信息--->sql语句,   

copy到pl/sql中执行,  对数据区解锁, 然后把excel中的数据 copy到 pl/sql里面去(包括序号列), 勾选-->提交

 

9, 执行存储过程 PRO_CREATE_ETL_VIEWS 创建视图 ---->查看view是否成功创建

 

10, 执行存储过程 PRO_ETL_ETLS_INSERT 自动生成 ETL_ETLS里面的数据---->查看ETL_ETLS里是否成功生成数据

 

 

三,运行

11, 执行 pro_etl_by_init 进行 全量抽取(初始同步) --删除以前最新的再重新导入

12, 执行 pro_etl_by_add 进行 增量抽取(增量同步)

 

13, 执行 pro_etl_by_change_with_update 进行 变更抽取(变更同步)---采用更新同步方式

14, 执行 pro_etl_by_change_with_insert 进行 变更抽取(变更同步) ---采用插入方式, 保留历史版本

 

 

 

3
5
分享到:
评论
11 楼 suifeng 2009-02-06  
gurudk 写道

没看内容,冲你这份勇气,顶一把!

多谢.
10 楼 gurudk 2009-02-06  
没看内容,冲你这份勇气,顶一把!
9 楼 suifeng 2009-02-06  
Azi 写道

这个也牛?que

呵呵, 小牛, 小牛, 与大牛还有很大的距离.
8 楼 Azi 2009-02-06  
这个也牛?que
7 楼 suifeng 2009-02-05  
trydofor 写道

"潜力型选手,思维前卫,有胆量,有做为."
准备冲击IT领域的诺贝尔吧


多谢鼓励
6 楼 trydofor 2009-02-05  
"潜力型选手,思维前卫,有胆量,有做为."
准备冲击IT领域的诺贝尔吧
5 楼 suifeng 2009-02-05  
juvenshun 写道

呵呵,我想知道你当月工资有多少

呵呵, 惭愧, 2K+, 不过毕业不到两年, 潜力很大.
4 楼 juvenshun 2009-02-05  
呵呵,我想知道你当月工资有多少
3 楼 suifeng 2009-02-05  
ah_fu 写道

果然是无知者无畏ETL这么庞大的体系就被你这一个小程序就搞定了?你或许在某个场景下的某个具体需求中,高效地解决了问题,但是放眼到整个体系,微不足道。对于个人来说,不是某一时刻多牛,关键的是能否持续进步。谦虚且能持续进步的人,才能称得上牛。

一周开发出来的程序是小了点, 3张表, 3个视图, 7个存储过程, 逐渐扩展了.
2 楼 suifeng 2009-02-05  
嗯, 谦虚是必要的
同时提高国人的编程士气也是必要的, IT界一直是外国领导的(尤其是美国)
偶就想搞一点由中国人领导的东西出来.
1 楼 ah_fu 2009-02-05  
果然是无知者无畏
ETL这么庞大的体系就被你这一个小程序就搞定了?
你或许在某个场景下的某个具体需求中,高效地解决了问题,但是放眼到整个体系,微不足道。

对于个人来说,不是某一时刻多牛,关键的是能否持续进步。谦虚且能持续进步的人,才能称得上牛。

相关推荐

Global site tag (gtag.js) - Google Analytics