ETL都没弄懂,谈什么大数据 ?我用一分钟给你整明白

简介: 在现代的企业里,每个部门都是一个独立的业务条线,由于各部门各自为政,信息的不流通,就形成了“信息孤岛”的尴尬局面,给企业的数据挖掘、报表开发等带来非常大的困难。数据仓库概念的诞生就是为了解决这个问题的,通过一定的技术把各部门的数据从原来的数据中抽取出来,进行加工与集成,统一与综合之后再进入数据仓库,为后续的DSS(决策支持系统)和BI(商务智能)等深度开发奠定基础。而把数据源进行加工与集成的这个过程,就是ETL。

ETL背景
在现代的企业里,每个部门都是一个独立的业务条线,由于各部门各自为政,信息的不流通,就形成了“信息孤岛”的尴尬局面,给企业的数据挖掘、报表开发等带来非常大的困难。数据仓库概念的诞生就是为了解决这个问题的,通过一定的技术把各部门的数据从原来的数据中抽取出来,进行加工与集成,统一与综合之后再进入数据仓库,为后续的DSS(决策支持系统)和BI(商务智能)等深度开发奠定基础。而把数据源进行加工与集成的这个过程,就是ETL。
image.png

ETL概念
ETL的含义是将业务系统的数据经过抽取(Extract)、清洗转换(Transform)之后加载(Load)到数据仓库的过程,目的是为了将企业中零散的、不标准的、不统一的数据整合起来,并输出标准和统一的数据源,为企业决策提供数据依据。实现ETL的方法主要有两种,一种是通过编程语言去实现,但是门槛较高,一般人不易掌握。另一种是借助ETL工具去实现,这种方式比较灵活,而且图形化的界面操作起来比较简单,现在大部分有数据仓库需求的企业都是采用这种方式。
image.png

下面以智分析的自助ETL功能为案例模型,对数据抽取、数据转换、数据加载进行详细的介绍。
数据抽取
1、 确定数据源:文本数据源,kafka数据源,关系数据源,示例数据源,数据集
image.png

2、 定义数据接口:对每个源文件及系统的每个字段进行详细说明
image.png

3、 确定数据抽取的办法:是主动抽取还是由源系统推送;是增量抽取还是全量抽取;是按照每日抽取还是按照每月抽取。
数据转换
• 数据采样:通过随机、加权、分层、下采样四种方式对数据源进行抽取
• 数据拆分:将原本样本集按照训练集和测试集的方式拆分成2个子集
• 数据过滤:按照用户需求,通过写SQL语句,对数据按照过滤表达式进行筛选
• 数据合并:将两张表按行或列的方式进行合并
• 数据关联:通过内连接、左右连接、全连接的方式对两个表格进行关联
• 空值处理、去除重复值、聚合…
image.png

数据加载
将清洗和转换好的数据直接加载到数据库对应表中,如果是全量方式则采用覆盖的方式,如果是增量则选择追加的方式。
image.png

ETL工具选择
1、 智分析是由smartbi公司开发的云端SaaS平台,包含了强大的ETL功能,以工作流的形式实现为库表提取数据模型的语义,通过易于操作的可视化工具,将数据加工成具备语义一致性与完整性的数据模型,通过封装ETL算法,将技术分离,可以实现业务人员进行自助ETL操作。
2、 Kettle是一款国外免费开源的、可视化的、功能强大的ETL工具,可以在Windows、Linux、Unix上运行,数据抽取高效稳定。但是也有不少缺点,例如打开时速度慢、性能较差、存在着不少无法解决的bug等其他问题,给用户的体验并不是十分的完美。
3、 Datastage是一款非常专业的ETL处理工具,为整个 ETL 过程提供了一个图形化的开发环境,它是一套专门对多种操作数据源的数据抽取、转换和维护过程进行简化和自动化,并将其输入数据集或数据仓库的集成工具。但是价格比较昂贵,企业版的花费每月需好几万的人民币。
4、 Informatica与Datastage旗鼓相当,也是一款专业的商业ETL处理工具,依靠图形化的操作界面,无需编程语言便可以完成ETL过程的操作,虽然价格比Datastage略低,但要部署的话也需要不少的预算。
ETL的意义
在当今社会分秒必争的商业环境里,ETL技术可以大大增强大数据的处理速度,为商业决策赢得更多的宝贵时间,同时也为数据仓库的建立奠定了良好的基础。通常在进行数据分析时会用到BI与ETL这两个工具,但是市面上大部分的BI工具都不具有ETL的功能,而智分析则打破了这个局限,以云端SaaS的BI为基础,推出自助ETL的功能,旨在降低工具操作的复杂度,提供人人都是数据分析师的自助式数据探索工具,让业务人员可以快速挖掘数据中蕴藏的价值,最终实现商业价值的快速提升。

