系统架构设计师-大数据

目录

一、大数据

1、大数据架构

2、大数据技术生态

3、Lambda架构

4、Kappa架构

5、Lambda架构与Kappa架构对比


一、大数据

1、大数据架构

大数据是指其大小或复杂性无法通过现有常用的软件工具,以合理的成本并在可接受的时限内对其进行捕获、管理和处理的数据集。这些困难包括数据的收入、存储、搜索、共享、分析和可视化。

5个V:大规模(Volume)、高速度(Velocity)、多样化(Variety)、价值密度低(Value)、真实性(Veracity)

大数据的应用领域:制造业的应用、服务业的应用、交通行业的应用、医疗行业的应用等。

大数据面临着5个主要问题,分别是异构性(Heterogeneity)、规模(Scale)、时间性(Timeliness)、复杂性(Complexity)和隐私性(Privacy)。

大数据研究工作将面临5个方面的挑战:

(1)挑战一:数据获取问题。

(2)挑战二:数据结构问题。

(3)挑战三:数据集成问题。

(4)挑战四:数据分析、阻止、抽取和建模是大数据本质的功能性挑战。

(5)挑战五:如何呈现数据分析的结果,并与非技术的领域专家进行交互/

建议采用成熟技术解决大数据带来的挑战,并给出了大数据分析的分析步骤,大致分为数据获取/记录、信息抽取/清晰/标注、数据集成/聚集/表现、数据分析/建模和数据解释5个主要阶段。

2、大数据技术生态

Hbase:分布式、面向列的开源数据库,适合于非结构化的数据存储。【实时数据和离线数据均支持】

HDFS(Hadoop分布式文件系统):适合运行在通用硬件上的分布式文件系统(Distributed File System)。HDFS是一个高度容错性的系统,适合部署在廉价的机器上。HDFS能提供高吞吐量的数据访问,非常适合大规模数据集上的应用。【通常用于处理离线数据的存储】

Flume:高可用/可靠,分布式海量日志采集、聚合和传输的系统,Flume支持在日志系统中定制各类数据发送方,用于收集数据;同时,Flume提供对数据进行简单处理,并写到各种数据接收方(可定制)的能力。

Kafka:一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者在网站中的所有动作流数据。

ZooKeeper:开放源码的分布式应用程序协调服务,是Hadoop和Hbase的重要组件。它是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、域名服务、分布式同步、组服务等。

3、Lambda架构

(1)批处理层(Batch Layer):两个核心功能:存储数据集和生成Batch View。

(2)加速层(Speed layer):存储实时视图并处理传入的数据流,以更新这些视图。

(3)服务层(Serving Layer):用于响应用户的查询请求,合并Batch View和Real-time View中的结果数据集到最终的数据集。

【优缺点】

4、Kappa架构

(1)输入数据直接由实时层的实时数据处理引擎对源源不断的源数据进行处理。

(2)再由服务层的服务后端进一步处理以提供上层的业务查询。

(3)而中间结果的数据都是需要存储的,这些数据包括历史数据与结果数据,统一存储在存储介质中。

【优缺点】

5、Lambda架构与Kappa架构对比

【某网奥运中的Lambda架构】

【某证券大数据系统Kappa架构】

相关推荐
对讲机数码科普13 小时前
数字集群对讲工程全流程拆解:DMR/ePDT 制式选型、组网落地与运维实战
运维·软件工程
硅谷秋水14 小时前
EmbodiedSWE:面向长时程灵巧机器人的编程智能体
人工智能·机器学习·语言模型·机器人·软件工程
郝学胜-神的一滴14 小时前
C++ Templates 03:手写一个Stack看透模板核心机制
开发语言·c++·产品运营·软件工程·产品经理
rolt15 小时前
05 医学 ISO 13940-用UML表示的行业标准,健康信息学 — 支持照护连续性的概念体系
软件工程·架构师·uml
沫璃染墨16 小时前
《从零入门Linux系统篇(五十六):线程篇·九——生产者消费者模型:从条件变量到BlockingQueue实现》
linux·服务器·c++·驱动开发·设计模式·架构·系统架构
️公子16 小时前
决策模型开战:Jev / Decisions API / Strands Decider 的 ClosedSet、置信度闸门与混合 Agent
人工智能·大模型·软件工程·agent·决策模型
艺杯羹17 小时前
Anthropic突袭发布Claude Code Mods!用TypeScript编写智能体中间件:告别AI误删与失控
人工智能·typescript·系统架构
沫璃染墨1 天前
《从零入门Linux系统篇(五十四):线程篇·七——互斥锁底层原理:从原子交换到线程竞争与锁实现》
linux·运维·服务器·开发语言·c++·驱动开发·系统架构
诚心呈意共享外卖配送系统1 天前
共享骑手与聚合配送的区别及系统架构设计:运力池与订单聚合如何落地
架构·系统架构·创业创新
蜗牛互联网1 天前
从Barclays扩大Claude部署看受监管软件工程的责任重分配
java·大数据·人工智能·后端·软件工程