大数据基础之初识Hadoop

简介: 你好看官,里面请!今天笔者讲的是大数据基础:初识Hadoop。不懂可以在评论区留言,我看到会及时回复。 注意:本文仅用与学习参考,不可用于商业用途。

什么是 Hadoop

1、Hadoop 简介

Hadoop 是 Apache 软件基金会 旗下的一个 开源分布式计算平台。以分布式文件系统 HDFS(Hadoop Distributed File System) 和 MapReduce(Google MapReduce 的开源实现) 为核心的 Hadoop,为用户提供了系统底层透明的分布式基础构架。

HDFS 的高容错性、高伸缩性、高性能等优点允许用户将 Hadoop 部署在廉价的硬件上,形成分布式系统,它负责数据的分布式存储和备份,文件写入后只能读取,不能修改;MapReduce 分布式编程模型允许用户在不了解分布式系统底层细节的情况下开发并行应用程序,包括 Map(映射)和 Reduce(规约)两个过程。

用户可以利用 Hadoop 轻松地组织计算机资源,从而搭建自己的分布式计算平台,并且可以充分利用集群的计算和存储能力,完成海量数据的处理。

简而言之,Hadoop 是适合大数据的分布式存储和计算的平台。狭义上来说,hadoop 就是单独指代 hadoop 这个软件;广义上来说,hadoop 指代大数据的一个生态圈,包括很多其他的软件。从上面的 Hadoop 介绍可以总结出 Hadoop 具有如下几个概念。

Hadoop 是一个框架。

Hadoop 适合处理大规模数据。

Hadoop 被部署在一个集群上。

2、Hadoop 的发展历史

Hadoop 的发展距今不足 20 年,不能算是一个有丰厚底蕴或是新兴的技术,但是为大数据做出的贡献是巨大的。下面介绍 Hadoop 的发展历史。

(1)Hadoop 的起源

Hadoop 最早起源于 Lucene 的子项目 Nutch。Nutch 的设计目标是构建一个大型的全网搜索引擎,包括网页抓取、索引、查询等功能,但随着抓取网页数量的增加,遇到了严重的可扩展性问题——如何解决数十亿网页的存储和索引问题。2003年、2004年谷歌发表的三篇论文为该问题提供了可行的解决方案:

1、分布式文件系统(GFS),可用于处理海量网页的存储。

2、分布式计算框架(MapReduce),可用于处理海量网页的索引计算问题。

3、分布式数据存储系统(BigTable),用来处理海量的数据的一种非关系型的数据库。

谷歌虽然没有将其核心技术开源,但是这三篇论文已经向开源社区的 大牛们 指明了方向,一位大牛:Doug Cutting,使用 Java 语言对 Google 的云计算核心技术(主要是 GFS 和 MapReduce )做了开源的实现,使 Nutch 性能飙升。随后 Yahoo 招聘 Doug Cutting 继续完善 Hadoop 项目。2005年,Hadoop 作为 Lucene 的子项目 Nutch 的一部分正式引入 Apache 基金会。2006年2月被分离出来,成为一套完整独立的软件,起名为 Hadoop。到2008年1月,Hadoop 成为 Apache 顶级项目(同年,cloudera 公司成立,全球知名企业级数据管理和数据分析平台提供商),迎来了它的快速发展期。

Hadoop 的成长过程为:Lucene ⇒ Nutch ⇒ Hadoop

Hadoop的核心组件的演变关系:

GFS–>HDFS

Google MapReduce–>Hadoop MapReduce

BigTable–>HBase

(2)Hadoop的发展历程。Hadoop 的发展历程如下图所示:

image.png

接下来看一下 Hadoop 的发行版,什么叫发行版呢?举一个大家接触比较多的例子,目前手机操作系统有两大阵营,一个是苹果的 IOS,还有一个是谷歌的 Android。IOS 是闭源的,也就不存在多个发行版了,如果你基于 IOS 改造一下,弄一个新的手机系统出来,会被苹果告破产的。所以 IOS 是没有其它发行版的,只有官方这一个版本。

