大数据管理与应用概论 课件 4.1 离线数据获取方法_第1页
大数据管理与应用概论 课件 4.1 离线数据获取方法_第2页
大数据管理与应用概论 课件 4.1 离线数据获取方法_第3页
大数据管理与应用概论 课件 4.1 离线数据获取方法_第4页
大数据管理与应用概论 课件 4.1 离线数据获取方法_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

4.1离散数据获取方法离线数据获取方法概述离线数据的种类和来源内部信息包括各种业务数据和各类文档数据,企业使用关系型数据库MySQL和Oracle等来存储数据。外部信息包括各类法律法规、市场信息、来自客户端的数据,企业通常使用非关系型数据库存储这些数据。企业的内部信息企业的外部信息离线数据获取方法概述离线数据来源广泛、数据量庞大,需要进行一系列的清洗筛选工作,这个过程就是ETL过程,使用的工具就是ETL工具,经过净化后的数据被加载到数据仓库中,便于后续提取分析。数据仓库在计算机系统中存在着两类的数据处理工作,分别是联机事务处理(OLTP)和联机分析处理(OLAP),这两种数据处理工作之间的差异,使得传统的数据库技术无法同时满足这两类数据的处理要求,因此数据仓库技术应运而生。联机事务处理联机分析处理定义指对数据库联机的日常操作,通常是对一个或一组记录的查询和修改指对数据的查询和分析操作,通常是对海量的历史数据进行查询和分析应用场景例如火车售票系统、银行通存通兑系统、税务征收管理系统等例如金融风险预测预警系统、股市操盘监控系统、证券违规分析系统等数据处理类型操作型数据处理分析型数据处理用途用于企业的日常事务处理工作用于企业的管理工作特点对数据的安全性、完整性、事务的一致性、事务吞吐量、数据的备份和恢复等要求很高要访问的数据量非常大,所以需要做的查询和分析的操作也十分复杂数据仓库数据仓库是作为决策支持系统服务基础的分析数据库,用来存放大容量的只读数据,为制定决策提供所需的信息。数据仓库有如下四个基本特征:面向主题的主题是指用户使用数据仓库进行决策时所关心的重点领域,数据仓库中的数据是按照一定的主题进行组织的。相对稳定的数据仓库的数据主要用于决策分析,数据进入数据仓库以后,基本会被长期保留,通常只需要定期的加载、刷新。随时间变化的

数据仓库大多关注的是历史数据,其中很多数据是批量载入的,即定期接收新的数据内容,这使得数据仓库中的数据总是拥有时间维度。集成的

