OLAP -- ODS 项目总结 -- ETL中的流程
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了OLAP -- ODS 项目总结 -- ETL中的流程相关的知识,希望对你有一定的参考价值。
ODS-BI 建设中ETL要占用1/3 的时间,深有感触。BI的建模,从物理数据层,逻辑数据层,业务逻辑层各个层次,都有很多自动化的工具可以处理。
但是ETL 中的流程确要根据性能来设计的。总结下这几个部分。
1.数据源/数据目标管理
确定数据源的表,文件,或者RESTFUL的URL,ODBC,值得注意的是,在数据源时,同时关联号外主键关系,对ETL数据有效性帮助很大。
目标数据,可能不同的主题使用了不同的数据库,各个数据库的地址,ODBC,JDBC等信息。 目标数据大部分情况下不需要建索引,主键,因为
目标数据库数据量大时都会使用批量入库,也就是bulk模式,索引会使入库失败。
2.MAPPING 管理
工作量的大头,建议命名方式 主题_维(事实)_source_target ,其中的组件也物化八门,其中还涉及到外部调用(SHELL ,存储过程等),有 过滤器Filter,
类型转换器(Express),监听器(Lookup),分发器,存储过程调用 ,连接器组件(Join)等等。还有ETL中的变量和参数的使用,比较难。
有些原则:尽量使用SQL中WHERE子句,而不要使用过滤器。对大表不要使用LOOKUP,Join 组件。 数据源使用bulk 方式等等。可以看看网上的ETL 优化的原则。
MAPPING 是ETL性能和一致性的关键。
3.WORKFLOW 的管理
MAPPING完成了数据的ETL的过程,但是WORKFLOW 完成的是整合到系统的利器。
在WORKFLOW中,通常一个主题一个WORKFLOW,在整个流程可以通过时间戳设置来完成 增量抽取。同时流程的统计数据的收集,ETL状态的监控信息的收集。到最后的运维邮件的发送,或者其他SHELL 的调用。 都在这个过程中。
要高级点,WORKFLOW的回滚,断点恢复都是要考虑,实现起来挺郁闷。
4. 调度器的管理
时间窗控制的工具,ODS的时间戳的控制通过调度器来控制。 时间窗根据业务高峰期,业务特性来设计和调整。
有些ETL工具有自带的调度器,也可以通过其他语言开发封装调度器,这样更为灵活。还可以使用数据库中的JOB来完成。甚至BI端的物化视图的刷新也可以放在调度器中进行。
5.状态监控 --运维系统
转:http://www.cnblogs.com/jerryxing/archive/2013/02/20/2918250.html
以上是关于OLAP -- ODS 项目总结 -- ETL中的流程的主要内容,如果未能解决你的问题,请参考以下文章