大数据- Hadoop入门

目录

🐶2.1 hadoop的简介

1. 概述

2. 什么是分布式?

3. Hadoop的指代

🐶2.2 hadoop的发展历程

🐶2.3 hadoop的版本介绍

🐶2.4 hadoop的常用端口号

🐶2.5 hadoop的设计目的

🐶2.6 hadoop的优势

1. 高可靠性

2. 高扩展性

3. 高效性

4. 高容错性

5. 低成本


🐶2.1 hadoop的简介

1. 概述

Hadoop是一个对大量数据进行分布式处理的软件框架

前文我们提到大数据主要解决海量数据的采集、存储和分析计算问题。其中Hadoop框架主要解决海量数据的存储和分析计算问题

  • HDFS(hadoop distribute file system) - 分布式文件系统,解决海量数据的存储问题

  • MR(MapReduce) - 分离聚合式运算系统,分布式运算系统,解决海量数据的分析计算问题

  • YARN - 分布式资源调度系统

2. 什么是分布式

分布式指的是在多态计算机上协同工作以完成某个任务的过程

假设你有一本非常厚的书需要复印。如果你只有一台复印机,复制整本书将需要很长时间。现在,想象一下有十台复印机,每台都可以复制书中的一部分。你可以让每台复印机同时工作,每台复印机复制其中的一小部分,然后将它们组合在一起。这样,整个过程会比只用一台复印机快得多。

在这个比喻中,每台复印机就好比分布式系统中的一个计算节点(node),而整个过程就是分布式处理。每个节点都独立地执行任务的一部分,最后将它们的结果合并起来形成最终的输出。这种分布式方式可以大大提高处理速度和系统的可伸缩性。

在Hadoop中,分布式处理的核心思想是将大量的数据分成小块,并在多台计算机上并行处理这些数据块。这样可以更快地完成任务,同时也提高了系统的容错性,因为即使某个计算节点出现故障,其他节点仍然可以继续工作。这种分布式处理模型使得Hadoop能够有效地处理大规模数据集。

什么叫分布式?化整为零

3. Hadoop的指代

狭义上来说,hadoop就是单独指代hadoop这个软件,

广义上来说,hadoop指代大数据的一个生态圈,包括很多其他的软件

——Hadoop生态圈:hbase、hive、spark、flink、yarn、flume...

Hadoop生态的图例:

🐶2.2 hadoop的发展历程

1. 起源(2004-2006):

Hadoop的起源可以追溯到2004年,由道格·切宾(Doug Cutting)和迈克尔·卡福曼(Mike Cafarella)等人开发。最初,Hadoop是为了支持Nutch项目,这是一个开源的网络搜索引擎。切宾基于Google的论文《MapReduce: Simplified Data Processing on Large Clusters》和《The Google File System》的思想,开发了Hadoop分布式文件系统(HDFS)和MapReduce编程模型。

2. Apache Hadoop项目(2006年):

2006年,Hadoop成为Apache软件基金会的项目。这一时期,Hadoop的社区逐渐壮大,吸引了许多贡献者和用户。

3. Hadoop 1.x版本(2006-2012):

Hadoop 1.x版本是最早的稳定版本,包括HDFS和MapReduce。在这个阶段,Hadoop开始被广泛应用于处理大规模数据和实现分布式计算。

4. Hadoop生态系统扩展(2012年至今):

2012年,Hadoop生态系统经历了扩展,引入了更多的组件和工具。一些重要的项目包括:

  • Hadoop 2.x版本: 引入了YARN(Yet Another Resource Negotiator),使Hadoop更灵活,能够支持不仅仅是MapReduce的计算模型。

  • Hive: 提供了类似SQL的查询语言,使用户能够通过类似于SQL的语法查询Hadoop中的数据。

  • Pig: 提供了一种类似脚本的语言,简化了在Hadoop上的数据处理。

  • HBase: 提供了一个分布式、面向列的NoSQL数据库。

  • Spark: 不仅替代了MapReduce,还引入了更多的内存计算,提高了性能。

5. Apache Hadoop 3.x版本(2017年至今):

Hadoop 3.x版本在性能、可靠性和扩展性方面进行了改进。它引入了一些新的特性,如Erasure Coding、支持GPU加速、Containerization等,以提升Hadoop的整体效能。

🐶2.3 hadoop的版本介绍

Hadoop三大发行版本:Apache、Cloudera、Hortonworks。

Apache版本最原始(最基础)的版本,对于入门学习最好。

Cloudera在大型互联网企业中用的较多。

Hortonworks文档较好。

Apache Hadoop

官网地址:Apache Hadoop

下载地址:Index of /dist/hadoop/common

Cloudera Hadoop

官网地址:CDH Product Download

下载地址:http://archive-primary.cloudera.com/cdh5/cdh/5/

(1)2008年成立的Cloudera是最早将Hadoop商用的公司,为合作伙伴提供Hadoop的商用解决方案,主要是包括支持、咨询服务、培训。

(2)2009年Hadoop的创始人Doug Cutting也加盟Cloudera公司。Cloudera产品主要为CDH,ClouderaManager,Cloudera Support

