中国移动数据仓库交流(Oracle).ppt
Telco Industry Architect Team,中国移动数据仓库交流元数据管理,理想的元数据管理,议程,Oracle元数据管理方案,现有的元数据管理的问题,关于数据的数据提供数据的上下文描述信息,元数据是什么,元数据管理的发展,5,元数据分类,经营分析系统关心的元数据,技术元数据技术元数据包含关于经营分析系统数据技术层面的信息数据源元数据ETL元数据数据仓库元数据数据集市元数据OLAP SERVER元数据前端展现元数据其它类型元数据(挖掘模型,数据质量分析结果等)业务元数据业务名称、定义、描述和别名来表示数据仓库和业务系统中的各种属性,直接供业务分析人员使用管理元数据管理元数据主要是指经营分析日常建设过程中,涉及开发、运维等管理流程的基本信息,元数据的位置分布,Metadata分析平台,专家知识,元数据管理问题1:元数据分散,数据逻辑结构索引描述物理特征控制块描述程序设计描述,源/目标描述转换规则合并描述重排序说明,源/目标标识更新频率数据逻辑描述,数据逻辑描述源/目标标识刷新调度版本更新业务/技术交叉引用别名交叉引用,物理结构描述索引描述刷新调度业务/技术交叉引用,客户标记,加前缀进行区分对公和对私客户,客户标记,01打头表示对公客户,02打头表示对私客户,无描述,客户标记,01打头表示对公客户,02打头表示对私客户,03打头表示海外客户,多个系统都包含元数据,元数据例子,客户标记,加前缀进行区分对公和对私客户,客户标记,01打头表示对公客户,02打头表示对私客户,无描述,客户标记,01打头表示对公客户,02打头表示对私客户,03打头表示海外客户,元数据问题,哪份是正确的?正在使用哪份?要使用哪份?,元数据问题,11,元数据管理问题2:元数据获取,元数据获取多种元数据的获取难度较大对元数据的解析的准确程度元数据获取的时效性,理想的元数据管理,议程,Oracle元数据管理方案,现有的元数据管理的问题,13,元数据管理主要架构,14,元数据统一存储,元数据仓库解决元数据分散和无法共享的问题元数据集中存储元数据整合和关联元数据标准化接口,理想的元数据管理,议程,Oracle元数据管理方案,现有的元数据管理的问题,16,全局的数据处理和元数据管理,广义和实时的ETL,全局的元数据管理,全局的数据质量管理,业务驱动,17,数据网管,短信网关,智能网管,文件,抽取Extract,文件,文件,清洗Clean,转换Transform,加载 Load,ETL服务器,数据仓库,ODS,狭义的ETL过程特点:1.需要独立的ETL服务器2.ECTL过程中的文件存储放大3.抽取后需要对文件做进一步清洗,处理断行、半汉字、分隔符、数据规则检查4.数据转换后,端到端的数据核查难度加大5.文件级数据稽核的难度6.慢变维对转换的影响7.ETL处理过程调度流程与仓库处理流程联动,狭义的ETL处理,18,广义的ELT过程特点:1.不需独立的ETL服务器2.不需要ETL过程中的额外文件存储3.支持全量/增量数据抽取4.支持慢变维5.无需对文件附加处理和稽核(断行等)6.不做任何转换直接加载到ODS层(与源数据相同),便于端到端的数据稽核,便于其他系统对业务系统数据访问7.ETL处理过程调度流程与仓库处理流程联动(从ODS到ST的数据转换处理过程),广义的ELT处理,19,独特之处:E-LT 体系结构高性能,在单独 ETL 服务器中转换专有引擎低劣的性能高昂的成本IBM 和 Informatica 的方式在现有 RDBMS 中转换利用资源高效高性能优势最优性能和可伸缩性管理简便、成本低廉,20,在日志中记录从 CDC 源中读取,加载从源到临时环境,检查加载前的约束条件,集成转换并移至目标,服务公开数据和转换服务,反向处理元数据,适合现有的最佳实践管理简便降低了拥有成本,反向,在日志中记录,加载,检查,集成,服务,可插拔的知识模块体系结构,CDC,数据源,临时表,错误表,目标表,WS,WS,WS,SAP/R3,Siebel,Log Miner,DB2 Journals,SQL Server 触发器,Oracle DBLink,DB2 Exp/Imp,JMS 队列,检查 MS Excel,检查 Sybase,Oracle SQL*Loader,TPump/Multiload,Type II SCD,Oracle Merge,Siebel EIM 模式,Oracle Web 服务,DB2 Web 服务,即需即用的知识模块示例,优势,独特之处:知识模块可热插拔:模块化、灵活、可扩展,21,导入元数据自动的客户化的支持40+技术平台完善元数据文档化定义数据完整性规则跨技术平台的参照完整性,Design-Time Environment,ODI Designer,Design-time Repositories,Development Servers and Applications,CRM,Legacy,ERP,Data Warehouse,Files/XML,导入/完善元数据,1,22,Oracle Data Integrator“Interface”Declarative Design,1,定义你需要什么,批量加载 变化数据捕获 增量更新 缓慢变化维,设计转换,2,23,确定转换流程使用ODI 的工具数据质量处理文件/档案管理发送/接收Email调用Web Services事件捕获创建自己的工具用来控制结构循环条件出错捕获,3,定义数据流,24,创建Scenarios编译运行的数据流版本化数据流高级的版本管理部署到生产环境,生成/部署数据流,4,25,实时监控运行进程检查执行脚本详细的运行统计信息重新启动失败的进程,5,运行监控,26,影响分析/数据关联,?,6,27,实时数据捕获基于消息和服务的集成,CDC,与发布和订阅JMS消息的软件集成保证消息传递的事务完整性大数据量的批量转换设计复杂的批量转换,混合了队列、数据库和应用使用JMS队列和主题作为源或者目标,28,实时数据捕获变化数据捕获,CDC,发布和订阅的CDC框架数据库日志触发器第三方解决方案确保多表读事务的一致性设计和生成映射选择增量数据开始捕获,29,元数据导航的数据流分析功能,显示源系统与目标系统间数据流关联和数据流向关系,元数据导航的数据流分析功能,能显示更加详细的数据对象间的映射关系,数据流分析和关联关系分析,30,元数据导航的血缘分析,能够动态地进行元数据血缘分析,下钻到数据对象通过怎样的接口和包进行数据转换,可进一步获得接口或包中,对数据字段的转换规则和映射关系的拓扑,血缘分析和影响分析,31,察看接口级别的完整元数据定义、数据字段映射关系,可进一步获得字段映射级别的细节信息,数据转换过程查询,32,业务元数据到技术元数据(端到端管理),33,对象依赖关系分析,察看数据对象级别的依赖关系、列信息、约束、引用和被引用关系、与接口和包的关联关系等多种元数据,34,业务关联关系,面向业务视角的业务对象之间关联关系描述和分析,面向技术视角的数据对象之间的关联关系描述和分析,35,一致性检查和业务规则检查,面向业务视角的业务层规则检查,面向技术视角的技术层规则检查,36,实体关联关系,自动获得实体对象间关联关系,并分析关联集合分布,37,元数据质量检查,按照业务要求,设定各种数据质量检查规则,根据设定数据检查规则,生成数据质量检查报告,38,反向工程获取元数据,使用界面反向工程获得数据源或目标数据的元数据定义,使用XML文件导入元数据定义,39,时间序列分析,获得数据对象按照时间周期变化情况,用于基于时间的波动分析,40,Oracle XML DB,Creating and Manipulating XMLType TablesIndexing XMLRegistering XML SchemaValidating XMLTransforming XML,FolderingVersioningACL Security,Oracle XML DBRepository,XMLType Tables and Views,Oracle XML DB,Oracle Database,Oracle XML DB:Features,XMLType data type,XML schema support,CLOB,Binary XML,Object relational storage,XMLType storage models,DOM fidelity,XMLIndex,XML/SQL duality,Oracle XML DB:Features,XML DB Repository,Enterprise Manager support,XMLType views,XQuery language support,XPath and XQuery rewrite,PL/SQL interface,SOAP,Web services,43,XMLType Storage Models,XMLType is an abstract data type with different storage models.Oracle XML DB provides three storage models:Structured storage(also known as object-relational storage)Binary XML storageUnstructured storage(also known as CLOB storage),Object-relational storage,CLOBstorage,Binary XMLstorage,44,XQuery ora:view,SELECT XMLQuery(ora:view(EMP_DEPARTMENTS)RETURNING CONTENT)AS EMP_DEPARTMENTS FROM DUAL;/,EMP_DEPARTMENTS-10Administration.,45,Joining Tables by Using XMLQuery,SELECT XMLQUERY(for$i in ora:view(HR,EMPLOYEES)/ROW return for$j in ora:view(HR,DEPARTMENTS)/ROW where$j/DEPARTMENT_ID eq$i/DEPARTMENT_ID return$j/DEPARTMENT_NAME,$j/LOCATION_ID RETURNING CONTENT)as XML FROM DUAL;,46,Using XMLTable Functions,SELECT xtab.poref,xtab.usr,xtab.requestorFROM purchaseorder,XMLTable(for$i in/PurchaseOrder where$i/CostCenter eq A10 return$i PASSING OBJECT_VALUE COLUMNS poref VARCHAR2(20)PATH Reference,usr VARCHAR2(20)PATH User DEFAULT Unknown,requestor VARCHAR2(20)PATH Requestor)xtab;,Oracle XML DB Repository Services,Versioning,Foldering,ACL,Hierarchical Index,48,Navigational Access,Using FTP,Using WebDAV,Using HTTP,1,2,3,49,Hierarchical Structures in the Repository,/,/home,/sys,/hr,/XDB,/acls,/log,/schemas,/po,/general,/graphics,/acls,/schemas,/schemas,/acls,root,Oracle XML DB system folders,50,Internet Access,FTP client,WebDAV client,Network,FTP server,HTTP/WebDAV server,Protocol server,Foldering,ACL security,Oracle XML DB Repository,Configuration management,51,Using Native Oracle XML DB Web Services,You write and deploy Web services that:Query the database by using SQL or XQueryAccess PL/SQL stored functions and procedures,PL/SQL,SQL,XQuery,Oracle Database,WSDL Request,WSDL,SOAP Request,SOAP Response,52,Compound Documents:Example,Oracle Database,XLINK,XINCLUDE,Chapter 1,Chapter 2,Chapter 10,Author,53,