Android 是开源的,所以基于这个系统,很多手机厂商都会对它进行封装改造,因为这些手机厂商会感觉原生的 Android 系统的界面看起来比较 low,或者某一些功能不太适合中国人的使用习惯,所以他们就会进行改造,例如国内的魅族、小米、锤子这些手机厂商都基于 Android 打造了自己的手机操作系统,那这些就是 Android 系统的一些发行版。

那针对 Hadoop 也是一样的,目前 Hadoop 已经演变为大数据的代名词,形成了一套完善的大数据生态系统,并且 Hadoop 是 Apache 开源的,它的开源协议决定了任何人都可以对其进行修改,并作为开源或者商业版进行发布/销售。

所以目前 Hadoop 发行版非常的多,有华为发行版、Intel 发行版、Cloudera 发行版 CDH、Hortonworks 发行版 HDP,这些发行版都是基于 Apache Hadoop 衍生出来的。在这里我们挑几个重点的分析一下:

首先是官方原生版本:Apache Hadoop。Apache 是一个 IT 领域的公益组织,类似于红十字会,Apache 这个组织里面的软件都是开源的,大家可以随便使用,随便修改,后续博主博文中的学习笔记 99% 的大数据技术框架都是 Apache 开源的,所以在这里我们会学习原生的 Hadoop,只要掌握了原生 Hadoop 使用,后期想要操作其它发行版的 Hadoop 也是很简单的,其它发行版都是会兼容原生 Hadoop 的,这一点读者不用担心。 原生 Hadoop 的缺点是没有技术支持,遇到问题需要自己解决,或者通过官网的社区提问,但是回复一般比较慢,也不保证能解决问题, 还有一点就是原生 Hadoop 搭建集群的时候比较麻烦,需要修改很多配置文件,如果集群机器过多的话,针对运维人员的压力是比较大的,这块等后面读者自己在搭建集群的时候大家就可以感受到了。

那接着往下面看 Cloudera Hadoop(CDH)。注意了,CDH 是一个商业版本,它对官方版本做了一些优化,提供收费技术支持,提供界面操作,方便集群运维管理 CDH 目前在企业中使用的还是比较多的,虽然 CDH 是收费的,但是 CDH 中的一些基本功能是不收费的,可以一直使用,高级功能是需要收费才能使用的,如果不想付费,也能凑合着使用。

还有一个比较常用的是 HortonWorks(HDP)。它呢,是开源的,也提供的有界面操作,方便运维管理,一般互联网公司偏向于使用这个。注意了,再爆一个料,最新消息,目前 HDP 已经被 CDH 收购,都是属于一个公司的产品,后期 HDP 是否会合并到 CDH 中,还不得而知,具体还要看这个公司的运营策略了。

最终的建议:建议在实际工作中搭建大数据平台时选择 CDH 或者 HDP,方便运维管理,要不然,管理上千台机器的原生 Hadoop 集群,运维同学是会哭的。注意了,学习过程中我们使用原生 Hadoop,在最后博主会说一下 CDH 和 HDP 的使用。

目前 Hadoop 经历了三个大的版本

从 1.x 到 2.x 再到 3.x。每一个大版本的升级都带来了一些质的提升,下面我们先从架构层面分析一下这三大版本的变更:

image.png

从 Hadoop1.x 升级到 Hadoop2.x,架构发生了比较大的变化,这里面的 HDFS 是分布式存储,MapRecue 是分布式计算,咱们前面说了 Hadoop 解决了分布式存储和分布式计算的问题,对应的就是这两个模块。在 Hadoop2.x 的架构中,多了一个模块 YARN,这个是一个负责资源管理的模块,那在 Hadoop1.x 中就不需要进行资源管理吗?也是需要的,只不过是在 Hadoop1.x 中,分布式计算和资源管理都是 MapReduce 负责的,从 Hadoop2.x 开始把资源管理单独拆分出来了,拆分出来的好处就是,YARN 变成了一个公共的资源管理平台,在它上面不仅仅可以跑 MapReduce 程序,还可以跑很多其他的程序,只要你的程序满足 YARN 的规则即可。Hadoop 的这一步棋走的是最好的,这样自己摇身一变就变成了一个公共的平台,由于它起步早,占有的市场份额也多,后期其它新兴起的计算框架一般都会支持在 YARN 上面运行,这样 Hadoop 就保证了自己的地位。后面学习笔记中的Spark、Flink 等计算框架都是支持在 YARN 上面执行的,并且在实际工作中也都是在 YARN 上面执行。Hadoop3.x 的架构并没有发生什么变化,但是它在其他细节方面做了很多优化。在这里我挑几个常见点说一下:

最低 Java 版本要求从 Java7 变为 Java8

在 Hadoop 3.x 中,HDFS 支持纠删码,纠删码是一种比副本存储更节省存储空间的数据持久化存储方法,使用这种方法,相同容错的情况下可以比之前节省一半的存储空间。详细介绍在这里: https://hadoop.apache.org/docs/r3.0.0/hadoop-project-dist/hadoop-hdfs/HDFSErasureCoding.html

Hadoop 2.x 中的 HDFS 最多支持两个 NameNode,一主一备,而 Hadoop3.x 中的 HDFS 支持多个 NameNode,一主多备,详细介绍在这里: https://hadoop.apache.org/docs/r3.0.0/hadoop-project-dist/hadoop-hdfs/HDFSErasureCoding.html

MapReduce 任务级本地优化,MapReduce 添加了映射输出收集器的本地化实现的支持。对于密集型的洗牌操作(shuffle-intensive)jobs,可以带来 30% 的性能提升,详细介绍在这里: https://issues.apache.org/jira/browse/MAPREDUCE-2841

修改了多重服务的默认端口,Hadoop 2.x 中一些服务的端口和 Hadoop3 中是不一样的

总结: Hadoop 3.x 和 2.x 之间的主要区别在于新版本提供了更好的优化和可用性。详细的优化点也可以参考官网内容: https://hadoop.apache.org/docs/r3.0.0/index.html

(3)Hadoop 的名字起源。Hadoop 名字不是一个缩写的单词,而是一个人为造出来的词。是以 Hadoop 之父 Doug Cutting 儿子的毛绒玩具象命名的。所以 Hadoop 的标志为一头小象,如下图所示:

所以我们需要不断努力地学习,等以后我们也达到这种高度的时候,在实现一个框架的时候用自己的名字来命名那就很炫酷了。

3、Hadoop 的特点

Hadoop 是一个能够让用户轻松架构和使用的分布式计算平台。用户可以轻松地在 Hadoop 上开发和运行处理海量数据的应用程序。它主要有以下几个优点:

高可靠性。数据存储不仅有多个备份,而且集群设置在不同机器上,可以防止一个节点宕机而造成的机器损坏。

高扩展性。Hadoop 是在可用的计算机集群间分配数据并完成计算任务。为集群添加新的节点并不复杂,所以集群可以很容易进行节点的扩展,扩大集群。

高效性。Hadoop 能够在节点之间动态地移动数据,在数据所在节点进行并发处理,并保证各个节点的动态平衡,因此处理速度非常快。

高容错性。Hadoop 的分布式文件系统 HDFS 在存储文件时会在多个节点或多台机器上存储文件的备份副本,当读取该文档出错或某一台机器宕机了,系统会调用其他节点上的备份文件,保存程序顺利运行。如果启动的任务失败,Hadoop 会重新运行该任务或启用其他任务来完成这个任务没有完成的部分。

低成本。Hadoop 是开源的,不需要支付任何费用即可下载安装使用,节省了购买软件的成本。此外,Hadoop 依赖于社区服务,因此它的成本比较低,任何人都可以使用。

可构建在廉价机器上。Hadoop 对机器的配置要求不高,大部分普通商用服务器就可以满足要求。

Hadoop 核心

在上面介绍过,以 Hadoop 为中心形成了一个生态圈,如下图所示:

image.png

1、分布式文件系统——HDFS

1、HDFS 架构及简介