相关实践学习
基于MaxCompute的热门话题分析
Apsara Clouder大数据专项技能认证配套课程:基于MaxCompute的热门话题分析
相关文章
|
数据采集 SQL 分布式计算
数据处理 、大数据、数据抽取 ETL 工具 DataX 、Kettle、Sqoop
数据处理 、大数据、数据抽取 ETL 工具 DataX 、Kettle、Sqoop
2928 0
|
存储 SQL 消息中间件
大数据生态圈常用组件(一):数据库、查询引擎、ETL工具、调度工具等
大数据生态圈常用组件(一):数据库、查询引擎、ETL工具、调度工具等
|
7月前
|
数据采集 SQL 监控
ETL还是ELT,大数据处理怎么选更靠谱?
在数据处理中,ETL(抽取、转换、加载)与ELT(抽取、加载、转换)是两种核心流程。ETL强调在数据入库前完成清洗和转换,适合质量要求高、转换复杂的场景;而ELT则先将原始数据快速入库,再利用现代数仓的计算能力进行转换,更适合大数据和实时分析需求。选择哪种方式,需根据数据量、转换复杂度、系统资源及业务需求综合判断。
|
分布式计算 大数据 BI
ClickHouse与大数据生态整合:从ETL到BI报表
【10月更文挑战第27天】在这个数据驱动的时代,企业越来越依赖于数据来做出关键决策。而高效的数据处理和分析能力则是支撑这一需求的基础。作为一位数据工程师,我有幸参与到一个项目中,该项目旨在利用ClickHouse与Hadoop、Spark、Flink等大数据处理框架的整合,构建一个从数据提取(Extract)、转换(Transform)、加载(Load)到最终生成商业智能(BI)报表的全流程解决方案。以下是我在这个项目中的经验和思考。
645 1
|
数据采集 监控 大数据
大数据中的ETL过程详解
【8月更文挑战第25天】ETL过程在大数据中扮演着至关重要的角色。通过合理设计和优化ETL过程,企业可以高效地整合和利用海量数据资源,为数据分析和决策提供坚实的基础。同时,随着技术的不断进步和发展,ETL过程也将不断演进和创新,以更好地满足企业的数据需求。
1195 3
|
SQL XML JSON
大数据ETL开发之图解Kettle工具(入门到精通)
ETL (Extract-Transform-Load 的缩写,即数据抽取、转换、装载的过程),对于企业或行业应用来说,我们经常会遇到各种数据的处理,转换,迁移,所以了解并掌握一种ETL工具的使用,必不可少。
7444 0
大数据ETL开发之图解Kettle工具(入门到精通)
|
关系型数据库 MySQL 大数据
程序员小sister的烦恼_快速上手大数据ETL神器Kettle(xls导入mysql)
程序员小sister的烦恼_快速上手大数据ETL神器Kettle(xls导入mysql)
237 0
|
SQL 存储 大数据
手把手教你大数据离线综合实战 ETL+Hive+Mysql+Spark
手把手教你大数据离线综合实战 ETL+Hive+Mysql+Spark
601 0
|
数据采集 存储 大数据
大数据ETL简介
大数据ETL简介
519 0
|
XML JSON 大数据
大数据ETL开发之图解Kettle工具
大数据ETL开发之图解Kettle工具
463 0