`
scholers
  • 浏览: 620278 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

Hadoop之旅--Hadoop的一些经验总结

 
阅读更多
1.map/reduce

map:
子任务,一个map/reduce任务首先会分解成多个map子任务,会被分配到多个节点运行;
每一个map任务执行计算作业的一部分;
每个map任务执行完成之后,会产生中间文件;
reduce的任务就是将map任务产生的中间文件作为输入数据,将所有的map任务汇总输出;


2.编写JAVA代码出现如下问题

2012-4-20 19:36:55 org.apache.hadoop.util.NativeCodeLoader <clinit>
璀﹀憡: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable



Hadoop是使用Java语言开发的,但是有一些需求和操作并不适合使用java,所以就引入了本地库(Native Libraries)的概念,通过本地库,Hadoop可以更加高效地执行某一些操作。
上述意思是说不能再如本地类库,处理的方式也比较简单:

在Hadoop的配置文件core-site.xml中可以设置是否使用本地库:

<property>
  <name>hadoop.native.lib</name>
  <value>true</value>
  <description>Should native hadoop libraries, if present, be used.</description>
</property>

3.HIVE的使用
HIVE中是等值JOIN的,也支持左右连接;
在使用写有 Join 操作的查询语句时有一条原则:应该将条目少的表/子查询放在 Join 操作符的左边。
原因是在 Join 操作的 Reduce 阶段,位于 Join 操作符左边的表的内容会被加载进内存,将条目少的表放在左边,可以有效减少发生 OOM 错误的几率。


4.hadoop原生默认的压缩文件的解析
hadoop中的文件是默认压缩的,在hadoop中的API中是根据文件后缀名成来判断该文件的压缩类型的
例如test.deflate文件,其hadoop的文件压缩格式就是deflate,这种是默认的hadoop文件格式,当然还支持其他好几种压缩格式,比如Gzip,bzip2,zlib等
下面是hadoop解压文件,并输出成string的代码:
CompressionCodecFactory factory = new CompressionCodecFactory(conf);
			CompressionCodec codec = factory.getCodec(p);
			if (codec == null) {
				throw new IOException(
						String.format(
								"Can't find any suitable CompressionCodec to this file:%s",
								p.toString()));
			}
			in = fs.open(p);
			CompressionInputStream cin = codec.createInputStream(in);
			br = new BufferedReader(new InputStreamReader(cin, encoding),
					bufferSize);


表1  Hadoop支持的压缩格式
压缩格式  工具 算法    文件扩展名 Hadoop压缩编码/解码器
DEFLATE 无 DEFLATE    .deflate Org.apache.hadoop.io.compress.DefaultCodec
Gzip gzip DEFLATE    .gz         Org.apache.hadoop.io.compress.GzipCodec
bzip2 bzip2 bzip2    .bz2         Org.apache.hadoop.io.compress.BZip2Codec
LZO lzop LZO    .lzo         Com.hadoop.compression.lzo.LzopCodec
分享到:
评论
6 楼 scholers 2012-06-08  
smallbee 写道
scholers 写道
smallbee 写道
在做hadoop了?


WINDOWS下没法部署,装个虚拟机,然后LINUX,然后试着去部署;

居说 单台机子无法体现hadoop的实力  是么?


是的啊,起码搞个2台,搞个小集群,
否则分布式没啥意义
5 楼 smallbee 2012-06-07  
scholers 写道
smallbee 写道
在做hadoop了?


WINDOWS下没法部署,装个虚拟机,然后LINUX,然后试着去部署;

居说 单台机子无法体现hadoop的实力  是么?
4 楼 scholers 2012-06-07  
smallbee 写道
在做hadoop了?


WINDOWS下没法部署,装个虚拟机,然后LINUX,然后试着去部署;
3 楼 smallbee 2012-06-07  
scholers 写道
smallbee 写道
在做hadoop了?

是的

我也买了一本书 好久了  看了一点,不知道环境如何部署。
2 楼 scholers 2012-06-06  
smallbee 写道
在做hadoop了?

是的
1 楼 smallbee 2012-06-06  
在做hadoop了?

相关推荐

    hadoop-eclipse-plugin-1.1.2

    【Hadoop Eclipse Plugin 1.1.2:开启Hadoop在Eclipse中的开发之旅】 Hadoop Eclipse Plugin 1.1.2 是一个专门为Eclipse IDE设计的插件,旨在简化Hadoop应用程序的开发过程。这个插件使得Java开发者能够在熟悉的...

    hadoop-eclipse-plugin-2.7.5

    安装Hadoop Eclipse Plugin 2.7.5后,只需将`hadoop2.7.5-eclipse-plugin`文件导入Eclipse,即可开启Hadoop开发之旅。值得注意的是,为了确保插件正常工作,开发者需要在Eclipse中配置好Hadoop的相关环境变量,如...

    hadoop-eclipse-plugin-2.7.3

    《Hadoop Eclipse Plugin 2.7.3:开启大数据开发之旅》 在大数据处理的世界里,Hadoop无疑是一个核心组件,而Hadoop Eclipse Plugin 2.7.3则是开发者们亲密无间的合作伙伴。这款插件为Eclipse IDE带来了强大的功能...

    Hadoop安装教程_单机_伪分布式配置

    ### Hadoop安装教程:单机与伪分布式配置详解 #### 一、引言 Hadoop是一种开源的大数据处理框架,广泛应用于数据存储和处理场景。本文档将详细介绍如何在Ubuntu 14.04...希望这篇教程能够为您的大数据之旅提供帮助!

    10钟理解云计算分布式大数据处理框架Hadoop

    他的课程内容包括了Hadoop的使用方法和大型案例,帮助学员深入了解Hadoop的实际应用,并获得宝贵的操作经验。 总结来说,云计算和分布式大数据处理是现代IT技术发展的重要方向,Hadoop作为一个优秀的分布式大数据...

    求职资料-求职经验分享-笔试真题--携程.pdf

    以下是一些历年笔试的回顾和经验分享: 1. **2017全球实习生0T笔试**:这个环节通常包含逻辑推理、数学能力以及英语阅读理解等内容,旨在测试应聘者的综合素质和快速解决问题的能力。 2. **大数据MT技术笔**:...

    java核心知识点整理

    - 设计模式是解决软件设计中常见问题的经验总结,如单例、工厂、观察者、装饰者等23种经典设计模式。 10. 数据结构与算法: - 数据结构包括数组、链表、树、图等,是高效编程的基础。 - 算法如排序、搜索、动态...

    EDX-CS100.1x-Introduction-to-Big-Data-with-Apache-Spark:CS100.1x使用Apache Spark进行大数据介绍

    总结来说,"Introduction-to-Big-Data-with-Apache-Spark"课程是一次全面深入的Spark之旅,无论你是初学者还是有经验的开发者,都能从中受益。通过学习,你不仅能够掌握Spark的核心技术,还能提升大数据处理和分析的...

    计算机专业学习总结[借鉴].pdf

    总之,计算机专业学习是一场深度与广度并重的探索之旅,要求学生既要掌握扎实的基础知识,也要具备与时俱进的技术素养。在全球化背景下,与国际接轨,不断提升自己的专业水平,是中国计算机专业学生面临的挑战和机遇...

    HBase权威指南

    《HBase权威指南》是一本...总之,《HBase权威指南》是一部值得每一位关注大数据技术的读者仔细研读的作品,它不仅提供了丰富的理论知识,更注重实践指导,旨在帮助读者掌握HBase的精髓,开启大数据领域的探索之旅。

    我的研修小故事.docx

    在宝宝们还只会呀呀学语的时候,我就开始了深夜的学习之旅。十二点后的静谧时光,是我与知识的独处时刻。我充分利用这段时间,深入研究编程语言、软件开发、网络技术以及数据分析等领域的最新动态。这样的学习方式...

    sparkplug_kit_2_0_7

    在这个文档中,我们将全面解析SparkPlug Kit的核心功能和使用方法,为您的Spark开发之旅提供有力支持。 1. Spark基础知识:Spark是Apache软件基金会的一员,是一个用于大数据处理的快速、通用且可扩展的开源框架。...

Global site tag (gtag.js) - Google Analytics