数据仓库中的数据是对原有分散的数据库数据在抽取、清理的基础上经过系统加工、汇总和整理得到的。数据仓库系统数据仓库系统以数据仓库为核心,如图所示,其体系结构分为数据源层、数据存储与管理层、OLAP服务器层和前端分析工具层。数据从数据源到最终呈现给用户的分析结果,中间过程有:1、抽取源数据并对其转换、清洗;2、建立数据仓库;3、针对分析主题建立数据集市;4、针对业务进行数据挖掘,前端展现。外部数据业务数据文档资料元数据数据仓库数据集市OLAP服务数据挖掘数据分析数据报表数据源数据存储与管理抽取工具OLAP服务器前端分析工具数据仓库系统数据集市是从数据仓库中划分出来的,是针对某一方面的数据而设计的数据仓库,可以看作数据仓库的某个子集。数据仓库与数据集市的区别:数据仓库数据集市体量企业级,规模较大部门级,规模较小开发周期开发周期短、速度快开发周期长、速度慢数据结构规范化模式星型模式数据粒度细粗数据库连接技术技术主要特点ODBC即开放式数据库互连(OpenDatabaseConnectivity),核心是SQL语句,客户可以使用ODBC从底层设置和访问数据库,缺点是无法应用于非关系型数据库JDBC即JAVA数据库连接(JavaDataBaseConnectivity),具有良好的可移植性。JDBC的缺点是数据源比较难更改,因为其结构中包含了不同厂家的产品,而且使用JDBC访问数据记录受限OLEDB即数据库链接和嵌入对象(ObjectLinkingandEmbeddingDataBase),是一种基于COM思想的、面向对象的技术标准,为用户访问各种数据源提供了一种统一的数据访问接口ADO即ActiveX数据对象(ActiveXDataObjects),是一种基于COM的数据库应用程序接口。基于OLEDB之上的访问接口,继承了OLEDB的优点DAO即数据库访问对象(DataAccessObject),支持多种类型的数据访问,可以访问从文本文件到大型后台数据库等多种格式的数据。DAO最鲜明特点就是针对MICROSOFTJET数据库的操作非常方便Hibernate即开放源代码的对象关系映射框架,是一种基于JDBC的开源的持久化框架,优势是消除了代码的映射规则,大大提高了编程的简易性和可读性,但是性能较差,大型互联网系统往往需要优化SQL,Hibernate无法根据不同的条件组装不同的SQL数据库图形界面操作工具技术主要特点DBeaver免费且开源,虽然免费,但功能强大,基于JAVA,采用Eclipse框架开发,可以连接诸如MySQL、Oracle、HBase等目前各种流行的数据库,缺点是其驱动程序需要手动添加NavicatPremium易学易用,且界面设计简洁干净,符合直觉化的效果,用户体验良好,对新手良好。功能多样,满足各种开发人员的需求。支持通过SSH通道和HTTP通道连接数据库,支持各种格式的数据迁移SQLyog快速简洁,基于C++和MySQLAPI编程,操作界面相似于微软SQLServer,支持代码输入自动填充,支持表名过滤,快速找表,对于有许多表的情况下非常实用。但其支持的数据库不多MySQLWorkbench是一个统一的可视化开发和管理平台,是MySQL官方提供的工具,功能强大,可跨平台操作,且开源免费。它包含了ER模型,可以用于创建复杂的数据建模phpMyAdmin基于PHP,架构方式是Web-BaseWeb,用户可以使用web接口管理MySQL数据库,在处理大量资料的汇入及汇出更为方便。phpMyAdmin的一大优势是:由于phpMyAdmin和其他PHP程式一样可以在网页服务器上执行,所以允许用户可以像使用PHP程式产生网页一样远端管理数据库MySQL-Front小巧灵活,相容性很高,其内部使用了很多WindowsAPI,确保兼容未来的Windows版本,支持多种运行环境,有中文界面,可直接拖拽和复制粘贴,适合初学者。但客户端不能处理"创建存储过程/创建函数/创建视图/创建事件"数据仓库与数据库的区别比较项目传统数据库数据仓库总体特征围绕高效的事务处理展开以提供决策支持为目标存储内容以当前数据为主主要是历史,存档,归纳的数据面向用户普通的业务处理人员高级的决策管理人员功能目标面向业务操作,注重实时性面向主题,注重分析功能汇总情况原始数据,不做汇总多层次汇总,数据细节有损失数据结构数据结构化程度高,适合运算操作数据结构化程度适中视图情况视图简单,内容详细多维视图,概括性强访问特征读取/写入并重以读取为主,较少写入数据规模数据规模较小数据规模较大数据访问量每次事务处理访问数据较少每次分析处理访问大量数据响应要求要求很高的实时性对实时性要求不高ETL过程ETL过程是指任何以数据为中心的项目的集成组件。负责完成源数据向数据仓库导入的过程,是数据仓库项目中最重要的步骤,通常要占用整个项目70%的时间。ETL过程可大致描述为从一个或多个数据库中读取数据;将抽取后的数据由一种数据类型转换为另一种数据类型,以便存储在数据仓库或其他数据库中;将数据存入数据仓库中。打包应用遗留系统数据源其他数据源数据抽取数据转换数据清洗数据加载数据仓库数据集市ETL过程——数据抽取数据抽取是从不同的数据源中通过采用不同的方法抽取数据的一个过程。根据数据来源和所要抽取数据的结构类型的不同,可划分为三类数据抽取情形:1、文件型数据抽取方式:数据是非结构化数据与半结构化数据,将这些数据导入指定的数据库,再从指定的文档数据库中完成抽取。2、同构同质抽取方式:数据源与目标数据库系统同构同质,可以直接建立数据库连接,利用结构化查询语句访问,实现数据迁移。3、同构异质抽取方式:若数据源与目标数据库系统同构异质,数据源可以通过ODBC的方式建立数据库连接。ETL过程——数据转换由于从数据源中抽取得到的数据格式与目标数据格式存在不一致的情况,需要对数据进行转换,使异构的数据格式统一起来。转换过程的任务有以下三种:1、不一致数据的合并:将不同业务系统中相同类型的数据进行整合。比如同一个商品在不同的业务系统中的商品编码不同,抽取后该商品会统一转换成一个编码。2、数据粒度的转换:数据仓库中数据主要用于分析,存储的数据细化程度低,粒度较大。而业务系统中存储的数据细化程度高。因此需按照数据仓库粒度进行聚合。3、业务规则的计算:不同的业务系统有不同的数据指标,但数据指标并不能直接使用,需要在ETL中经过计算并存储到数据仓库后,以业务规则的方式供分析和使用。ETL过程——数据清洗数据清洗:指数据在加载到数据仓库之前,其中可能会掺杂一些问题数据,因此数据清洗是一个必要且不断反复的过程。使用ETL工具实现数据清洗的三种主要方式如下:1、实现数据表属性一致化,对于不同表的属性名,根据其含义重新定义其在数据库中的名字,并以转换规则的形式存放在数据库中。2、数据缩减,如果数据量很大,处理就非常耗时。那么可以通过数据缩减,大幅度缩小数据量,以提高后续数据处理的效率。3、通过预先设定数据处理的可视化功能结点,以可视化的方式快速有效地完成数据清洗和数据转换过程。ETL过程——数据加载数据加载是将经过转换和清洗后的数据加载到目标数据仓库中。当目标数据仓库为关系数据库时,主要有两种加载方式:通过SQL语句直接进行插入(insert)、删除(delete)和更新(update)操作。另一种是采用批量加载的方法,在装入大量数据时效率较高。具体使用哪种数据加载方式要取决于所执行操作的类型和需要装入数据量的多少以及业务系统的需要。ETL工具ETL工具:在获取并向数据仓库加载数据量、种类多的数据时,需使用的专业的数据抽取、转换和加载工具的一种统称。ETL工具——DataXDataX是阿里巴巴集团内被广泛使用的离线数据同步工具,可以实现包括MySQL、SQLServer、Oracle、Hive、HBase等各种异构数据源之间高效的数据同步功能。DataX作为离线数据同步工具,尤其是当其数据量很大或表非常多时,适合使用DataX实现快速迁移。DataX有较为全面的插件体系,主流的RDBMS、NOSQL、大数据计算系统等都已接入。ETL工具——DataXDataX的组成结构:1、Job模块:DataX完成单个数据同步的作业,称之为Job。Job模块是单个作业的中枢管理节点,承担了数据清理、子任务切分等功能。2、Task模块:Task模块是DataX作业的最小单元。Job模块将单个作业切分成多个小的Task,以便于并发执行,每一个子Task都负责一部分数据的同步工作。3、TaskGroup模块:再切分成多个子Task之后,Job模块将调用调度器(Scheduler),根据配置的并发数据量,将拆分成的Task进行重新组合,组装成为TaskGroup模块。4、Storage模块:Reader和Writer插件通过Storage模块交换数据。ETL工具——InformaticaPowerCenterInformaticaPowerCenter简称Infa,是Informatica公司开发的世界级的企业数据集成平台,支持各种数据源的数据抽取、转换、加载。Infa能够方便地从异构数据源中抽取数据,用来建立、部署、管理企业的数据仓库。企业通过Infa在业务数据和数据仓库间进行ETL操作。ETL工具——InformaticaPowerCenterInformaticaPowerCenter架构主要由客户端(Informatica)组件和服务端(PowerCenter)组件构成。Informatica包括五个组件:设计者(Designer);工作流管理员(WorkflowManager);工作流监控者(WorkflowMonitor);知识库管理员(RepositoryManager);管理控制台(AdministratorConsole)。PowerCenter包括三个组件:信息服务(InformaticaService)集成服务(IntegrationService)知识库服务(RepositoryService)ETL工具——KettleKettle

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论