HDFS(Hadoop Distributed File System)是 Hadoop 项目的核心子项目,主要负责集群数据的存储与读取,HDFS 是一个主/从(Master/Slave) 体系结构的分布式文件系统。HDFS 支持传统的层次型文件组织结构,用户或者应用程序可以创建目录,然后将文件保存在这些目录中。文件系统名字空间的层次结构和大多数现有的文件系统类似,可以通过文件路径对文件执行创建、读取、更新和删除操作。但是由于分布式存储的性质,它又和传统的文件系统有明显的区别。HDFS 的基本架构如下图所示:

image.png

HDFS 文件系统主要包括一个 NameNode、一个 Secondary NameNode 和多个 DataNode,其中 NameNode、Secondary NameNode 运行在 Master 节点,DataNode 运行在 Slave 节点上。下面分别介绍。

元数据。元数据不是具体的文件内容,它有三类重要信息:第一类是文件和目录自身的属性信息,例如文件名、目录名、父目录信息、文件大小、创建时间和修改时间等;第二类记录文件内容存储的相关信息,例如文件分块情况、副本个数、每个副本所在的DataNode信息等;第三类用来记录HDFS中所有DataNode的信息,用于DataNode管理。

NameNode。NameNode 用于存储元数据以及处理客户端发出的请求。在 NameNode 中存放元数据的文件是 fsimage 文件。在系统运行期间,所有对元数据的操作都保存在内存中,并被持久化到另一个文件 edits 中。当 NameNode 启动的时候,fsimage 会被加载到内存,然后对内存里的数据执行 edits 所记录的操作,以确保内存所保留的数据处于最新的状态。fsimage与edits数据保存的过程如下图所示:

image.png

Secondary NameNode。Secondary NameNode 用于备份 NameNode 的数据,周期性将 edits 文件合并到 fsimage 文件并在本地备份,将新的 fsimage 文件存储到 NameNode,取代原来的 fsimage,删除 edits 文件,创建一个新的 edits 继续存储文件修改状态。Secondary NameNode 的工作过程如下图所示:

image.png

DataNode。DataNode 是真正存储数据的地方。在 DataNode 中,文件以数据块的形式进行存储。当文件传到 HDFS 端时以 128MB 的数据块将文件进行切割,将每个数据块存到不同的或相同的 DataNode 并且备份副本,一般默认 3 个,NameNode 会负责记录文件的分块信息,确保在读取该文件时可以找到并整合所有块。

数据块。文件在上传到 HDFS 时根据系统默认文件块大小把文件分成一个个数据块,Hadoop 2.x 开始默认 128MB 为一个数据块,比如要存储大小为 129MB 的文件时,则被分成两个数据块来存储。数据块会被存储到各个节点,每个数据块都会备份副本。

2、HDFS分布式原理

分布式系统会划分成多个子系统或模块,各自运行在不同的机器上,子系统或模块之间通过网络通信进行协作,实现最终的整体功能。利用多个节点共同协作完成一项或多项具体业务功能的系统就是分布式系统。

那什么是分布式文件系统呢?分布式文件系统是分布式系统的一个子集,其解决的问题就是数据存储。也就是说,分布式文件系统是横跨在多台计算机上的存储系统,存储在分布式文件系统上的数据自动分布在不同的节点上。

而 HDFS 作为一个分布式文件系统,主要体现在以下三个方面。

HDFS 并不是单机文件系统,它是分布在多个集群节点上的文件系统。节点之间通过网络通信进行协作,提供多个节点的文件信息,让每个用户都可以看到文件系统的文件,让多机器上的多用户分享文件和存储空间。

文件存储时被分布在多个节点上,需注意数据存储不是以文件为单位进行存储的,而是将一个文件分成一个或多个数据块存储。而数据块在存储时并不是都存储在一个节点上,而是被分布存储在各个节点中,并且数据块会在其他节点存储副本。

数据从多个节点读取。读取一个文件时,从多个节点中找到该文件的数据块,分布读取所有数据块,直到最后一个数据块读取完毕。

3、HDFS特点

首先介绍 HDFS 的优点。

高容错性。HDFS上传的数据自动保存多个副本,可以通过增加副本的数据来增加它的容错性。如果某一个副本丢失,HDFS 会复制其他机器上的副本,而我们不必关注它的实现。

