ETL 学习

【Draft】本文未完成

概念篇

一套数据库系统,做好 ETL Pipeline,大框架上有这几个模块需要关注:

  1. Data Ingestion
  2. Data Transformation
  3. Orchestration

Ingestion 涉及到感知提取外部数据。可以和第三方工具配合。

Transformation 涉及到将数据做什么变换。

Orchestration 则涉及到全流程的管理,是协调和自动化数据管道中各个步骤的过程,要确保每个步骤在正确的时间、正确的顺序和正确的条件下运行。可以基于第三方数据平台实现,如 AirFlow。

工具篇

整个Pipeline的处理,有 NiFi 这类平台性质的工具,它具备非常丰富的数据 Pipeline 处理能力,是一种可视化拖拽数据流编排,低代码 ETL 管道工具。

对一个企业来说,ETL 并不一定需要在 OLAP 数据库中完成,它可以在外部平台实现。但是,如果 OLAP 数据库能力足够,使用数据库完成 ETL 会更加简单可靠。

举个类比(便于理解)

• NiFi 就像一条聪明的"物流输送线",把数据从一个地方搬到另一个地方,同时支持中途清洗、拆包、改名、筛选。

• Flink 像一台实时工厂机器,专门对数据"加工计算、复杂聚合、联动分析"。

• Kafka Streams 像一个"迷你计算器",嵌在你写的 Java 服务里快速做点轻量处理。

• Spark 像一个强大的"大数据分析工厂",适合集中计算历史数据与批处理任务。

相关推荐
恰薯条的屑海鸥42 分钟前
零基础在实践中学习网络安全-皮卡丘靶场(第十六期-SSRF模块)
数据库·学习·安全·web安全·渗透测试·网络安全学习
喜欢吃燃面1 小时前
C++刷题:日期模拟(1)
c++·学习·算法
2301_797604242 小时前
学习记录:DAY32
学习
蓝婷儿3 小时前
6个月Python学习计划 Day 16 - 面向对象编程(OOP)基础
开发语言·python·学习
叶子2024223 小时前
学习使用YOLO的predict函数使用
人工智能·学习·yolo
jackson凌3 小时前
【Java学习笔记】SringBuffer类(重点)
java·笔记·学习
黑客老李5 小时前
JavaSec | SpringAOP 链学习分析
java·运维·服务器·开发语言·学习·apache·memcached
海的诗篇_5 小时前
移除元素-JavaScript【算法学习day.04】
javascript·学习·算法
傍晚冰川6 小时前
FreeRTOS任务调度过程vTaskStartScheduler()&任务设计和划分
开发语言·笔记·stm32·单片机·嵌入式硬件·学习
月初,7 小时前
MongoDB学习和应用(高效的非关系型数据库)
学习·mongodb·nosql