(3)CDH是Cloudera的Hadoop发行版,完全开源,比Apache Hadoop在兼容性,安全性,稳定性上有所增强。

(4)Cloudera Manager是集群的软件分发及管理监控平台,可以在几个小时内部署好一个Hadoop集群,并对集群的节点及服务进行实时监控。Cloudera Support即是对Hadoop的技术支持。

(5)Cloudera的标价为每年每个节点4000美元。Cloudera开发并贡献了可实时处理大数据的Impala项目。

Hortonworks Hadoop

官网地址:Enterprise Data Management Platforms & Products | Cloudera

下载地址:Product Downloads | Cloudera

(1)2011年成立的Hortonworks是雅虎与硅谷风投公司Benchmark Capital合资组建。

(2)公司成立之初就吸纳了大约25名至30名专门研究Hadoop的雅虎工程师,上述工程师均在2005年开始协助雅虎开发Hadoop,贡献了Hadoop80%的代码。

(3)雅虎工程副总裁、雅虎Hadoop开发团队负责人Eric Baldeschwieler出任Hortonworks的首席执行官。

(4)Hortonworks的主打产品是Hortonworks Data Platform(HDP),也同样是100%开源的产品,HDP除常见的项目外还包括了Ambari,一款开源的安装和管理系统。

(5)HCatalog,一个元数据管理系统,HCatalog现已集成到Facebook开源的Hive中。Hortonworks的Stinger开创性的极大的优化了Hive项目。Hortonworks为入门提供了一个非常好的,易于使用的沙盒。

(6)Hortonworks开发了很多增强特性并提交至核心主干,这使得Apache Hadoop能够在包括Window Server和Windows Azure在内的Microsoft Windows平台上本地运行。定价以集群为基础,每10个节点每年为12500美元。

🐶2.4 hadoop的常用端口号

名称

端口号

namenode内部通信端口

8020

Namenode HTTP UI

9870

MapReduce查看执行任务端口

8088

历史服务器通信端口

19888

🐶2.5 hadoop的设计目的

用户通过开发分布式程序,充分利用低廉价的硬件资源完成海量数据的存储运算,不仅仅能够完成数据的存储和运算,还要能保证数据的安全性可靠性

🐶2.6 hadoop的优势

1. 高可靠性

Hadoop底层维护多个数据副本,所以即使Hadoop某个计算元素或存储出现故障,也不会导致数据的丢失。

2. 高扩展性

当存储hdp集群的存储能力和运算资源不足时,可以横向的扩展机器节点来达到扩容和增强运算能力

3. 高效性

因为它以并行的方式工作,通过并行处理加快处理速度

4. 高容错性

Hadoop能够自动保存数据的多个副本,当有存储数据的节点宕机以后, 会自动的复制副本维持集群中副本的个数 ,并且能够自动将失败的任务重新分配。

5. 低成本

hadoop可以运行在廉价的机器上并行工作,达到高效,安全,效率于一身目的。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

使用vmware,在ubuntu18.04中使用笔记本的摄像头

步骤1:在windows中检查相机状态 win10系统中,在左下的搜索栏,搜索“相机”,点击进入即可打开相机,并正常显示图像。 注意:如果相机连接到了虚拟机,则不能显示正常。 步骤2:在ubuntu…

轻松调整视频时长,创意与技术的新篇章

传统的视频剪辑工具往往难以精确控制时间,而【媒体梦工厂】凭借其先进的算法和界面设计,让视频时长的调整变得简单而精确,助你释放无限的创意,用技术为你的创意插上翅膀,让每一秒都有意义。 所需工具: 一…

【Matlab】BP 神经网络时序预测算法

资源下载: https://download.csdn.net/download/vvoennvv/88681507 一,概述 BP 神经网络是一种常见的人工神经网络,也是一种有监督学习的神经网络。其全称为“Back Propagation”,即反向传播算法。BP 神经网络主要由输入层、隐藏层…

1、aigc图像相关

aigc图像相关 一、Diffusion webui 在autodl上部署一些问题二、lora和kohyass(1)角色模型(2)风格模型(3)dreambooth(4)模型合并(5)Lora加Adetail其他 三、sd …

数模混合SoC芯片中LEF2Milkyway的golden flow

在数模混合芯片中的项目中,特别是数字模块很少甚至只有一个简单的数字控制逻辑时,我们要做数字模块的后端实现时,通常模拟那边会问我们实现需要他们提供哪些数据。 通常来说,我们可以让模拟设计提供数字模块的GDS或LEF文件即可。…

【LeetCode每日一题】1185.一周中的第几天(模拟+调用库函数:三种方法)

2023-12-30 文章目录 一周中的第几天方法一:模拟思路步骤 方法二:调用库函数方法三:调用库函数 一周中的第几天 ​ 提示:给出的日期一定是在 1971 到 2100 年之间的有效日期。 方法一:模拟 思路 1.可以根据1970年的…

WPF+Halcon 培训项目实战(11):HS组件封装

