【系统架构师】-第19章-大数据架构设计理论与实践

四个特点

大规模(Volume)、高速度(Velocity)和多样化(Variety),价值(Value)。

五个问题

异构性(Heterogeneity)、规模(Scale)、时间性(Timeliness)、复杂性(Complexity)和隐私性(Privacy)

五个挑战

1. 数据获取问题。

2.数据结构问题。

3.数据集成问题。

4.数据分析、组织、抽取和建模等功能性挑战。

5. 如何呈现数据分析的结果,并与非技术的领域专家进行交互。

1、架构的演进

1)异步缓冲

2)读写分离

3)hadoop M/R批处理

2、大数据面临的挑战

数据复杂:结构化、半结构化数据

数据量大:

数据挖掘:

3、大数据处理架构特征:

1、鲁棒性和容错性:机器是不可靠的,允许机器宕机

2、低延迟读取和更新能力

3、横向扩展(Scalable):服务器主机扩展,而不是增强机器性能

4、通用性:多领域支持

5、延展性:需求变动

6、即席查询能力

7、最少维护能力

8、可调试性

4、Lambda架构

1、批处理层

存储数据集(HDFS)、M/R处理离线数据、直接生成 batch view

要求数据原始的、不可变、永远真实

2、加速层(流处理)

增量的数据流、生成 real-time view。有新数据后,更新r-t view。

采用Spark或Storm,结果缓存在MemSQL或Redis中

如果批处理层重新计算生成,则清空real-time view数据。最终一致性

3、服务层

整合batch View 与 real-time View数据集,形成结果集

采用 HBase或Cassandra

响应用户的查询请求,提供主数据集的计算结果的低延迟访问

4、查询视图

面向用户,由Hive创建可查询视图

5、优缺点

1.优点

(1)容错性好。 Lambda架构为大数据系统提供了更友好的容错能力,一旦发生错误,我们
可以修复算法或从头开始重新计算视图。
(2)查询灵活度高。批处理层允许针对任何数据进行临时查询。
(3)易伸缩。所有的批处理层、加速层和服务层都很容易扩展。因为它们都是完全分布式
的系统,我们可以通过增加新机器来轻松地扩大规模。
(4)易扩展。添加视图是容易的,只是给主数据集添加几个新的函数。

2.缺点

(1)全场景覆盖带来的编码开销。
(2)针对具体场景重新离线训练一遍益处不大。
(3)重新部署和迁移成本很高。

6、横向比对

1、事件溯源(Event Sourcing)

(1)整个系统以事件为驱动,所有业务都由事件驱动来完成。
(2)事件是核心,系统的数据以事件为基础,事件要保存在某种存储上。
(3)业务数据只是一些由事件产生的视图,不一定要保存到数据库中。

2、CQRS(查询修改分离)

5、Kappa架构

简化了Lambda架构,移除了批处理层,以消息队列Kafka 作为数据存储及流通道

当需要进行离线分析或者再次计算的时候,则将数据湖的数据再次经
过消息队列重播一次则可

优缺点:

1、部署维护简单

2、数据存储、回溯困难

kappa+架构

将不同来源的数据通过Kafka导入到Hadoop 中,通过HDFS来存储中间
数据,再通过 spark对数据进行分析处理,最后交由上层业务进行查询

6、Lambda与Kappa架构比对

7、补充实际案例架构

案例一

hive查询视图

MemSQL 内存数据库

HBase 整合view

案例二

kafka 向HDFS存储数据,并实时推送数据给Spark 流处理

在批处理层,把转化数据表和曝光数据表导入到Hive中,用Hive Sql做好join, 将两张表聚合而成的结果表导出到MySQL, 提供给服务层

案例三

实时日志分析平台基于Kappa架构,使用统一的数据处理引擎Flink可实时处理全部数据,
并将其存储到Elastic-Search与OpenTSDB中。实时处理过程如下:

(1)日志采集,即在各应用系统部署采集组件Filebeat, 实时采集日志数据并输出到 Kafka
缓存。

(2)日志清洗与解析,即基于大数据计算集群的Flink计算框架,实时读取Kafka中的日
志数据进行清洗和解析,提取日志关键内容并转换成指标,以及对指标进行二次加工形成衍生
指标。

(3)日志存储,即将解析后的日志数据分类存储于 Elastic-Search 日志库中,各类基于日志
的指标存储于OpenTSDB指标库中,供前端组件搜索与查询。

(4)日志监控,即通过单独的告警消息队列来保持监控消息的有序管理与实时推送。

