理清大数据技术与架构
大数据并不是一个系统软件,更不是一个单一的软件,它实际上是一种技术体系、一种数据处理方法,甚至可以说是一个服务平台。在这个技术体系中,涵盖了许多不同的部件,比如Hadoop服务平台。这一服务平台可以根据具体情况自由组合,具体应用需求决定了最终的架构选择,下面我会从大数据应用步骤,大数据技术学习方法,大数据应用工具一一说明。
1)大数据应用步骤
宏观来看,大数据应用的步骤可以分为:数据源、数据存储、数据计算、数据分析以及数据应用,如下。

2)大数据技术学习方法
方法还是离不开以不变应万变,既然是大数据技术,核心就是数据流。
比如学习Hadoop和Spark,我们可以深入了解它们的原理和工作机制,就好比研究恒星和行星的形成和运行规律。但同时,我们也要明白它们在数据采集、清洗、转换、分析和展示等环节中的作用,就如同了解它们在宇宙中的定位和影响一样。只有全面理解了这些,才能像宇航员一样游刃有余地在数据宇宙中航行,实现完整的数据分析工作流程,为数据探索之旅增添更多的可能性和美妙。
离线计算示例:
在离线计算场景下,使用的都是历史数据,也就是不会再发生改变的数据。在数据源确定以后,这些数据不会再增加、也不会再更新,比较适合对实时性要求不高的场景。大多数情况下是周期性的计算某一个指标或执行一个Job,运算耗时基本上可以控制在分钟级。
- 数据源:数据文件、数据库中的数据等
- 数据采集:Sqoop、HDFS数据上传、Hive数据导入等
- 数据存储:HDFS
- 数据分析:MapReduce、Hive QL
- 计算结果:Hive结果表(HiveJDBC查询)、导出至关系型数据库
3)大数据应用工具
大数据应用工具如下:
一,数据采集工具

示例:flume数据采集框架
Flume是一个分布式、可靠、和高可用的海量日志采集、聚合和传输的系统。它可以采集文件,socket数据包等各种形式源数据,又可以将采集到的数据输出到HDFS、hbase、hive、kafka等众多外部存储系统中。

二,数据存储工具

示例:hfds数据存储框架
HDFS是Hadoop体系中数据存储管理的基础,通过流式数据访问,提供高吞吐量应用程序数据访问功能,适合带有大型数据集的应用程序,提供一次写入多次读取的机制,数据以块的形式,同时分布在集群不同物理机器上高度容错性的系统,能检测和应对硬件故障,用于在低成本的通用硬件上运行。
运行架构如下:

三,数据计算工具

示例:spark计算框架
Spark是一个master/slave架构的分布式系统,使用内存计算引擎,提供Cache缓存机制,将RDD缓存到内存或磁盘当中,支持迭代计算和多次数据共享,减少数据读取的IO开销。
spark生态系统+spark运行架构如下:


四,数据分析工具

示例:python数据分析框架

五,任务调度,资源管理工具

示例:yarn资源调度框架
Yarn是一个资源调度平台,负责为运算程序提供服务器运算资源,相当于一个分布式的操作系统平台,而mapreduce等运算程序则相当于运行于操作系统之上的应用程序。
六:大数据平台搭建工具