文章目录 前言相关链接项目专栏运行环境匹配图片封装组件新增类库项目选择依赖顺序并添加Nuget修改原本矩形方法运行结果: 对矩形进行抽象封装抽象基类矩形抽象改造 圆形抽象封装代码运行结果 前言 为了更好地去学习WPFHalcon,我决定去报个班学一下。原…

2023 搞懂git 工作目录---暂存区---本地仓库---版本库

最近了解了下git的底层原理(大神录制的视频放在最下方),记录下: 工作区 就是存放待提交文件的目录(下图图解标注)比如pyhon_test目录暂存区 .git目录下的index文件 对应的指令 git add本地仓库 .gi…

数据库的学习笔记——第一篇

SQL通用语法 SQL语句 DDL 数据定义 数据库、表字段 DML 数据操作 增删改 DQL 数据查询 查询表中记录 DCL 数据控制 创建用户、控制用户权限 DLL语句——数据库操作 SHOW DATABASES; # 查询数据库SELECT DATABASE(); # 查询当前数据库CREATE DATABASE [IF …

链表的一些典型问题

求链表的中间节点/倒数第K个节点 等类似的随机访问,可以考虑用快慢指针 例 求链表的中间节点 可以定义两个指针,一个一次走两步一个一次走一步,当走的快的走到NULL时,走的慢的就是链表的中间节点。(此法求出的偶数个…

uni-app uni-app内置组件

锋哥原创的uni-app视频教程: 2023版uniapp从入门到上天视频教程(Java后端无废话版),火爆更新中..._哔哩哔哩_bilibili2023版uniapp从入门到上天视频教程(Java后端无废话版),火爆更新中...共计23条视频,包括:第1讲 uni…

Oracle OCP怎么样线上考试呢

大家好!今天咱们就来聊聊Oracle OCP这个让人又爱又恨的认证。为啥说又爱又恨呢?因为它既是IT界的“金字招牌”,又是一块硬骨头,不是那么容易啃下来的。好了,废话不多说,我们直奔主题,来看看关于…

Android Studio下载gradle失败

1、打开Android Studio设置Gradle的地方,点击左上角的File->Settings查看gradle存放路径 C:\Users\Administrator.gradle\wrapper\dists\gradle-5.4.1-all\3221gyojl5jsh0helicew7rwx 2、找到正在下载的gradle版本,Android Studio取消下载gradle&…

Spark编程实验四:Spark Streaming编程

目录 一、目的与要求 二、实验内容 三、实验步骤 1、利用Spark Streaming对三种类型的基本数据源的数据进行处理 2、利用Spark Streaming对Kafka高级数据源的数据进行处理 3、完成DStream的两种有状态转换操作 4、把DStream的数据输出保存到文本文件或MySQL数据库中 四…

利用 IntelliJ IDEA 整合 GitHub 实现项目版本控制与协作管理

目录 前言1 设置GitHub登录账号2 将项目分享到GitHub3 IntelliJ IDEA 中导入Github项目4 往GitHub推送代码4.1 Commit Change(提交到本地库)4.2 Git -> Repository -> Push(推送到远程库) 5 拉取远程库代码到本地6 克隆远程…

CSS之元素转换

我想大家在写代码时有一个疑问&#xff0c;块级元素可以转换成其他元素吗&#xff1f; 让我为大家介绍一下元素转换 1.display:block(转换成块元素) display&#xff1a;block可以把我们的行内元素或者行内块元素转换成块元素 接下来让我为大家演示一下&#xff1a; <!DO…

sklearn 中matplotlib编制图表

代码 # 导入pandas库&#xff0c;并为其设置别名pd import pandas as pd import matplotlib.pyplot as plt# 使用pandas的read_csv函数读取名为iris.csv的文件&#xff0c;将数据存储在iris_data变量中 iris_data pd.read_csv(data/iris.txt,sep\t)# 使用groupby方法按照&quo…

gitlab 11.11.8的备份与恢复及500错误的修复

gitlab已经集成了非常方便的备份和恢复命令&#xff0c;只要我们执行这些命令就能完成gitlab的备份与恢复了。 我想gitlab备份与恢复的目的无非就是将已经运行了很久的旧的gitlab服务&#xff0c;迁移到新的服务器上。如果你旧的gitlab上项目很少&#xff0c;就需要考虑迁移服…

Spring知识02

1、这边是做单元测试的 2、项目部署上线的时候需要把Test那里注解掉 3、pom.xml的坐标系&#xff0c;用来导出包给别人用 4、项目名称&#xff0c;artifactId&#xff0c;name属性名保持一致 5、maven中央仓库那里可以看到导包之后会随着附加的内容 6、class.getSingleName获取…

初识javaWeb

一、JavaWeb是什么&#xff1f; 1、概念 javaWeb指的是使用java语言进行互联网领域项目开发的技术栈——进行web项目开发所需的技术的集合。 -Web前端——在浏览器中用户可以看到的网页 -Web后端——为前端提供数据的程序 2、Web项目 java语言是可以进行多种类型的项目开发&a…