大数据学习(1)-Hadoop

&&大数据学习&&

🔥系列专栏: 👑哲学语录: 承认自己的无知,乃是开启智慧的大门
💖如果觉得博主的文章还不错的话,请点赞👍+收藏⭐️+留言📝支持一下博>主哦🤞


Hadoop是一个开源的分布式计算平台,用于处理大规模数据集。Hadoop的核心组件包括:

HDFS(Hadoop Distributed File System)

MapReduce和Yarn。

Hadoop的运行机制基于分布式计算的概念,即将大规模的计算任务分解为多个小任务,并在多台计算机上并行处理。Hadoop集群由多个节点组成,包括一个NameNode和若干个DataNode。NameNode负责管理文件系统的元数据,而DataNode负责存储实际的数据。

Hadoop的运行过程包括以下几个步骤:

  1. 数据准备:将待处理的数据上传到HDFS中,可以使用Flume、Sqoop等工具将数据从其他系统导入到HDFS。
  2. 编写MapReduce程序:使用Java语言编写MapReduce程序,将计算任务划分为Map阶段和Reduce阶段。
  3. 提交任务:将编写好的MapReduce程序提交到Yarn中,Yarn负责资源的分配和管理。
  4. 任务执行:Yarn将MapReduce任务分解为多个小任务,并在集群中的不同节点上并行执行。在Map阶段,数据被划分为若干个小块,并在不同节点上进行处理;在Reduce阶段,Map阶段的输出被收集和汇总,以生成最终的结果。
  5. 结果输出:处理完成后,结果将输出到HDFS中,可以使用Hive、HBase等工具进行结果查询和分析。

在运行过程中,Hadoop涉及到了多个技术栈,包括:

  1. HDFS:Hadoop分布式文件系统,用于存储大规模数据。
  2. MapReduce:Hadoop的核心计算模型,用于处理大规模数据集。
  3. Yarn:Hadoop的资源管理器,用于管理和分配集群中的计算资源。
  4. Hive:基于Hadoop的数据仓库工具,提供了类似于SQL的查询语言。
  5. HBase:基于Hadoop的分布式数据库,用于存储非结构化和半结构化数据。
  6. Flume:Hadoop的数据采集工具,用于将数据从不同的数据源导入到HDFS中。
  7. Sqoop:Hadoop的数据导入导出工具,用于在关系型数据库和Hadoop之间进行数据迁移。

 

Hdfs存储:

HDFS中每个数据节点可以存储的数据量取决于节点的硬盘大小。对于单个节点,其存储容量为磁盘容量减去配置文件(hdfs-site.xml)中的参数值dfs.datanode.du.reserved。对于一个集群,其总容量取决于所有DataNode节点的硬盘大小之和。但是需要注意的是,还需要考虑集群的备份数量。例如,如果备份数量为3,集群总容量为3TB,则实际可以存储的文件容量为1TB。

0b44a6847c0e4fceb25abdbd104532d3.png

大数据技术栈非常多,但是并不需要全部都懂,了解即可,我也是刚刚开始学习不久,欢迎大家的批评指正。之后会持续更新大数据了!

 

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

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

相关文章

网络安全(骇客)—技术学习

1.网络安全是什么 网络安全可以基于攻击和防御视角来分类,我们经常听到的 “红队”、“渗透测试” 等就是研究攻击技术,而“蓝队”、“安全运营”、“安全运维”则研究防御技术。 2.网络安全市场 一、是市场需求量高; 二、则是发展相对成熟入…

Rust专属开发工具——RustRover发布

JetBrains最近推出的Rust集成开发工具——RustRover已经发布,官方网站:RustRover: Rust IDE by JetBrains JetBrains出品过很受欢迎的开发工具IntelliJ IDEA、PyCharm等。 RustRover优势 Rust集成环境,根据向导可自动下载安装rust开发环境提…

2023.10.10

运算符重载 类外函数实现&#xff1a; #include <iostream>using namespace std;class Good {//算数friend const Good operator*(const Good &L,const Good &R);friend const Good operator(const Good &L,const Good &R);friend const Good operator…

机器学习、深度学习相关的项目集合【自行选择即可】

【基于YOLOv5的瓷砖瑕疵检测系统】 YOLOv5是一种目标检测算法&#xff0c;它是YOLO&#xff08;You Only Look Once&#xff09;系列模型的进化版本。YOLOv5是由Ultralytics开发的&#xff0c;基于一阶段目标检测的概念。其目标是在保持高准确率的同时提高目标检测的速度和效率…

Android 内存泄漏分析思路和案例剖析

分析思路 内存泄漏是指 Android 进程中&#xff0c;某些对象已经不再使用&#xff0c;但被一些生命周期更长的对象引用&#xff0c;导致其占用的内存资源无法被GC回收&#xff0c;内存占用不断增加的一种现象&#xff1b;内存泄漏是导致我们应用性能下降、卡顿的一种常见因素&…

epoll 定时器

参考&#xff1a; Linux下使用epoll监听定时器-CSDN博客 但是这个用的是gettimeofday。 本人使用的是 #include <stdlib.h> #include<stdio.h> #include <sys/timerfd.h> #include <sys/epoll.h> #include <unistd.h> #include <sys/time.…

库存管理方法有哪些?

本文将为大家讲解&#xff1a;库存管理方法有哪些&#xff1f; 库存管理是企业运营中的核心环节&#xff0c;它涉及到货物的采购、存储、销售和配送。有效的库存管理可以确保企业有足够的货物满足客户的需求&#xff0c;同时避免库存积压和浪费。为了达到这个目标&#xff0c;…

洛谷100题DAY7

31.P1636 Einstein学画画 此题为欧拉通路&#xff0c;必须要满足奇点的个数为0或2个 奇点&#xff1a;度数&#xff08;入度出度&#xff09;为奇数的点 如果奇点为2个或者0个就可以直接一笔化成 eg. 我们发现奇数点个数每增加2个就多一笔 #include<bits/stdc.h> us…

Navicat定时任务

Navicat定时任务 1、启动Navicat for MySQL工具&#xff0c;连接数据库。 2、查询定时任务选项是否开启 查询命令&#xff1a;SHOW VARIABLES LIKE ‘%event_scheduler%’; ON表示打开&#xff0c;OFF表示关闭。 打开定时任务命令 SET GLOBAL event_scheduler 0; 或者 SET G…

解决yolo无法指定显卡的问题,实测v5、v7、v8有效

方法1 基本上这个就能解决了&#xff01;&#xff01;&#xff01; 在train.py的最上方加上下面这两行&#xff0c;注意是最上面&#xff0c;其次指定的就是你要使用的显卡 import os os.environ[CUDA_VISIBLE_DEVICES]6方法2&#xff1a; **问题&#xff1a;**命令行参数指…

数据库系统工程师------时间周期

时间周期 计算机各种周期 时钟周期 机器&#xff08;CPU&#xff09;周期 指令周期 总线周期 时钟周期&#xff1a;也称振荡周期&#xff0c;定义为时钟频率的倒数。是计算机中最基本、最小的时间单位。 机器&#xff08;CPU&#xff09;周期&#xff1a;也称CPU周期&…

WPF中DataContext的绑定技巧

先看效果&#xff1a; 上面的绑定值都是我们自定义的属性&#xff0c;有了以上的提示&#xff0c;那么我们可以轻松绑定字段&#xff0c;再也不用担心错误了。附带源码。 目录 1.建立mvvm项目 2.cs后台使用DataContext绑定 3.xaml前台使用DataContext绑定 4.xaml前台使用Da…