适合大数据的处理。HDFS 能够处理 GB、TB 甚至 PB 级别的数据,规模达百万,数量非常大。(1PB=1024TB、1TB=1014GB)

流式数据访问。HDFS 以流式数据访问模式来存储超大文件,一次写入,多次读取,即文件一旦写入,则不能修改,只能增加。这样可以保持数据的一致性。

除此之外,HDFS 有以下的缺点。

不适合低延迟数据访问。如果要处理一些用户要求时间比较短的低延迟应用请求,则 HDFS 不适合,因为 HDFS 是为了处理大型数据集分析任务而设计的,目的是为达到高的数据吞吐量,但这是以高延迟作为代价来换取的。

无法高效存储大量小文件。因为 NameNode 会把文件系统的元数据放置在内存中,所以文件系统所能容纳的文件数目是由 NameNode 的内存大小来决定的,即每存入一个文件都会在 NameNode 中写入文件信息。如果写入大多小文件的话,NameNode 内存会被占满而无法写入文件信息。而与多个小文件大小相同的单一文件只会写入一次文件信息到内存中,所以更适合大文件存储。

不支持多用户写入及任意修改文件。在 HDFS 的一个文件中只有一个写入者,而且写操作只能在文件末尾完成,即只能执行追加操作。目前 HDFS 还不支持多个用户对同一文件的写操作,以及在文件任意位置进行修改。

2、分布式计算框架——MapReduce

(1)MapReduce 简介

MapReduce 是 Hadoop 核心计算框架,适用于大规模数据集(大于1TB)并行运算的编程模型,包括 Map(映射)和 Reduce(规约) 两部分。

当启动一个 MapReduce 任务时,Map 端会读取 HDFS 上的数据,将数据映射成所需要的键值对类型并传到 Reduce 端。Reduce 端接收 Map 端传过来的键值对类型的数据,根据不同键进行分组,对每一组键相同的数据进行处理,得到新的键值对并输出到 HDFS,这就是 MapReduce 的核心思想。

(2)MapReduce工作原理

MapReduce 作业执行流程如下图所示:

image.png


一个完整的 MapReduce 过程包含数据的输入与分片、Map 阶段数据处理、Reduce 阶段数据处理、数据输出等阶段,下面分别介绍。

读取输入数据。MapReduce 过程中的数据是从 HDFS 分布式文件系统中读取的。文件在上传到 HDFS 时,一般按照 128MB 分成了几个数据块,所以在运行 MapReduce 程序时,每个数据块都会生成一个 Map,但是也可以通过重新设置文件分片大小调整 Map 的个数,在运行 MapReduce 时会根据所设置的分片大小对文件重新分割(Split),一个分片大小的数据块就会对应一个Map。

Map 阶段。程序有一个或多个 Map,由默认存储或分片个数决定。针对 Map 阶段,数据以键值对的形式读入,键的值一般为每行首字符与文件最初始位置的偏移量,即中间所隔字符个数,值为这一行的数据记录。根据需求对键值对进行处理,映射成新的键值对,将新的键值对传到 Reduce 端。

Shuffle/Sort 阶段:此阶段是指从 Map 输出开始,传送 Map 输出到 Reduce 作为输入的过程。该过程会将同一个 Map 中输出的键相同的数据先进行一步整合,减少传输的数据量,并且在整合后将数据按照键排序。

Reduce 阶段:Reduce 任务也可以有多个,按照 Map 阶段设置的数据分区确定,一个分区数据被一个 Reduce 处理。针对每一个 Reduce 任务,Reduce 会接收到不同 Map 任务传来的数据,并且每个 Map 传来的数据都是有序的。一个 Reduce 任务中的每一次处理都是针对所有键相同的数据,对数据进行规约,以新的键值对输出到 HDFS。

根据上述内容分析,MapReduce 的本质可以用一张图完整地表现出来,如下图所示:

image.png

