软考:大数据架构设计
大数据总结
大数据处理系统的特征
1、鲁棒性和容错性
2、低延迟读取和更新能力
3、横向扩容
4、通用性
5、延展性
6、即席查询能力
7、最少维护能力
8、可调试性
Lambda架构
批处理层
存储数据集和生成Batch View
管理主数据集,原始的,不可变的,真实的
在大数据架构设计中,批处理层是Lambda架构的核心组成部分之一,其主要功能和特点如下:
-
存储管理主数据集:批处理层负责存储
不可变的数据集和预先批处理计算好的视图。这意味着它处理的是历史数据,确保数据的完整性和准确性。 -
预先计算结果:批处理层使用分布式处理系统
预先计算结果,通过处理所有的历史数据来实现数据的准确性。这通常涉及到大规模的数据集,需要强大的计算能力。 -
数据准确性:由于批处理层基于完整的数据集重新计算,它能够修复任何错误,并更新现有的数据视图。这保证了数据的准确性和可靠性。
-
输出存储:批处理层的
输出通常存储在只读数据库中,更新则完全取代现有的预先计算好的视图。 -
使用技术:批处理层可以用Hadoop、Spark和Flink等框架进行计算。这些框架能够处理大规模数据集,并提供强大的数据处理能力。
-
与实时数据处理的结合:在Lambda架构中,批处理层与速度处理层(Speed Layer)相结合,以提供实时和历史数据的查询服务。速度层处理实时数据,而批处理层处理历史数据,两者的结合为用户提供了全面的数据视图。
-
数据冗余:虽然批处理层提供了数据的准确性,但也带来了数据冗余的问题,因为同样的数据可能在批处理层和速度层都被处理。
综上所述,批处理层在大数据架构中扮演着至关重要的角色,它通过处理历史数据来保证数据的完整性和准确性,同时与实时数据处理层相结合,为用户提供全面的数据分析服务。
加速层
建立索引,能快速查询,存储实时试图并处理传入的数据流,以便更新这些视图。
加速层相当于就是加速计算,只处理增量的数据集。
分层计算的特点:
1、容错性,就是在加速层可能出现的错误,可用在批处理层进行修正
2、复杂性隔离,将复杂的实时处理隔离出来,提高整个系统的鲁棒行和可靠性
3、横向扩容,支持线性可扩展
服务层
用来响应用户的查询请求。
具体实现
Hadoop用来存储主数据集
Spark构成加速层
Hbase作为服务层
Hive创建可查询的视图
Kappa架构
数据系统=数据+查询
数据的特性:When,What,也就是记录数据的版本
数据的存储:Lambda,数据是不可变的,不可变只需要在后面追加数据即可,
采用了重新处理事件的原则,有能力在业务逻辑更新的情况下重新处理以前处理过的历史数据
删除了Batch Layer的架构。数据通道已消息队列进行替代。
lambda和kappa架构的对比
Lambda架构和Kappa架构是两种不同的大数据架构,它们各自有不同的特点和适用场景。以下是它们的对比:
-
架构复杂性与维护:
- Lambda架构:包含批处理层和速度层,需要维护两套系统,这可能导致维护和管理上的复杂性增加。
- Kappa架构:通过消除批处理层,简化了架构,减少了维护的复杂性。
-
实时性与历史数据处理:
- Lambda架构:适合需要历史数据分析的场景,通过批处理层可以处理历史数据。
- Kappa架构:更侧重于实时数据处理,适合对实时性要求极高的应用。
-
容错性与一致性:
- Lambda架构:批处理层提供了强大的容错性和数据一致性保证,适合对数据准确性要求极高的场景。
- Kappa架构:依赖于流处理层的容错机制,可能在某些场景下需要额外的措施来确保数据一致性。
-
技术适应性:
- Lambda架构:由于其成熟的技术生态,可能更容易找到经验丰富的技术人员。
- Kappa架构:可能需要团队适应新的流处理技术。
-
数据冗余与存储成本:
- Lambda架构:为实现不可变的数据需要存储原始数据,数据的不断追加会带来很大的存储成本。
- Kappa架构:通过重新处理历史数据改进逻辑算法,可以减少数据冗余和存储成本。
-
开发和维护成本:
- Lambda架构:批处理层和速度层采用两套不同的技术方案,开发和维护成本都比较大。
- Kappa架构:只需要维护实时处理模块,可以降低开发和维护成本。
-
适用场景:
- Lambda架构:因其优秀的稳定性和容错性,仍被应用在众多场景中,适合需要稳健机器学习模型的场景。
- Kappa架构:适用于需要高实时性和灵活性的业务逻辑。
总的来说,Lambda架构适合需要同时处理实时和历史数据的场景,而Kappa架构则更适合对实时性要求高、历史数据处理需求相对较低的场景。选择哪种架构取决于具体的业务需求、数据处理的特点以及团队的技术能力。
相关文章:
软考:大数据架构设计
大数据总结 大数据处理系统的特征 1、鲁棒性和容错性 2、低延迟读取和更新能力 3、横向扩容 4、通用性 5、延展性 6、即席查询能力 7、最少维护能力 8、可调试性 Lambda架构 批处理层 存储数据集和生成Batch View 管理主数据集,原始的,不可变的&…...
token无感刷新+处理并发的后端方案
问题描述: 当用户通过登陆后进入一个web网站,会把token保存到localStorage。假设token过期时间30min。 那么当用户在网站快乐地玩耍了30min后,这时进行了一次提交表单,它会被重定向到登陆页面。 作为用户:我表单填了…...
【系统设计】让 Java “动起来”:动态语言与静态语言的比较及 DSL 实现
在编程语言的世界里,语言的特性决定了它们在不同场景下的适用性。动态语言和静态语言是两种常见的编程范式,它们的差异不仅影响开发者的使用习惯,还决定了它们在某些应用场景中的表现。在这篇博文中,我们将通过Python和Java这两种…...
TCP Analysis Flags 之 TCP Keep-Alive
前言 默认情况下,Wireshark 的 TCP 解析器会跟踪每个 TCP 会话的状态,并在检测到问题或潜在问题时提供额外的信息。在第一次打开捕获文件时,会对每个 TCP 数据包进行一次分析,数据包按照它们在数据包列表中出现的顺序进行处理。可…...
mfc140u.dll丢失怎么办? mfc140u.dll文件缺失的修复技巧
mfc140u.dll 是 Microsoft Foundation Classes (MFC) 库的一部分,它是 Visual Studio 2015 的组件之一,主要服务于使用 C 编写的 Windows 应用程序。这个动态链接库文件包含了 MFC 14.0 Unicode 版本的实现代码,为应用程序提供运行时支持。当…...
Spring Security使用
文章目录 Spring Security的起点FilterChain重写重写登录验证逻辑增加CSRF Token增加方法权限校验 Spring Security的起点 在AbstractApplicationContext.refresh()方法时,子类ServletWebServerApplicationContext会创建一个ServletContextInitializerBeans这个Bea…...
CSS网页布局综合练习(涵盖大多CSS知识点)
该综合练习就是为这个学校静态网页设置CSS样式,使其变成下面的模样 其基本骨架代码为: <!DOCTYPE html> <html lang"zh"> <head> <meta charset"UTF-8"> <meta name"viewport" content…...
解决 Hardhat Verify 超时
问题背景 今天在学习使用Hardhat进行verify 合约 到 Ethscan的时候,出现了如下报错 fafafafadeMacBook-Air Web3_Solidity_Study % npx hardhat verify --network sepolia XXXXXXXXXXXXXXXXXXXXXXXX "10" Successfully verifie…...
ACIS创建各种基本体,举例说明
ACIS(Advanced CAD Interoperability System)是一个广泛使用的三维几何建模内核,它支持创建和操作各种基本的三维几何体。虽然ACIS没有专门的函数来直接创建某些特定的基本体(如椭球体),但可以通过一系列变…...
[CISCN 2019华北]PWN1-好久不见7
Partial RELRO 表示部分 RELRO 保护已启用。在这种情况下,只有某些部分(如 GOT 中的只读部分)是只读的。 NX enabled 表示这个二进制文件启用了 NX 保护,数据段是不可执行的。这可以防止某些类型的代码注入攻击。 这里是ida识别…...
代码随想录day16| 513找树左下角的值 、 路径总和 、 从中序与后序遍历序列构造二叉树
代码随想录day16| 找树左下角的值 、 路径总和 、 从中序与后序遍历序列构造二叉树 513找树左下角的值层序遍历法递归法 路径总和112. 路径总和113. 路径总和 II 从中序与后序遍历序列构造二叉树思路 513找树左下角的值 层序遍历法 使用层序遍历,找到最后一层最左边…...
使用 MMDetection 实现 Pascal VOC 数据集的目标检测项目练习(二) ubuntu的下载安装
首先,Linux系统是人工智能和深度学习首选系统。原因如下: 开放性和自由度:Linux 是一个开源操作系统,允许开发者自由修改和分发代码。这在开发和研究阶段非常有用,因为开发者可以轻松地访问和修改底层代码。社区支持:…...
书生大模型实战营(第四期)——入门岛
第 1 关 Linux 前置基础 闯关任务完成SSH连接与端口映射并运行hello_world.py10min可选任务 1将Linux基础命令在开发机上完成一遍10min可选任务 2使用 VSCODE 远程连接开发机并创建一个conda环境10min 完成SSH连接 创建python文件 建环境 运行 第 2 关 Python 前置基础 Leet…...
压强随着时间的变化
import numpy as np import matplotlib.pyplot as plt# 参数设置 L 50 # 长度 (m) D 4 # 直径 (m) d 0.01 # 洞的直径 (m) P0 101300 # 初始压力 (Pa) P_final 0.3 * P0 # 最终压力 (Pa) R 287 # 理想气体常数 (J/(kgK)) T 20 273.15 # 温度 (K) M 0.029 # 空…...
2024年大厂AI大模型面试题精选与答案解析
前言 随着AI市场,人工智能的爆火,在接下来的金九银十招聘高峰期,各大科技巨头和国有企业将会对AGI人才的争夺展开一场大战,为求职市场注入了新的活力。 为了助力求职者在面试中展现最佳状态,深入理解行业巨头的选拔标…...
Linux开发讲课47--- 详解 Linux 中的虚拟文件系统
虚拟文件系统是一种神奇的抽象,它使得 “一切皆文件” 哲学在 Linux 中成为了可能。 什么是文件系统?根据早期的 Linux 贡献者和作家 Robert Love 所说,“文件系统是一个遵循特定结构的数据的分层存储。” 不过,这种描述也同样适用…...
全球银行常用英语
Earn OCBC$ or 90 Miles or VOYAGE Miles today! Get the most out of your OCBC Card with OCBC Privileges. 今天赚取华侨银行美元或 90 英里或航程英里!通过华侨银行特权充分利用您的华侨银行卡。 Check out the rewards catalogue. Apply for a OCBC Credit Car…...
新160个crackme -090-tc.12
运行分析 需要破解注册码 PE分析 Delphi程序,32位,无壳 静态分析&动态调试 ida搜不到字符串,根据Deiphi程序的结构,直接打开来到start函数,找到CreateForm函数的参数off_445FC4,双击 逐个查找偏移&…...
Swagger文档-Unable to scan documentation context default报错
文章目录 报错情况: Unable to scan documentation context 管理端接口发生情况一:发生情况三: 报错情况: Unable to scan documentation context 管理端接口 报错日志: 2024-11-03 12:40:27.427 ERROR 3340 --- [ …...
SpringKafka生产者、消费者消息拦截
1 前言 在Spring Kafka中,可以通过配置拦截器来实现对生产者和消费者消息的拦截。拦截器可以用来记录日志、修改消息等等。 2 基于Kafka管理的拦截器 Kafka原生提供的拦截器接口是org.apache.kafka.clients.producer.ProducerInterceptor和 org.apache.kafka.cli…...
UE5 学习系列(二)用户操作界面及介绍
这篇博客是 UE5 学习系列博客的第二篇,在第一篇的基础上展开这篇内容。博客参考的 B 站视频资料和第一篇的链接如下: 【Note】:如果你已经完成安装等操作,可以只执行第一篇博客中 2. 新建一个空白游戏项目 章节操作,重…...
[2025CVPR]DeepVideo-R1:基于难度感知回归GRPO的视频强化微调框架详解
突破视频大语言模型推理瓶颈,在多个视频基准上实现SOTA性能 一、核心问题与创新亮点 1.1 GRPO在视频任务中的两大挑战 安全措施依赖问题 GRPO使用min和clip函数限制策略更新幅度,导致: 梯度抑制:当新旧策略差异过大时梯度消失收敛困难:策略无法充分优化# 传统GRPO的梯…...
idea大量爆红问题解决
问题描述 在学习和工作中,idea是程序员不可缺少的一个工具,但是突然在有些时候就会出现大量爆红的问题,发现无法跳转,无论是关机重启或者是替换root都无法解决 就是如上所展示的问题,但是程序依然可以启动。 问题解决…...
HTML 语义化
目录 HTML 语义化HTML5 新特性HTML 语义化的好处语义化标签的使用场景最佳实践 HTML 语义化 HTML5 新特性 标准答案: 语义化标签: <header>:页头<nav>:导航<main>:主要内容<article>&#x…...
树莓派超全系列教程文档--(62)使用rpicam-app通过网络流式传输视频
使用rpicam-app通过网络流式传输视频 使用 rpicam-app 通过网络流式传输视频UDPTCPRTSPlibavGStreamerRTPlibcamerasrc GStreamer 元素 文章来源: http://raspberry.dns8844.cn/documentation 原文网址 使用 rpicam-app 通过网络流式传输视频 本节介绍来自 rpica…...
《Playwright:微软的自动化测试工具详解》
Playwright 简介:声明内容来自网络,将内容拼接整理出来的文档 Playwright 是微软开发的自动化测试工具,支持 Chrome、Firefox、Safari 等主流浏览器,提供多语言 API(Python、JavaScript、Java、.NET)。它的特点包括&a…...
linux 下常用变更-8
1、删除普通用户 查询用户初始UID和GIDls -l /home/ ###家目录中查看UID cat /etc/group ###此文件查看GID删除用户1.编辑文件 /etc/passwd 找到对应的行,YW343:x:0:0::/home/YW343:/bin/bash 2.将标红的位置修改为用户对应初始UID和GID: YW3…...
[Java恶补day16] 238.除自身以外数组的乘积
给你一个整数数组 nums,返回 数组 answer ,其中 answer[i] 等于 nums 中除 nums[i] 之外其余各元素的乘积 。 题目数据 保证 数组 nums之中任意元素的全部前缀元素和后缀的乘积都在 32 位 整数范围内。 请 不要使用除法,且在 O(n) 时间复杂度…...
DeepSeek 技术赋能无人农场协同作业:用 AI 重构农田管理 “神经网”
目录 一、引言二、DeepSeek 技术大揭秘2.1 核心架构解析2.2 关键技术剖析 三、智能农业无人农场协同作业现状3.1 发展现状概述3.2 协同作业模式介绍 四、DeepSeek 的 “农场奇妙游”4.1 数据处理与分析4.2 作物生长监测与预测4.3 病虫害防治4.4 农机协同作业调度 五、实际案例大…...
AI,如何重构理解、匹配与决策?
AI 时代,我们如何理解消费? 作者|王彬 封面|Unplash 人们通过信息理解世界。 曾几何时,PC 与移动互联网重塑了人们的购物路径:信息变得唾手可得,商品决策变得高度依赖内容。 但 AI 时代的来…...
