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的热门话题分析
本实验围绕社交用户发布的文章做了详尽的分析,通过分析能得到用户群体年龄分布,性别分布,地理位置分布,以及热门话题的热度。
SaaS 模式云数据仓库必修课
本课程由阿里云开发者社区和阿里云大数据团队共同出品,是SaaS模式云原生数据仓库领导者MaxCompute核心课程。本课程由阿里云资深产品和技术专家们从概念到方法,从场景到实践,体系化的将阿里巴巴飞天大数据平台10多年的经过验证的方法与实践深入浅出的讲给开发者们。帮助大数据开发者快速了解并掌握SaaS模式的云原生的数据仓库,助力开发者学习了解先进的技术栈,并能在实际业务中敏捷的进行大数据分析,赋能企业业务。 通过本课程可以了解SaaS模式云原生数据仓库领导者MaxCompute核心功能及典型适用场景,可应用MaxCompute实现数仓搭建,快速进行大数据分析。适合大数据工程师、大数据分析师 大量数据需要处理、存储和管理,需要搭建数据仓库?学它! 没有足够人员和经验来运维大数据平台,不想自建IDC买机器,需要免运维的大数据平台?会SQL就等于会大数据?学它! 想知道大数据用得对不对,想用更少的钱得到持续演进的数仓能力?获得极致弹性的计算资源和更好的性能,以及持续保护数据安全的生产环境?学它! 想要获得灵活的分析能力,快速洞察数据规律特征?想要兼得数据湖的灵活性与数据仓库的成长性?学它! 出品人:阿里云大数据产品及研发团队专家 产品 MaxCompute 官网 https://www.aliyun.com/product/odps 
相关文章
|
6天前
|
C语言
【C语言】“分⽀与循环第一章:开启创新之门,探索无尽可能性的第一篇章“1
【C语言】“分⽀与循环第一章:开启创新之门,探索无尽可能性的第一篇章“
|
6天前
|
C语言
【C语言】“分⽀与循环第一章:开启创新之门,探索无尽可能性的第一篇章“2
【C语言】“分⽀与循环第一章:开启创新之门,探索无尽可能性的第一篇章“2
|
6天前
|
存储 XML JavaScript
Java入门高频考查基础知识5(扎实技术基础应变一切变化-45题4.2万字参考答案)
数据结构是指在计算机中组织和存储数据的方式,它建立了数据元素之间的关系,以及对这些关系施加的操作。在程序设计中,数据结构是一种非常重要的概念,它对于实现高效的数据存储、检索和操作起着关键性的作用。逻辑结构逻辑结构是数据对象中数据元素之间的逻辑关系,包括线性结构(如数组、链表)、树形结构(如二叉树、平衡树)以及图形结构等。物理结构:物理结构是数据的逻辑结构在计算机中的存储形式,包括顺序存储结构和链式存储结构等。数据操作数据操作是指在一组数据上定义的操作,包括插入、删除、查找、排序等。
62 0
|
SQL 存储 Java
不讲废话,全程硬核,处理结构化数据的终极解决方案
现代Java应用架构越来越强调数据存储和处理分离,以获得更好的可维护性、可扩展性以及可移植性,比如火热的微服务就是一种典型。这种架构通常要求业务逻辑要在Java程序中实现,而不是像传统应用架构中放在数据库中。
85 0
网络工程项目报价单应该怎么写?记住这6个步骤准没错!
网络工程项目报价单应该怎么写?记住这6个步骤准没错!
233 0
|
存储 供应链 安全
Java开发的五条安全小贴士,助你的项目更安全
Java开发的五条安全小贴士,助你的项目更安全
|
SQL 自然语言处理 关系型数据库
数据库知识点太多?作为测试掌握这些就够了【精简重点版 >直击面试>建议收藏】
数据库知识点太多?作为测试掌握这些就够了【精简重点版 >直击面试>建议收藏】
97 0
数据库知识点太多?作为测试掌握这些就够了【精简重点版 >直击面试>建议收藏】