(5)日志应用,即在充分考虑日志搜索专业需求的基础上,平台支持搜索栏常用语句保存,
选择日志变量自动形成搜索表达式,以及快速按时间排序过滤、查看日志上下文等功能

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/548994.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C语言---指针的两个运算符:点和箭头

目录 点(.)运算符箭头(->)运算符需要注意实际例子 C语言中的指针是一种特殊的变量,它存储了一个内存地址。点(.)和箭头(->)是用于访问结构体和联合体成员的运算符。…

c++的const总结(转)

为什么使用const?采用符号常量写出的代码更容易维护;指针常常是边读边移动,而不是边写边移动;许多函数参数是只读不写的。const最常见用途是作为数组的界和switch分情况标号(也可以用枚举符代替),分类如下:…

C#重新认识笔记_ 点乘,叉乘

C#重新认识笔记_ 点积,叉乘 一、Dot Product 点乘: (Ax*Bx)(Ay*By)(Az*Bz)Dot Product 点积 利用点积,可以了解,两个向量(vector)的相关信息, …

09|代理(上):ReAct框架,推理与行动的协同

应用思维链推理并不能解决大模型的固有问题:无法主动更新自己的知识,导致出现事实幻觉。也就是说,因为缺乏和外部世界的接触,大模型只拥有训练时见过的知识,以及提示信息中作为上下文提供的附加知识。如果你问的问题超…

2024最新阿里云幻兽帕鲁搭建服务器_Palworld联机多人游戏

玩转幻兽帕鲁服务器,阿里云推出新手0基础一键部署幻兽帕鲁服务器教程,傻瓜式一键部署,3分钟即可成功创建一台Palworld专属服务器,成本仅需26元,阿里云服务器网aliyunfuwuqi.com分享2024年新版基于阿里云搭建幻兽帕鲁服…

蓝桥杯练习题——贡献法(隔板法)

1.孤独的照片 思路 孤独的区间一定有一头孤独的牛&#xff0c;考虑每头牛对区间的贡献是多少 #include<iostream> using namespace std; const int N 5e5 10; int n; string s;int main(){cin>>n>>s;long long res 0;for(int i 0; i < n; i){int l…

找工作别再上招聘软件啦

大家好&#xff1a; 衷心希望各位点赞。 您的问题请留在评论区&#xff0c;我会及时回答。 正文 找工作可千万别上招聘软件&#xff0c;很多同学私信反映找工作真的太难了&#xff0c;不是被平台骗&#xff0c;就是被公司坑&#xff0c;那你不如看看这五个平台。帮你远离上当…

掌握AI写作工具:引领内容创作潮流

随着技术发展&#xff0c;AI技术正日益渗透到各行各业&#xff0c;并对内容创作领域产生了深远影响。随着AI写作工具的不断发展和普及&#xff0c;内容创作者们正逐渐看到了AI在提高效率、创造力和质量方面的巨大潜力。本文将探讨AI写作工具如何引领内容创作潮流&#xff0c;以…

几个精品声音模型

AI技术提取某位歌手的音色&#xff0c;再用其替换另一位歌手音色的方式&#xff0c;可以实现接近歌手本人翻唱的逼真效果。无需学习其他伪音技巧&#xff0c;即可实现实时男女声音互换等等。 使用 RVC 及模型工具&#xff0c;可以实现以下几个功能&#xff1a; 音乐干声分离&…

改变input placeholder的样式 (适用于vue uniapp 中的input textarea)

如下控制 <textarea name"" placeholder"请输入您要反馈的问题&#xff0c;以便我们为您解决" placeholder-style"font-weight: 500;font-size: 27rpx;color: #999999;" id"" cols"30" rows"10"></text…

一、从0开始卷出一个新项目之CC-Link IE TSN 概述

目录 1.1 范围 1.2 目的 1.3 CC-Link介绍 1.3.1 CPLA协会 1.3.2 CC-Link协议家族 1.3.3 CC-Link IE TSN 二、瑞萨RIN32M4-CL3 2.1 芯片简介 2.2 资料下载 2.3 RIN系列产品 一、从0开始卷出一个新项目之CC-Link IE TSN 概述 一、CC-Link介绍 1.1 范围 快速实现CC-Lin…

深入了解JVM底层原理

一、JVM内存结构 1、方法区&#xff1a;存储编译后的类、常量等&#xff08;.class字节码文件&#xff09; 2、堆内存&#xff1a;存储对象 3、程序计数器&#xff1a;存储当前执行的指令地址&#xff08;计算机处理器&#xff08;CPU&#xff09;正在执行的下一条指令在内存…