整体技术流程-数据入库(ETL)|学习笔记

简介: 快速学习整体技术流程-数据入库(ETL)

开发者学堂课程【大数据分析之企业级网站流量运营分析系统开发实战(第一阶段)整体技术流程-数据入库(ETL)】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址https://developer.aliyun.com/learning/course/693/detail/12165


整体技术流程-数据入库(ETL)


内容简介

一、数据入库

二、数据入库的技术

三、总结

通过之前的采集和预处理,我们已经将数据变成了格式统一,干净规整的结构化数据,这时就可以针对这些结构化数据开展分析。

本节内容我们将学习数据入库,我们要重点这里的库是指什么库以及入库的本质是为了什么以及当中的专业说法 ETL 是什么含义。


一、数据入库

预处理完的结构化数据通常会导入到 Hive 数据仓库中,建立相应的库和表与之映射关联。这样后续就可以使用 Hive SQL  针对数据进行分析。

因此这里所说的入库是把数据加进面向分析的数据仓库,而不是数据库。

因项目中数据格式比较清晰简明,可以直接 load 进入数据仓库。

实际中,入库过程有个更加专业的叫法— ETL. ETL 是将业务系统的数据经过抽取,清洗转换之后加载到数据仓库的过程。目的是将企业中的分散、零乱、标准不统一的数据整合到一起,为企业的决策提供分析依据。

ETL 的设计分三部分:数据抽取.数据的清洗转换、数据的加载。在设计ETL的时候我们”也是从这三部分出发。数据的抽取是从各个不同的数据源抽取到 ODS(Operational DataStore, 操作型数据存储)中,这个过程也可以做一些数据的清洗和转换, 在抽取的过程中需要挑选不同的抽取方法,尽可能的提高ETL的运行效率。ETL 三个部分中,花费时间最长的是“T”(Transform.清冼、转换)的部分,一般情况下这部分工作量是整个 ETL 的2/3.数据的加载一般在数据清洗完了之后直接写入 D (Data Warehousing,数据仓库)中去。

image.png

如图,数据仓库中间层用于开展数据分析,英文为 DW,中文为数据仓库层(数据仓库本身不生产数据,也不消费数据,数据来自不同的数据源,由角色应用来使用),下方为不同的数据源,有关系型数据库 ROBMS,有网站日志,爬虫等。要开展分析时要在数据仓库中确定一个主题,再基于主题去寻找数据。

如果主题所需要的数据单一,可以直接使用数据,但通常情况下主题需要的数据是各个数据源,这时候如果直接应用他们之间可能会存在格式,单位的差异性。

因此为了分析方便,我们需要把各个不同的数据放至 ODS (源数据层),经过 ODS 的分析后需要导入进数据仓库主题下,再导入过程中我们所进行的转化操作,编码统一操作等称为 ETL。ETL 的本质就是经过抽取,转换和加载,把数据放至仓库中的过程。


二、数据入库的技术(针对 ETL)

手动 shell Hadoop hivesql

自动:sqoop kettle


三、小结

库:面向分析的数据仓库,也就是 Apache Hive

入库的本质:经过 ETL 抽取,转换,加载把各个不同的数据源集中加载到数仓的分析主题下面。

相关文章
|
XML 存储 网络协议
kettle开发篇-Http client
kettle开发篇-Http client
1626 0
|
20天前
|
存储 人工智能 监控
AI测试有没有一套标准流程?
AI测试不是简单验证模型输出,而是围绕业务目标、数据样本、模型效果、系统链路、风险边界、线上监控与版本回归构建的新型质量保障体系。它突破传统确定性测试范式,强调评估+验证+治理三位一体,推动测试从“功能正确”迈向“业务可用、稳定可控、持续可交付”。
|
21天前
|
存储 人工智能 安全
OpenAI 悄悄重写 Agents SDK:生产级 Agent 底座来了,LangChain 们还怎么活?
OpenAI重磅发布全新Agents SDK:解耦“大脑”与“手脚”,内置harness控制流、多厂商沙盒、Manifest配置、快照恢复等生产级能力。900页保单100%提取、半数PR由Agent生成,LangChain时代正加速终结。
|
Linux 网络安全
linux免密登录报错 Bad owner or permissions on /etc/ssh/ssh_config.d/05-redhat.conf
linux免密登录报错 Bad owner or permissions on /etc/ssh/ssh_config.d/05-redhat.conf
972 1
|
8月前
|
SQL 人工智能 供应链
《AI协同供应链调度困局:从需求拆解到落地增效的全流程实践》
本文记录某制造业供应链调度系统升级的AI协同开发实践:面对旧系统“信息流滞后、决策流固化、响应流迟缓”困境及10周重构需求,团队构建“Cursor+Tabnine+Diagrams AI等”工具矩阵,以AI承接规则性工作、人聚焦核心决策。需求拆解3天完成(效率提130%),架构设计2天规避数据迁移风险,编码5天压缩重复工作,联调2小时定位性能瓶颈。项目提前3周落地,调度响应延迟2.8秒(优于目标30%),供应链成本降8%,订单延误率从15%降至3%。核心认知为AI是“认知延伸器”,需“AI生成+人工校验”闭环,工具矩阵最大化协同价值,同时需避免AI主导需求与核心编码。
500 8
|
Linux 网络安全 开发工具
码农日常生活之Git & Gitlab & Gitk
本文是关于Git和GitLab的配置使用教程,包括基础设置、日常命令操作以及图形工具的使用。
251 2
|
机器学习/深度学习 运维 监控
基于特征子空间的高维异常检测:一种高效且可解释的方法
本文探讨了一种替代传统单一检测器的方法,通过构建多个专注于特征子集(子空间)的检测器系统,来提高异常检测的准确性和效率。文章详细介绍了子空间方法在处理高维数据时的优势,包括缓解维度灾难、提高异常检测的可解释性和计算效率。同时,文中还讨论了子空间的选择策略,如基于领域知识、相关性、随机选择等,并介绍了PyOD工具包中实现子空间异常检测的具体方法。通过这些技术,异常检测系统能够更有效地识别数据中的异常记录,尤其是在特征数量众多的情况下。
566 9
基于特征子空间的高维异常检测:一种高效且可解释的方法
|
人工智能 物联网 测试技术
以小博大,微软开源27亿参数模型Phi-2,魔搭最佳实践来啦!
近日,微软公布了在 Microsoft Ignite 2023大会上宣布开源的 Phi-2 模型的更多细节,“打破传统语言模型缩放定律,可PK比自己大25倍的模型”、“以小博大”等评价,让Phi-2一时间在开源社区中引发关注。
|
缓存 Kubernetes 网络协议
深入解析微服务架构中的服务发现机制
深入解析微服务架构中的服务发现机制
460 0
|
机器学习/深度学习 Python
ReLU
本文探讨了高等数学中ReLU(修正线性单元)在神经网络的应用。ReLU函数定义为$f(x) = \max(0, x)$,其导数为$1$($x \geq 0$)或$0$($x < 0$)。适用于除二分类问题外的其他问题。Python代码展示了ReLU及其导数的图形绘制。
683 1