课程简介
深入理解流存储技术的发展背景和趋势。
掌握Fluss的核心设计理念、架构和关键特性。
熟悉Fluss与流计算引擎的集成方式。
了解如何使用Fluss构建流式数据湖。
掌握基于Fluss的流分析应用开发。
了解Apache Paimon等相关技术,并比较其优劣。
目标收益
培训对象
数据工程师、流计算工程师、数据架构师、以及对新一代流存储技术感兴趣的技术人员
课程大纲
第一天:流存储技术概览与Fluss核心原理 模块 1:流数据处理背景与挑战 (上午) |
流数据的定义、特点和应用场景 传统流数据处理架构的局限性:高延迟、低可靠性、难扩展 流存储技术的发展趋势:实时化、湖仓一体化、云原生化 新一代流存储技术的关键需求:高吞吐、低延迟、强一致性、易扩展 |
模块 2:Fluss核心设计理念与架构 (上午) |
Fluss的设计目标:构建高性能、高可靠、低成本的流存储系统 Fluss的核心设计理念:Log-structured Merge Tree (LSM Tree) 的优化与改进 Fluss的整体架构:存储层、索引层、元数据层、API层 Fluss的关键组件:Write Buffer、SSTable、Compaction、WAL (Write-Ahead Log) 动手实践:分析Fluss架构图,理解各组件之间的交互关系 |
模块 3:Fluss关键特性解析 (下午) |
Fluss的高吞吐写入优化:多线程并发写入、WAL机制、零拷贝技术 Fluss的低延迟读取优化:Bloom Filter、索引技术、Compaction策略 Fluss的数据一致性保证:ACID事务、Snapshot Isolation Fluss的可扩展性设计:分片、副本、自动负载均衡 Fluss的容错性机制:数据备份、故障恢复 动手实践:讨论并设计针对特定场景的Fluss配置参数 |
模块 4:Fluss安装部署与基本使用 (下午) |
Fluss的安装部署方式:本地部署、集群部署、云端部署 Fluss的配置参数详解:存储路径、缓存大小、线程数 Fluss的基本API使用:写入数据、读取数据、删除数据 Fluss的监控与运维:日志分析、性能指标、故障诊断 动手实践:搭建Fluss本地环境,并进行简单的数据读写操作 |
第二天:Fluss与流计算引擎集成及流式数据湖构建 模块 5:Fluss与主流流计算引擎集成 (上午) |
Fluss与Apache Flink的集成:Connector开发、数据格式转换 Fluss与Apache Spark Streaming的集成:RDD转换、数据源适配 Fluss与其他流计算引擎的集成:Kafka Streams, Apache Beam 集成模式选择:根据业务需求和技术栈 动手实践:使用Flink消费Fluss中的数据并进行简单处理 |
模块 6:使用Fluss构建流式数据湖 (上午) |
流式数据湖的概念与优势:实时数据集成、低成本存储、灵活分析 基于Fluss的流式数据湖架构设计:数据摄取、数据存储、数据处理、数据分析 Fluss在流式数据湖中的角色:提供高性能、高可靠的流存储 数据湖元数据管理:Apache Hive Metastore, AWS Glue Data Catalog 数据湖安全与治理:权限控制、数据加密、数据血缘 动手实践:设计基于Fluss的流式数据湖架构,并讨论关键技术选型 |
模块 7:流式数据湖架构设计与演进 (下午) |
Lambda架构:实时与离线并存,数据一致性挑战 Kappa架构:简化架构,依赖强一致性流存储 湖仓一体架构:Delta Lake, Apache Iceberg, Apache Hudi,提供事务性更新与查询 基于Fluss的湖仓一体架构:利用Fluss作为实时数据源 动手实践:比较不同架构的优缺点,并讨论适用于特定场景的架构方案 |
模块 8:基于Fluss的流分析应用开发 (下午) |
流分析的应用场景:实时监控、异常检测、趋势预测 流分析的技术选型:CEP (Complex Event Processing), Time Series Database 使用CEP引擎分析Fluss中的数据:Apache Flink CEP, Esper 使用时序数据库存储和分析Fluss中的数据:InfluxDB, TimescaleDB 动手实践:使用Flink CEP分析Fluss中的数据并进行异常检测 |
第三天:Fluss与其他流存储技术对比及高级应用 模块 9:Apache Paimon技术解析 (上午) |
Apache Paimon的介绍:统一流式和批量处理的数据湖存储 Paimon的核心特性:Schema Evolution, Upsert/Delete, Change Data Capture (CDC) Paimon的架构设计:Catalog, Table Format, File System Paimon与Flink的集成:Streaming Sink, Source, Lookup Join 动手实践:部署Paimon环境,并体验其核心功能 |
模块 10:Fluss vs. Paimon vs. 其他流存储技术 (上午) |
Fluss、Paimon、Kafka Streams、Apache Hudi等技术的对比分析 对比维度:性能、一致性、可扩展性、易用性、社区活跃度 选择合适的流存储技术:根据业务需求和技术栈 技术选型建议:针对不同应用场景给出具体建议 |
模块 11:Fluss高级特性与调优 (下午) |
Fluss的Compaction策略优化:Tiered Compaction, Leveled Compaction Fluss的内存管理优化:Write Buffer大小、Cache策略 Fluss的IO调度优化:磁盘调度算法、IO优先级 Fluss的监控与报警:Prometheus, Grafana 性能测试与基准测试:JMH, YCSB 动手实践:对Fluss进行性能调优,并使用基准测试工具评估效果 |
模块 12:Fluss在实际场景中的应用 (下午) |
案例1:构建高吞吐的日志收集系统 案例2:构建实时风控系统 案例3:构建流式推荐系统 案例分析:技术架构、实施步骤、挑战与解决方案 Fluss的未来发展趋势:云原生、智能化、多模态 开放讨论:学员分享实际工作中的流数据处理需求,探讨如何使用Fluss解决问题 |
可选模块 (根据客户需求调整) Fluss源码分析 |
深入剖析Fluss的源码实现 理解关键组件的内部逻辑 学习如何贡献代码到Fluss社区 |
Fluss与云原生技术集成 |
在Kubernetes上部署Fluss 使用Docker容器化Fluss应用 使用服务网格管理Fluss流量 |
Fluss安全与治理高级议题 |
数据加密与访问控制 数据血缘与数据质量 符合GDPR等合规要求 |
第一天:流存储技术概览与Fluss核心原理 模块 1:流数据处理背景与挑战 (上午) 流数据的定义、特点和应用场景 传统流数据处理架构的局限性:高延迟、低可靠性、难扩展 流存储技术的发展趋势:实时化、湖仓一体化、云原生化 新一代流存储技术的关键需求:高吞吐、低延迟、强一致性、易扩展 |
模块 2:Fluss核心设计理念与架构 (上午) Fluss的设计目标:构建高性能、高可靠、低成本的流存储系统 Fluss的核心设计理念:Log-structured Merge Tree (LSM Tree) 的优化与改进 Fluss的整体架构:存储层、索引层、元数据层、API层 Fluss的关键组件:Write Buffer、SSTable、Compaction、WAL (Write-Ahead Log) 动手实践:分析Fluss架构图,理解各组件之间的交互关系 |
模块 3:Fluss关键特性解析 (下午) Fluss的高吞吐写入优化:多线程并发写入、WAL机制、零拷贝技术 Fluss的低延迟读取优化:Bloom Filter、索引技术、Compaction策略 Fluss的数据一致性保证:ACID事务、Snapshot Isolation Fluss的可扩展性设计:分片、副本、自动负载均衡 Fluss的容错性机制:数据备份、故障恢复 动手实践:讨论并设计针对特定场景的Fluss配置参数 |
模块 4:Fluss安装部署与基本使用 (下午) Fluss的安装部署方式:本地部署、集群部署、云端部署 Fluss的配置参数详解:存储路径、缓存大小、线程数 Fluss的基本API使用:写入数据、读取数据、删除数据 Fluss的监控与运维:日志分析、性能指标、故障诊断 动手实践:搭建Fluss本地环境,并进行简单的数据读写操作 |
第二天:Fluss与流计算引擎集成及流式数据湖构建 模块 5:Fluss与主流流计算引擎集成 (上午) Fluss与Apache Flink的集成:Connector开发、数据格式转换 Fluss与Apache Spark Streaming的集成:RDD转换、数据源适配 Fluss与其他流计算引擎的集成:Kafka Streams, Apache Beam 集成模式选择:根据业务需求和技术栈 动手实践:使用Flink消费Fluss中的数据并进行简单处理 |
模块 6:使用Fluss构建流式数据湖 (上午) 流式数据湖的概念与优势:实时数据集成、低成本存储、灵活分析 基于Fluss的流式数据湖架构设计:数据摄取、数据存储、数据处理、数据分析 Fluss在流式数据湖中的角色:提供高性能、高可靠的流存储 数据湖元数据管理:Apache Hive Metastore, AWS Glue Data Catalog 数据湖安全与治理:权限控制、数据加密、数据血缘 动手实践:设计基于Fluss的流式数据湖架构,并讨论关键技术选型 |
模块 7:流式数据湖架构设计与演进 (下午) Lambda架构:实时与离线并存,数据一致性挑战 Kappa架构:简化架构,依赖强一致性流存储 湖仓一体架构:Delta Lake, Apache Iceberg, Apache Hudi,提供事务性更新与查询 基于Fluss的湖仓一体架构:利用Fluss作为实时数据源 动手实践:比较不同架构的优缺点,并讨论适用于特定场景的架构方案 |
模块 8:基于Fluss的流分析应用开发 (下午) 流分析的应用场景:实时监控、异常检测、趋势预测 流分析的技术选型:CEP (Complex Event Processing), Time Series Database 使用CEP引擎分析Fluss中的数据:Apache Flink CEP, Esper 使用时序数据库存储和分析Fluss中的数据:InfluxDB, TimescaleDB 动手实践:使用Flink CEP分析Fluss中的数据并进行异常检测 |
第三天:Fluss与其他流存储技术对比及高级应用 模块 9:Apache Paimon技术解析 (上午) Apache Paimon的介绍:统一流式和批量处理的数据湖存储 Paimon的核心特性:Schema Evolution, Upsert/Delete, Change Data Capture (CDC) Paimon的架构设计:Catalog, Table Format, File System Paimon与Flink的集成:Streaming Sink, Source, Lookup Join 动手实践:部署Paimon环境,并体验其核心功能 |
模块 10:Fluss vs. Paimon vs. 其他流存储技术 (上午) Fluss、Paimon、Kafka Streams、Apache Hudi等技术的对比分析 对比维度:性能、一致性、可扩展性、易用性、社区活跃度 选择合适的流存储技术:根据业务需求和技术栈 技术选型建议:针对不同应用场景给出具体建议 |
模块 11:Fluss高级特性与调优 (下午) Fluss的Compaction策略优化:Tiered Compaction, Leveled Compaction Fluss的内存管理优化:Write Buffer大小、Cache策略 Fluss的IO调度优化:磁盘调度算法、IO优先级 Fluss的监控与报警:Prometheus, Grafana 性能测试与基准测试:JMH, YCSB 动手实践:对Fluss进行性能调优,并使用基准测试工具评估效果 |
模块 12:Fluss在实际场景中的应用 (下午) 案例1:构建高吞吐的日志收集系统 案例2:构建实时风控系统 案例3:构建流式推荐系统 案例分析:技术架构、实施步骤、挑战与解决方案 Fluss的未来发展趋势:云原生、智能化、多模态 开放讨论:学员分享实际工作中的流数据处理需求,探讨如何使用Fluss解决问题 |
可选模块 (根据客户需求调整) Fluss源码分析 深入剖析Fluss的源码实现 理解关键组件的内部逻辑 学习如何贡献代码到Fluss社区 |
Fluss与云原生技术集成 在Kubernetes上部署Fluss 使用Docker容器化Fluss应用 使用服务网格管理Fluss流量 |
Fluss安全与治理高级议题 数据加密与访问控制 数据血缘与数据质量 符合GDPR等合规要求 |