学习笔记
继续巩固蔡老师的课程知识点~
Index
Workflow设计模式
工作流系统(Workflow System)是将多个不同的处理模块连接在一起,通过有向无环图(Directed Acyclic Graph/DAG)得到所需结果的系统。
4种 Workflow System的设计模式
发布/订阅模式(Publish/Subscribe Pattern)
这是在流数据处理中非常流行的设计模式,也被称为 Pub/Sub。
消息与消息队列
发布/订阅模式基础概念
发布/订阅模式允许消息发送方异步发送消息给系统中的不同组件,无需知道接收方是谁。发送方称为发布者(Publisher),接收方称为订阅者(Subscriber)。
优点
缺点
适用场景
CAP定理
简单来说,CAP定理证明了以下三属性:
衍生的系统
放弃了P属性的Kafka
Kafka0.8版本引入了Replication,通过将数据复制到不同节点增强数据的持久性(Durability)和可用性(Availability)。所有数据日志存储在同一个数据中心,网络分区错误可能性小。
在Kafka数据副本(Data Replication)设计中,通过Zookeeper选举出领导者节点(Leader),负责维护同步数据副本(In-sync-replica)。数据写入在领导者节点记录,通知副本存储并回复用户写入成功。如果领导者节点挂了,Zookeeper会重新选举健康节点作为新的领导者节点。
Lambda架构
Lambda架构帮助开发人员构建大规模分布式数据处理系统,具有灵活性和可扩展性,对硬件故障和人为失误有很好的容错性。
Lambda架构由三层系统组成:批处理层(Batch Layer)、速度处理层(Speed Layer)、服务层(Serving Layer)。
不同的系统层职责
案例分析
Kappa架构
Kappa架构因Lambda架构维护复杂而存在,因为Lambda架构有两个完全不同的分布式系统(批处理和流处理),语法不同但逻辑需相同。
Kappa架构改进了某一层的架构,使其具有另一层的特性。
以Apache Kafka流处理平台为例:
由于Apache Kafka具有永久保存数据日志的功能,可以删除批处理层,仅保留流处理层。
步骤
其架构如下图所示:
以上就是BigData | 大数据处理基本功(下)的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号