大数据架构设计理论与实践 - 精华复习笔记

一、Lambda架构深度解析

1. Lambda架构核心思想

Lambda架构是一种处理大数据的混合架构模式,通过结合批处理层和速度层来实现实时和批量数据处理。

数据源
批处理层
速度层
主数据集
批处理视图
实时视图
服务层
查询结果

2. Lambda架构优缺点分析

优点:
  1. 容错性好:通过批处理层重新计算实现容错
  2. 查询灵活度高:支持对任意数据的临时查询
  3. 易伸缩性:各层均为分布式系统,可水平扩展
  4. 易扩展性:添加新视图只需增加新函数
缺点:
  1. 编码开销大:需要为同一业务逻辑实现两套代码
  2. 重新训练成本高:离线训练对实时场景帮助有限
  3. 部署迁移复杂:架构复杂度高

3. 为什么选择Lambda架构?

相比传统Hadoop框架仅支持离线批处理,Lambda架构能同时处理:

  • 离线数据分析(批处理层)
  • 实时数据处理(速度层)

考点提示:考试中常考察Lambda架构与传统架构的对比,重点理解其混合处理能力。


二、Web系统架构组件识别

1. 常见架构组件映射

架构位置技术选型功能描述
负载均衡LVSLinux虚拟服务器,实现四层负载均衡
传输协议HTTP/HTTPS应用层协议,保证数据传输安全
服务调用DUBBO高性能RPC框架,用于微服务间调用
任务调度QuartzJava作业调度框架
搜索引擎ES ClientElasticsearch客户端
文档数据库MongoDBNoSQL数据库,存储非结构化数据

2. 微服务架构关键点

  • 高并发支持:通过服务拆分和独立部署实现
  • 服务治理:使用DUBBO等RPC框架实现服务注册与发现
  • 数据存储:根据数据特性选择合适的存储方案

考点提示:题目常考察各组件在架构中的位置和作用,需要理解不同技术的适用场景。


三、Web系统优化技术栈

1. 负载均衡技术

  • 实现方式:软件级(HAProxy)和硬件级
  • 核心作用:分流减压,提高系统可用性

2. 缓存技术

  • 代表技术Squid
  • 功能:保存静态文件,减少网络交换量

3. 文件存储系统

技术方案特点适用场景
FastDFS轻量级分布式文件系统中小规模文件存储
HDFSHadoop生态文件系统大数据场景

4. Web应用服务器

  • JBoss:Java EE应用服务器
  • Apache Tomcat:轻量级Servlet容器

5. 数据库选择

  • MongoDB:文档型NoSQL数据库
  • 特点:适合存储非结构化数据

6. 架构优化策略

  1. 外网加速:CDN内容分发、镜像站点
  2. 内网优化:负载均衡、缓存服务器、分布式系统

考点提示:需要掌握各种技术的分类和典型代表,特别是其功能描述和常见软件。


四、高频考点总结

1. Lambda架构与CAP理论关联

Lambda架构的设计体现了CAP理论的权衡:

  • 批处理层:保证一致性©和分区容错性§
  • 速度层:保证可用性(A)和分区容错性§

2. 分布式事务解决方案

与Lambda架构类似,分布式事务也需要权衡:

  • 强一致性:如两阶段提交(2PC)
  • 最终一致性:如TCC、Saga模式

3. 微服务治理核心

  • 服务注册与发现:如DUBBO、Eureka
  • 负载均衡:客户端负载与服务端负载
  • 熔断降级:防止雪崩效应

五、知识关联图谱

在这里插入图片描述


六、考前冲刺要点

  1. Lambda架构:重点理解其三层结构和优缺点
  2. 技术选型:掌握各组件的典型代表和适用场景
  3. 架构对比:理解不同架构方案的权衡取舍
  4. 性能优化:掌握从外网到内网的完整优化链路

最后提醒:考试中不仅考察技术本身,更考察技术选型的合理性,需要结合具体场景进行分析。

更多推荐