
Hadoop
文章平均质量分 83
ccj_zj
这个作者很懒,什么都没留下…
展开
-
Hadoop的Shuffle过程
概述为了让Reduce过程可以并行处理Map结果,必须对Map的输出进行一定的排序和分割,然后再交给对应的Reduce,而这个将Map输出进行进一步整理并交给Reduce的过程就成为了Shuffle。总的来说,shuffle过程包含在Map和Reduce两端中。在Map端的shuffle过程是对Map的结果进行分区(partition),排序(sort)和溢写(spill),然后将属于同一个划分的输原创 2017-07-30 10:32:32 · 551 阅读 · 0 评论 -
MapReduce整体流程
下面讲解这八个流程 Inputformat——》map——》(combine)——》partition——》copy&merge——》sort——》reduce——》outputformatFileSplit:文件的子集--文件分割体0. 简介:这篇文档描述在hadoo转载 2017-07-08 10:21:06 · 310 阅读 · 0 评论 -
Hadoop NameNode 高可用 (High Availability) 实现解析
NameNode 高可用整体架构概述在 Hadoop 1.0 时代,Hadoop 的两大核心组件 HDFS NameNode 和 JobTracker 都存在着单点问题,这其中以 NameNode 的单点问题尤为严重。因为 NameNode 保存了整个 HDFS 的元数据信息,一旦 NameNode 挂掉,整个 HDFS 就无法访问,同时 Hadoop 生态系统中依赖于 HDFS 的各个组转载 2017-08-23 10:44:27 · 457 阅读 · 0 评论 -
Hive基本操作(三)
InsertInserting data into table from queriesStandard syntax:INSERT OVERWRITE TABLE tablename1 [PARTITION (partcol1=val1, partcol2=val2 ...)] select_statement1 FROM from_statement Hive extension原创 2017-08-22 23:16:41 · 634 阅读 · 0 评论 -
Hive基本操作(二)
Alter Table1 Add PartitionsALTER TABLE table_name ADD [IF NOT EXISTS] partition_spec [ LOCATION 'location1' ] partition_spec [ LOCATION 'location2' ] ...partition_spec: : PARTITION (partition原创 2017-08-19 10:35:38 · 419 阅读 · 0 评论 -
MapReduce全局共享数据
由于继承Mapper基类的Map阶段类和继承Reducer基类的Reduce阶段类的运行都是独立的,并不像代码看起来那样会共享同一个Java虚拟机的资源,所以不能直接使用代码级别的全局变量。下面介绍几种在MapReduce编程中相对有效的设置全局变量的方法。1、读写HDFS文件在MapReduce框架中,Map task和Reduce task都运行在Hadoop集群的节点上,所以它们可以通过读写原创 2017-08-04 21:57:48 · 1891 阅读 · 0 评论 -
Hadoop版本
(1) Hadoop 1.0第一代hadoop,由分布式存储系统HDFS和分布式计算框架MapReduce组成,其中,HDFS由一个NameNode和多个DataNode组成,MapReduce由一个JobTracker和多个TaskTracker组成,对应Hadoop版本为Hadoop 1.x和0.21.X,0.22.x。(2) Hadoop 2.0第二代Hadoop,为克服Hadoop 1.0转载 2017-08-04 16:35:10 · 467 阅读 · 0 评论 -
Hive基本操作(一)
create table 1、1总述 CREATE TABLE 创建一个指定名字的表。如果相同名字的表已经存在,则抛出异常;用户可以用 IF NOT EXIST 选项来忽略这个异常。 EXTERNAL 关键字可以让用户创建一个外部表,在建表的同时指定一个指向实际数据的路径(LOCATION),Hive 创建内部表时,会将数据移动到数据仓库指向的路径;若创建外部表,仅记录原创 2017-08-17 19:54:56 · 515 阅读 · 0 评论 -
MapReduce任务的优化
1、任务调度 任务调度是Hadoop中非常重要的一环,这个优化又涉及两个方面的内容。计算方面:Hadoop总会优先将任务分给空闲的机器,使得所有任务能公平地分享系统资源。IO方面:Hadoop会尽量将Map任务分配给InputSplit所在的机器,以减少网络IO的消耗。2、数据预处理与InputSplit的大小 MapReduce任务擅长处理少量的大数据,而在处理大量的小数据时,mapreduc原创 2017-07-25 15:31:00 · 554 阅读 · 0 评论 -
Hive结构
HIVE结构 Hive 是建立在 Hadoop 上的数据仓库基础构架。它提供了一系列的工具,可以用来进行数据提取转化加载(ETL),这是一种可以存储、查询和分析存储在 Hadoop 中的大规模数据的机制。Hive 定义了简单的类 SQL 查询语言,称为 QL,它允许熟悉 SQL 的用户查询数据。同时,这个语言也允许熟悉 MapReduce 开发者的开发自定义的 mapper 和 red原创 2017-08-17 09:46:17 · 259 阅读 · 0 评论 -
Hbase适合场景
当我们对于数据结构字段不够确定或杂乱无章很难按一个概念去进行抽取的数据适合用使用什么数据库?答案是什么,如果我们使用的传统数据库,肯定留有多余的字段,10个不行,20个,但是这个严重影响了质量。并且如果面对大数据库,pt级别的数据,这种浪费更是严重的,那么我们该使用是什么数据库?hbase是个不错的选择,那么我们对于hbase还存在下列问题:1.Column Family代表什么?2.转载 2017-08-16 23:04:53 · 699 阅读 · 0 评论 -
Hbase原理、基本概念、基本架构
概述HBase是一个构建在HDFS上的分布式列存储系统;HBase是基于Google BigTable模型开发的,典型的key/value系统;HBase是Apache Hadoop生态系统中的重要一员,主要用于海量结构化数据存储;从逻辑上讲,HBase将数据按照表、行和列进行存储。与hadoop一样,Hbase目标主要依靠横向扩展,通过不断增加廉价的商用服务器,来转载 2017-08-16 22:16:43 · 243 阅读 · 0 评论 -
MapReduce实现倒排索引
倒排索引:由于不是根据文档来确定文档所包含的内容,而是进行相反的操作,因而称为倒排索引--------------------------------map输出:key:单词+文档URI,value:词频-------------------------------combiner输入:key:单词+文档URI,value:词频输出:key:单词转载 2017-07-19 23:12:16 · 431 阅读 · 0 评论 -
Hadoop join之map side join
本次我们采用在map端进行两表间的join。Reduce side join是非常低效的,因为shuffle阶段要进行大量的数据传输。Map side join是针对以下场景进行的优化:两个待连接表中,有一个表非常大,而另一个表非常小,以至于小表可以直接存放到内存中。这样,我们可以将小表复制多份,让每个map task内存中存在一份(比如存放到hash table中),然后只扫描大表:对于大表中的转载 2017-07-18 10:43:32 · 407 阅读 · 0 评论 -
MapReduce中的二次排序
在MapReduce操作时,我们知道传递的会按照key的大小进行排序,最后输出的结果是按照key排过序的。有的时候我们在key排序的基础上,对value也进行排序。这种需求就是二次排序。Mapper任务的数据处理过程分为四个阶段:(1)Mapper任务会接收输入分片,然后不断的调用map函数,对记录进行处理。处理完毕后,转换为新的输出。(2)对map函数输出的调用分区函数,对数转载 2017-07-08 12:47:38 · 262 阅读 · 0 评论 -
HDFS上传文件和读文件的流程
HDFS上传文件和读文件的流程:流程图:过程解析:这里描述的 是一个256M的文件上传过程 ① 由客户端 向 NameNode节点节点 发出请求②NameNode 向Client返回可以可以存数据的 DataNode 这里遵循 机架感应 原则③客户端 首先 根据返回的信息 先将 文件分块(Hadoop2.X版本 每一个block为 128M 而之前的转载 2017-07-06 20:42:44 · 1583 阅读 · 0 评论 -
MapReduce 实现 join
在reduce端实现两表的joinreduce side join是一种最简单的join方式,其主要思想如下:在map阶段,map函数同时读取两个文件File1和File2,为了区分两种来源的key/value数据对,对每条数据打一个标签(tag),比如:tag=0表示来自文件File1,tag=2表示来自文件File2。即:map阶段的主要任务是对不同文件中的数据打标签。原创 2017-07-05 12:10:20 · 475 阅读 · 0 评论 -
MapReduce编程模式
MapReduce作业(job)是客户端执行的单位:它包括输入数据、MapReduce程序和配置信息。Hadoop通过把作业分成若干个小任务(task)来工作,其包括两种类型的任务:map任务和reduce任务。 有两种类型的节点控制着作业执行过程:jobtracker和多个tasktracker。Jobtracker通过调度任务在tasktracker上运行,来协调所有运行在系统上的作业原创 2017-06-28 20:12:34 · 544 阅读 · 0 评论 -
HDFS Federation
1. 当前HDFS架构和功能概述我们先回顾一下HDFS功能。HDFS实际上具有两个功能:命名空间管理(Namespace management)和块/存储管理服务(block/storage management)。1.1 命名空间管理HDFS的命名空间包含目录、文件和块。命名空间管理:是指命名空间支持对HDFS中的目录、文件和块做类似文件系统的创建、修改、删除、列表文转载 2017-09-02 20:13:32 · 468 阅读 · 0 评论