MapReduce 的本质就是把一组键值对 <K1,V1> 经过 Map 阶段映射成新的键值对 <K2,V2>,接着经过 Shuffle/Sort 阶段进行排序和 洗牌,把键值对排序,同时把相同的键值整合,最后经过 Reduce 阶段,把整合后的键值对组进行逻辑处理,输出新的键值对 <K3,V3>。


3、集群资源管理器——YARN

(1)YARN 简介

Hadoop 的 MapReduce 架构称为 YARN(Yet Another Resource Negotiator,另一种资源协调者),是效率更高的资源管理核心。

(2)YARN 的基本构架

YARN 主要包含三大模块:Resource Manager(RM)、Node Manager(NM)、Application Master(AM)。其中,Resource Manager 负责所有资源的监控、分配和管理;Application Master 负责每一个具体应用程序的调度和协调;Node Manager 负责每一个节点的维护。对于所有的 applications,RM 拥有绝对的控制权和对资源的分配权。而每个 AM 则会和 RM 协商资源,同时和 Node Manager 通信来执行和监控 task。YARN 的框架图如下图所示:

image.png

从上图中可以看出:

在 Client 客户端,用户会向 Resource Manager 请求执行运算(或执行任务)。

在 NameNode 会有 Resource Manager 统筹管理运算的请求。

在其他的 DataNode 会有 Node Manager 负责运行,以及监督每一个任务(task),并且向 Resource Manager 汇报状态。

Hadoop 常用组件

除了上面介绍的 Hadoop 三大核心组件之外,Hadoop 生态圈中还有许多组件,这些组件各有特点,共同为 Hadoop 的相关工程服务。由于大部分组建的 LOGO 选用了动物图形,因此 Hadoop 的生态系统就像是一群动物在狂欢,如下图所示:

image.png

下面介绍 Hadoop 的常用组件,为了方便理解以下按照功能进行了分类,并且把较为流行的排在了前面介绍,如下表所示:

image.png

Hadoop 在国内外的应用情况

Hadoop 是一个开源的高效云计算基础架构平台,其不仅仅在云计算领域用途广泛,还可以支撑搜索引擎服务,作为搜索引擎底层的基础架构系统,同时在海量数据处理、数据挖掘、机器学习、科学计算等领域都越来越受到青睐。

在国外,Hadoop 的应用十分广泛,例如 Yahoo、Facebook、Adobe、IBM等等。例如,Yahoo 是 Hadoop 的最大支持者。Yahoo 的 Hadoop 应用主要包括:广告分析系统、用户行为分析、Web 搜索、反垃圾邮件系统等。Facebook 使用 Hadoop 存储内部日志与多维数据,并以此作为报告、分析和机器学习的数据源。Adobe 主要使用 Hadoop 及 HBase,用于支撑社会服务计算,以及结构化的数据存储和处理。

而国内,互联网公司是 Hadoop 在国内的主要使用力量,有以下公司:阿里巴巴、百度、腾讯、网易、金山、华为、中国移动等。阿里巴巴、腾讯都是国内最先使用 Hadoop 的公司。

中科研究所举办过几次 Hadoop 技术大会,加速了 Hadoop 在国内的发展。