国外一些厂商对大数据中的组件进行了封装,提供了一体化的大数据平台,利用它可以快速安装大数据组件。目前业内最常见的是包括CDH、HDP、CDP等。
HDP:全称是 Hortonworks Data Platform。它由 Hortonworks 公司基于 Apache Hadoop 进行了封装,借助于 Ambari 工具提供界面化安装和管理,并且集成了大数据中的常见组件, 可以提供一站式集群管理。HDP 属于开源版免费大数据平台,没有提供商业化服务;
CDH:全称是 Cloudera Distribution Including Apache Hadoop。它由 Cloudera 公司基于 Apache Hadoop 进行了商业化,借助于 Cloudera Manager 工具提供界面化安装和管理,并且集成了大数据中的常见组件,可以提供一站式集群管理。CDH 属于商业化收费大 数据平台,默认可以试用 30 天。之后,如果想继续使用高级功能及商业化服务,则需要付费购买授权,如果只使用基础功能,则可以继续免费使用;
CDP:Cloudera 公司在 2018 年 10 月份收购了 Hortonworks,之后推出了新一代的大数据平台产品 CDP(Cloudera Data Center)。CDP 的版本号延续了之前 CDH 的版本号。从 7.0 版本开始, CDP 支持 Private Cloud(私有云)和 Hybrid Cloud(混合云)。 CDP 将 HDP 和 CDH 中比较优秀的组件进行了整合,并且增加了一些新的组件。
来源1:大数据到底应该如何学?_大数据怎么学-CSDN博客
来源2:一文看懂大数据生态圈完整知识体系【大数据技术及架构图解实战派】_互联网和大数据知识体系图-CSDN博客
详细了解可看《大数据技术及架构图解实战派》一书
相关文章:
理清大数据技术与架构
大数据并不是一个系统软件,更不是一个单一的软件,它实际上是一种技术体系、一种数据处理方法,甚至可以说是一个服务平台。在这个技术体系中,涵盖了许多不同的部件,比如Hadoop服务平台。这一服务平台可以根据具体情况自…...
小白DB补全计划Day2-LeetCode:SQL基本操作selectJOIN
链接:1683. 无效的推文 - 力扣(LeetCode)1378. 使用唯一标识码替换员工ID - 力扣(LeetCode)1068. 产品销售分析 I - 力扣(LeetCode) 来源:LeetCode 1683 # Write your MySQL quer…...
【Node.js从基础到高级运用】十五、单元测试与集成测试
引言 在Node.js开发过程中,测试是确保代码质量和功能正确性的关键步骤。单元测试和集成测试是最常见的测试类型。下面我们将使用Jest框架来进行测试。 单元测试 单元测试是指对软件中的最小可测试单元进行检查和验证。在Node.js中,这通常指的是函数或者…...
哈工大sse C语言 困难
Q565.(10分数, 语言: C)程序中函数 fun()的功能: 将一个由八进制数字字符组成的字符串转换为与其值相等的十进制整数。规定输入的字符串最多只能包含5位八进制数字字符。 **输入格式要求:gets 提示信息:"输入一个八进制字符串(5位&…...
力扣● 503.下一个更大元素II ● 42. 接雨水
503.下一个更大元素II 与496.下一个更大元素 I的不同是要循环地搜索元素的下一个更大的数。那么主要是对于遍历结束后,单调栈里面剩下的那些元素。 如果直接把两个数组拼接在一起,然后使用单调栈求下一个最大值就可以。 代码实现的话,不用直…...
Java中的包装类
Java中的包装类 一、包装类是什么?二、对应关系:三、举例说明:Integer构造器:包装类特有的机制:自动装箱 自动拆箱常用方法 总结 一、包装类是什么? 以前定义变量,经常使用基本数据类型&#x…...
实时数仓的另一种构建方法starRocks的物化视图
一、 StarRocks是什么 StarRocks是一个分布式的、高性能的OLAP(联机分析处理)数据库,物化视图在StarRocks中具有重要作用。 二、 StarRocks物化视图能干啥 物化视图(Materialized Views)是数据库中的预先计算结果的存储。它们是由一个或多个基础表的聚合数据组成的,这…...
【PHP】通过PHP实时监控Apache、MySQL服务运行状态
一、前言 有些时候我们需要监控一些服务的运行状态,比如说Apach或MySQL的运行状态,最近工作中也开发了这方面的功能,记录下来怎样使用PHP语言来实时监控Apache、MySQL服务的运行状态。 如果想一键开启Apache或MySQL等其他服务可以看这篇文章…...
ETL的全量和增量模式
在当今信息爆炸的时代,数据管理已经成为各行各业必不可少的一环。而在数据管理中,全量与增量模式作为两种主要的策略,各自具有独特的优势和适用场景,巧妙地灵活运用二者不仅能提升数据处理效率,更能保障数据的准确性。…...
常用的IDE推荐
程序员在选择集成开发环境(IDE)时,会考虑多种因素,包括易用性、功能丰富性、性能以及是否支持他们正在使用的编程语言。以下是一些建议的IDE及其优点: 1.JetBrains PyCharm:专为Python开发而设计的IDE。 优…...
6、kubenetes 卷
1、什么是卷 在某些场景下,我们可能希望新的容器可以在之前容器结束的位 置继续运⾏,⽐如在物理机上重启进程。可能不需要(或者不想要) 整个⽂件系统被持久化,但又希望能保存实际数据的⽬录。 Kubernetes通过定义存储…...
前端学习笔记 | Node.js
一、Node.js入门 1、什么是Node.js 定义:是跨平台JS运行环境(可以独立执行JS的环境)作用: 编写数据接口,提供网页资源功能等等前端工程化:为后续学Vue和React等框架做铺垫 2、Node.js为何能执行JSÿ…...
Spark-Scala语言实战(3)
在之前的文章中,我们学习了如何在来如何在IDEA离线和在线安装Scala,想了解的朋友可以查看这篇文章。同时,希望我的文章能帮助到你,如果觉得我的文章写的不错,请留下你宝贵的点赞,谢谢。 Spark-Scala语言实…...
diffusion model(十四): prompt-to-prompt 深度剖析
infopaperPrompt-to-Prompt Image Editing with Cross Attention Controlgithubhttps://github.com/google/prompt-to-promptOrg:Google Research个人复现https://github.com/myhz0606/diffusion_learning个人博客主页http://myhz0606.com/article/p2p 1 前言 基于扩散模型&a…...
线性表的顺序表示(顺序表)
静态分配: #include <stdbool.h> #include <stdio.h>typedef int ElementType;#define MaxSize 50 typedef struct {ElementType data[MaxSize];int length; }SqList;//初始化 //SqList L; void InitList(SqList L) {L.length 0; }//插入 bool ListIn…...
矩阵A的LU分解
文章目录 1. 矩阵的逆矩阵1.1 AB的逆矩阵1.2 转置矩阵 2. 2X2矩阵A消元3. 3X3矩阵A消元4. 运算量5. 置换矩阵-左行右列 本文主要目的是为了通过矩阵乘法实现矩阵A的分解。 1. 矩阵的逆矩阵 1.1 AB的逆矩阵 假设A,B矩阵都可逆 A ( B B − 1 ) A − 1 I (1) A(BB^{-1})A^{-1}…...
深入了解Flutter中Future的全部工厂方法及使用
在Flutter中,Future是一种表示异步操作结果的对象。它代表了一个可能已经完成或尚未完成的计算,可以用来处理异步任务。Flutter提供了多种工厂方法来创建Future对象,每种方法都有其特定的用途和优势。在本文中,我们将深入探讨Flut…...
python的BBS论坛系统flask-django-nodejs-php
为了更好地发挥本系统的技术优势,根据BBS论坛系统的需求,本文尝试以B/S架构设计模式中的django/flask框架,python语言为基础,通过必要的编码处理、BBS论坛系统整体框架、功能服务多样化和有效性的高级经验和技术实现方法ÿ…...
vulnhub-----pWnOS1.0靶机
文章目录 1.信息收集2.漏洞测试3.爆破hash4.提权 首先拿到一台靶机,就需要知道靶机的各种信息(IP地址,开放端口,有哪些目录,什么框架,cms是什么,网页有什么常见的漏洞,如sql注入&…...
vue 消息左右滚动(前后无缝衔接)
演示效果 封装的组件 <!--* Author:* Date: 2024-03-21 19:21:58* LastEditTime: 2024-03-21 20:31:50* LastEditors: Please set LastEditors* Description: 消息左右滚动 --> <template><divid"textScroll"class"text-scroll"mousemove&…...
vscode里如何用git
打开vs终端执行如下: 1 初始化 Git 仓库(如果尚未初始化) git init 2 添加文件到 Git 仓库 git add . 3 使用 git commit 命令来提交你的更改。确保在提交时加上一个有用的消息。 git commit -m "备注信息" 4 …...
Lombok 的 @Data 注解失效,未生成 getter/setter 方法引发的HTTP 406 错误
HTTP 状态码 406 (Not Acceptable) 和 500 (Internal Server Error) 是两类完全不同的错误,它们的含义、原因和解决方法都有显著区别。以下是详细对比: 1. HTTP 406 (Not Acceptable) 含义: 客户端请求的内容类型与服务器支持的内容类型不匹…...
PHP和Node.js哪个更爽?
先说结论,rust完胜。 php:laravel,swoole,webman,最开始在苏宁的时候写了几年php,当时觉得php真的是世界上最好的语言,因为当初活在舒适圈里,不愿意跳出来,就好比当初活在…...
MongoDB学习和应用(高效的非关系型数据库)
一丶 MongoDB简介 对于社交类软件的功能,我们需要对它的功能特点进行分析: 数据量会随着用户数增大而增大读多写少价值较低非好友看不到其动态信息地理位置的查询… 针对以上特点进行分析各大存储工具: mysql:关系型数据库&am…...
【Java学习笔记】Arrays类
Arrays 类 1. 导入包:import java.util.Arrays 2. 常用方法一览表 方法描述Arrays.toString()返回数组的字符串形式Arrays.sort()排序(自然排序和定制排序)Arrays.binarySearch()通过二分搜索法进行查找(前提:数组是…...
循环冗余码校验CRC码 算法步骤+详细实例计算
通信过程:(白话解释) 我们将原始待发送的消息称为 M M M,依据发送接收消息双方约定的生成多项式 G ( x ) G(x) G(x)(意思就是 G ( x ) G(x) G(x) 是已知的)࿰…...
【ROS】Nav2源码之nav2_behavior_tree-行为树节点列表
1、行为树节点分类 在 Nav2(Navigation2)的行为树框架中,行为树节点插件按照功能分为 Action(动作节点)、Condition(条件节点)、Control(控制节点) 和 Decorator(装饰节点) 四类。 1.1 动作节点 Action 执行具体的机器人操作或任务,直接与硬件、传感器或外部系统…...
【数据分析】R版IntelliGenes用于生物标志物发现的可解释机器学习
禁止商业或二改转载,仅供自学使用,侵权必究,如需截取部分内容请后台联系作者! 文章目录 介绍流程步骤1. 输入数据2. 特征选择3. 模型训练4. I-Genes 评分计算5. 输出结果 IntelliGenesR 安装包1. 特征选择2. 模型训练和评估3. I-Genes 评分计…...
浪潮交换机配置track检测实现高速公路收费网络主备切换NQA
浪潮交换机track配置 项目背景高速网络拓扑网络情况分析通信线路收费网络路由 收费汇聚交换机相应配置收费汇聚track配置 项目背景 在实施省内一条高速公路时遇到的需求,本次涉及的主要是收费汇聚交换机的配置,浪潮网络设备在高速项目很少,通…...
推荐 github 项目:GeminiImageApp(图片生成方向,可以做一定的素材)
推荐 github 项目:GeminiImageApp(图片生成方向,可以做一定的素材) 这个项目能干嘛? 使用 gemini 2.0 的 api 和 google 其他的 api 来做衍生处理 简化和优化了文生图和图生图的行为(我的最主要) 并且有一些目标检测和切割(我用不到) 视频和 imagefx 因为没 a…...