相关实践学习
基于MaxCompute的热门话题分析
本实验围绕社交用户发布的文章做了详尽的分析,通过分析能得到用户群体年龄分布,性别分布,地理位置分布,以及热门话题的热度。
SaaS 模式云数据仓库必修课
本课程由阿里云开发者社区和阿里云大数据团队共同出品,是SaaS模式云原生数据仓库领导者MaxCompute核心课程。本课程由阿里云资深产品和技术专家们从概念到方法,从场景到实践,体系化的将阿里巴巴飞天大数据平台10多年的经过验证的方法与实践深入浅出的讲给开发者们。帮助大数据开发者快速了解并掌握SaaS模式的云原生的数据仓库,助力开发者学习了解先进的技术栈,并能在实际业务中敏捷的进行大数据分析,赋能企业业务。 通过本课程可以了解SaaS模式云原生数据仓库领导者MaxCompute核心功能及典型适用场景,可应用MaxCompute实现数仓搭建,快速进行大数据分析。适合大数据工程师、大数据分析师 大量数据需要处理、存储和管理,需要搭建数据仓库?学它! 没有足够人员和经验来运维大数据平台,不想自建IDC买机器,需要免运维的大数据平台?会SQL就等于会大数据?学它! 想知道大数据用得对不对,想用更少的钱得到持续演进的数仓能力?获得极致弹性的计算资源和更好的性能,以及持续保护数据安全的生产环境?学它! 想要获得灵活的分析能力,快速洞察数据规律特征?想要兼得数据湖的灵活性与数据仓库的成长性?学它! 出品人:阿里云大数据产品及研发团队专家 产品 MaxCompute 官网 https://www.aliyun.com/product/odps&nbsp;
相关文章
|
8天前
|
分布式计算 Hadoop 分布式数据库
Hadoop生态系统介绍(二)大数据技术Hadoop入门理论系列之一----hadoop生态圈介绍
Hadoop生态系统介绍(二)大数据技术Hadoop入门理论系列之一----hadoop生态圈介绍
28 2
|
4天前
|
存储 分布式计算 Hadoop
Spark和Hadoop都是大数据处理领域的重要工具
【6月更文挑战第17天】Spark和Hadoop都是大数据处理领域的重要工具
33 7
|
3天前
|
分布式计算 资源调度 Hadoop
大数据Hadoop集群部署与调优讨论
大数据Hadoop集群部署与调优讨论
|
4天前
|
存储 分布式计算 Hadoop
Hadoop是如何支持大数据处理的?
【6月更文挑战第17天】Hadoop是如何支持大数据处理的?
20 1
|
6天前
|
分布式计算 Hadoop 大数据
大数据技术:Hadoop与Spark的对比
【6月更文挑战第15天】**Hadoop与Spark对比摘要** Hadoop是分布式系统基础架构,擅长处理大规模批处理任务,依赖HDFS和MapReduce,具有高可靠性和生态多样性。Spark是快速数据处理引擎,侧重内存计算,提供多语言接口,支持机器学习和流处理,处理速度远超Hadoop,适合实时分析和交互式查询。两者在资源占用和生态系统上有差异,适用于不同应用场景。选择时需依据具体需求。
|
8天前
|
分布式计算 Hadoop 大数据
大数据--hadoop集群搭建
大数据--hadoop集群搭建
14 0
|
8天前
|
分布式计算 资源调度 监控
【大数据】Hadoop 2.X和1.X升级优化对比
【大数据】Hadoop 2.X和1.X升级优化对比
23 0
|
11天前
|
分布式计算 DataWorks NoSQL
MaxCompute产品使用合集之一张表如果想只保留近七天的数据,应该如何设置
MaxCompute作为一款全面的大数据处理平台,广泛应用于各类大数据分析、数据挖掘、BI及机器学习场景。掌握其核心功能、熟练操作流程、遵循最佳实践,可以帮助用户高效、安全地管理和利用海量数据。以下是一个关于MaxCompute产品使用的合集,涵盖了其核心功能、应用场景、操作流程以及最佳实践等内容。
|
11天前
|
存储 分布式计算 大数据
MaxCompute产品使用合集之是否支持创建OSS外部表为分区表,并访问OSS上以分区方式存储的数据
MaxCompute作为一款全面的大数据处理平台,广泛应用于各类大数据分析、数据挖掘、BI及机器学习场景。掌握其核心功能、熟练操作流程、遵循最佳实践,可以帮助用户高效、安全地管理和利用海量数据。以下是一个关于MaxCompute产品使用的合集,涵盖了其核心功能、应用场景、操作流程以及最佳实践等内容。
|
11天前
|
分布式计算 DataWorks 关系型数据库
DataWorks操作报错合集之数据源同步时,使用脚本模式采集mysql数据到odps中,使用querySql方式采集数据,在脚本中删除了Reader中的column,但是datax还是报错OriginalConfPretreatmentUtil - 您的配置有误。如何解决
DataWorks是阿里云提供的一站式大数据开发与治理平台,支持数据集成、数据开发、数据服务、数据质量管理、数据安全管理等全流程数据处理。在使用DataWorks过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。