Hadoop学习笔记—光环大数据培训

Hadoop学习笔记—光环大数据培训
Hadoop学习笔记—光环大数据培训

Hadoop是什么?

先问一下百度吧:

【百度百科】一个分布式系统基础架构,由Apache基金会所开发。用户可以在不了解分布式底层细节的情况下,开发分布式程序。充分利用集群的威力进行高速运算和存储。 Hadoop实现了一个分布式文件系统(Hadoop Distributed File System),简称HDFS。HDFS有高容错性的特点,并且设计用来部署在低廉的(low-cost)硬件上;而且它提供高传输率(high throughput)来访问应用程序的数据,适合那些有着超大数据集(large data set)的应用程序。HDFS放宽了(relax)POSIX的要求,可以以流的形式访问(streaming access)文件系统中的数据。Hadoop的框架最核心的设计就是:HDFS和MapReduce。HDFS为海量的数据提供了存储,则MapReduce为海量的数据提供了计算。

Hadoop主要用于一些分布式计算。在这个大数据年代,那这个的确是一个很不错的工具。所以很有必要来学一学。

如何开展这个学习呢,不管怎样,学习一样新东西,我喜欢这样的顺序:先依葫芦画瓢,一步一步行将其运行起来,再来分析一些应用场景及运行的情况,然后深入看一下其高级应用,最后由于这个是一个开源产品,正好来借此机会来读一读大牛们的代码,学学其精华。

好了,开始行动:

安装直接在目录下运行./jdk-6u24-linux-i586.bin即可。

然后配置jdk目录:

先进入安装目录 cd jdk-6u24-…

然后输入 PWD 就可以看到java安装目录,复制下来:

命令行执行:sudo gedit /etc/profile

在打开的文件里,追加:

export JAVA_HOME=/home/administrator/hadoop/jdk1.6.0_27 //这里要写安装目录

export PATH=${JAVA_HOME}/bin:$PATH

执行source /etc/profile 立即生效

验证是否安装完成,那比较容易了,在命令行下运行java -version ant svn ssh 看是否找不到命令,如果都能找到,说明OK了。

编译前先修改一下build.xml,打开,将里面的版本号改成:0.20.2,如下:

看到代码里面有个build.xml,这个是典型的用ant编译用的配置文件,所以直

然后屏幕会刷啊刷,等到完成看到下面字符时,也就OK了:

先试一下,我用SSH登陆当前本机信息:

可以看到,登陆本机时,也要输入一下密码,怎么办?

这里产生公私钥,并生成在.ssh文件夹下,于是我们就进入看一下:

果然,这里多了两个文件,id_dsa为私钥,id_dsa.pub为公钥

然后再把公钥复制成authorized_key,即将这个公钥固定为SSH登陆所用。

这步很重要,做完这步后,就可以再试一下登陆本机了:

看,现在再ssh localhost时,就直接进入,没有再输入帐号了。

到这里,SSH配置就成功了。

在正式运行之前,还要修改一下配置文件才地,这里具体的配置参数,就不讲,葫芦画瓢么,先跑起来,后面再来研究这是为啥:

在代码的conf文件夹内,就可以找到下面几个配置文件,分别配置成以下内容:core-site.xml

https://www.360docs.net/doc/eb13121346.html,

hdfs://localhost:9000

hadoop.tmp.dir

/home/zjf/hadoop-0.20.2/tmpPath !这里改下路径

hdfs-site.xml

dfs.replication

1

mapred-site.xml

https://www.360docs.net/doc/eb13121346.html,

hdfs://localhost:9000

mapred.job.tracker

hdfs://localhost:9001

修改conf/hadoop-env.sh

将里面的JAVA_HOME注释打开,并把里面的地址配置正确。

Job跟踪:http://localhost:50030

NameNode结点:http://localhost:50070

1.用jps看一下有几个java进程在运行,如果是下面几个就正常了:

主要有DataNode NameNode SecondaryNameNode TaskTracker JobTracker这几个进程,就表示正常了

系统启动正常后,跑个程序吧

$mkdir input

$cd input

$echo "hello world">test1.txt

$echo "hello hadoop">test2.txt

$cd ..

$bin/hadoop dfs -put input in

$bin/hadoop jar build/hadoop-0.20.2-examples.jar wordcount in out

$bin/hadoop dfs -cat out/*

最关健的是,最后输入:

输出这个结果这就表示我们的程序运行成功了。至于这结果是什么意思,我想看到后大概也猜到了吧,至于详细解说,下期再看。

【报名信息】

最新开班时间:2017.6.26

电脑报名地址:https://www.360docs.net/doc/eb13121346.html,/

手机报名地址:https://www.360docs.net/doc/eb13121346.html,/mobile/

了解最新课程及报名优惠信息,请访问光环java官方网站:https://www.360docs.net/doc/eb13121346.html, 学大数据,就选光环大数据!16年老品牌,上市机构有保障!

hadoop学习课程介绍

云凡教育Hadoop网络培训第二期 开课时间:2014年1月20日 授课方式:YY在线教育+课程视频+资料、笔记+辅导+推荐就业 YY教育平台:20483828 课程咨询:1441562932 大胃 云凡教育Hadoop交流群:306770165 费用: 第二期优惠特价:999元; 授课对象: 对大数据领域有求知欲,想成为其中一员的人员 想深入学习hadoop,而不只是只闻其名的人员 基础技能要求: 具有linux操作一般知识(因为hadoop在linux下跑) 有Java基础(因为hadoop是java写的并且编程也要用java语言) 课程特色 1,以企业实际应用为向导,进行知识点的深入浅出讲解; 2,从零起步,循序渐进,剖析每一个知识; 3,萃取出实际开发中最常用、最实用的内容并以深入浅出的方式把难点化于无形之中 学习安排: Hadoop的起源与生态系统介绍(了解什么是大数据;Google的三篇论文;围绕Hadoop形成的一系列的生态系统;各个子项目简要介绍)

1_Linux系统环境搭建和基本命令使用 针对很多同学对linux命令不熟悉,在课程的学习中,由于命令不熟悉导致很多错误产生,所以特意增加一节linux基础课程,讲解一些常用的命令,对接下来的学习中做好入门准备; 02_Hadoop本地(单机)模式和伪分布式模式安装 本节是最基本的课程,属于入门级别,主要对Hadoop 介绍,集中安装模式,如何在linux上面单机(本地)和伪分布模式安装Hadoop,对HDFS 和MapReduce进行测试和初步认识。 03_HDFS的体系结构、Shell操作、Java API使用和应用案例 本节是对hadoop核心之一——HDFS的讲解。HDFS是所有hadoop操作的基础,属于基本的内容。对本节内容的理解直接影响以后所有课程的学习。在本节学习中,我们会讲述hdfs的体系结构,以及使用shell、java不同方式对hdfs 的操作。在工作中,这两种方式都非常常用。学会了本节内容,就可以自己开发网盘应用了。在本节学习中,我们不仅对理论和操作进行讲解,也会讲解hdfs 的源代码,方便部分学员以后对hadoop源码进行修改。 04_MapReduce入门、框架原理、深入学习和相关MR面试题 本节开始对hadoop核心之一——mapreduce的讲解。mapreduce是hadoop 的核心,是以后各种框架运行的基础,这是必须掌握的。在本次讲解中,掌握mapreduce执行的详细过程,以单词计数为例,讲解mapreduce的详细执行过程。还讲解hadoop的序列化机制和数据类型,并使用自定义类型实现电信日志信息的统计。最后,还要讲解hadoop的RPC机制,这是hadoop运行的基础,通过该节学习,我们就可以明白hadoop是怎么明白的了,就不必糊涂了,本节内容特别重要。 05_Hadoop集群安装管理、NameNode安全模式和Hadoop 1.x串讲复习 hadoop就业主要是两个方向:hadoop工程师和hadoop集群管理员。我们课程主要培养工程师。本节内容是面向集群管理员的,主要讲述集群管理的知

Hadoop快速入门

?项目 ?维基 ?Hadoop 0.18文档 Last Published: 07/01/2009 00:38:20 文档 概述 快速入门 集群搭建 HDFS构架设计 HDFS使用指南 HDFS权限指南 HDFS配额管理指南 命令手册 FS Shell使用指南 DistCp使用指南 Map-Reduce教程 Hadoop本地库 Streaming Hadoop Archives Hadoop On Demand API参考 API Changes 维基 常见问题 邮件列表 发行说明 变更日志 PDF Hadoop快速入门 ?目的 ?先决条件 o支持平台 o所需软件 o安装软件 ?下载 ?运行Hadoop集群的准备工作 ?单机模式的操作方法 ?伪分布式模式的操作方法

o配置 o免密码ssh设置 o执行 ?完全分布式模式的操作方法 目的 这篇文档的目的是帮助你快速完成单机上的Hadoop安装与使用以便你对Hadoop 分布式文件系统(HDFS)和Map-Reduce框架有所体会,比如在HDFS上运行示例程序或简单作业等。 先决条件 支持平台 ?GNU/Linux是产品开发和运行的平台。 Hadoop已在有2000个节点的GNU/Linux主机组成的集群系统上得到验证。 ?Win32平台是作为开发平台支持的。由于分布式操作尚未在Win32平台上充分测试,所以还不作为一个生产平台被支持。 所需软件 Linux和Windows所需软件包括: 1.Java TM1.5.x,必须安装,建议选择Sun公司发行的Java版本。 2.ssh必须安装并且保证sshd一直运行,以便用Hadoop 脚本管理远端 Hadoop守护进程。 Windows下的附加软件需求 1.Cygwin - 提供上述软件之外的shell支持。 安装软件 如果你的集群尚未安装所需软件,你得首先安装它们。 以Ubuntu Linux为例: $ sudo apt-get install ssh $ sudo apt-get install rsync

hadoop入门学习资料大全

Hadoop是一个分布式系统基础架构,由Apache基金会开发。用户可以在不了解分布式底层细节的情况下,开发分布式程序。充分利用集群的威力高速运算和存储。简单地说来,Hadoop是一个可以更容易开发和运行处理大规模数据的软件平台。 Hadoop实现了一个分布式文件系统(Hadoop Distributed File System),简称HDFS。HDFS有着高容错性(fault-tolerent)的特点,并且设计用来部署在低廉的(low-cost)硬件上。而且它提供高传输率(high throughput)来访问应用程序的数据,适合那些有着超大数据集(large data set)的应用程序。 搜索了一些WatchStor存储论坛关于hadoop入门的一些资料分享给大家希望对大家有帮助 jackrabbit封装hadoop的设计与实现 https://www.360docs.net/doc/eb13121346.html,/thread-60444-1-1.html 用Hadoop进行分布式数据处理 https://www.360docs.net/doc/eb13121346.html,/thread-60447-1-1.html

Hadoop源代码eclipse编译教程 https://www.360docs.net/doc/eb13121346.html,/thread-60448-1-2.html Hadoop技术讲解 https://www.360docs.net/doc/eb13121346.html,/thread-60449-1-2.html Hadoop权威指南(原版) https://www.360docs.net/doc/eb13121346.html,/thread-60450-1-2.html Hadoop源代码分析完整版 https://www.360docs.net/doc/eb13121346.html,/thread-60451-1-2.html 基于Hadoop的Map_Reduce框架研究报告 https://www.360docs.net/doc/eb13121346.html,/thread-60452-1-2.html Hadoop任务调度 https://www.360docs.net/doc/eb13121346.html,/thread-60453-1-2.html Hadoop使用常见问题以及解决方法 https://www.360docs.net/doc/eb13121346.html,/thread-60454-1-2.html HBase:权威指南

Hadoop 学习笔记

Hadoop 在Hadoop上运行MapReduce命令 实验jar:WordCount.jar 运行代码:root/……/hadoop/bin/hadoop jar jar包名称使用的包名称input(输入地址) output(输出地址) 生成测试文件:echo -e "aa\tbb \tcc\nbb\tcc\tdd" > ceshi.txt 输入地址:/data2/u_lx_data/qiandongjun/eclipse/crjworkspace/input 输出地址:/data2/u_lx_data/qiandongjun/eclipse/crjworkspace/output 将测试文件转入输入文件夹:Hadoop fs -put ceshi.txt /data2/u_lx_data/qiandongjun/eclipse/crjworkspace/input/ceshi.txt 运行如下代码:hadoop jar /data2/u_lx_data/qiandongjun/eclipse/crjworkspace/WordCount.jar WordCount /data2/u_lx_data/qiandongjun/eclipse/crjworkspace/input/ceshi.txt /data2/u_lx_data/qiandongjun/eclipse/crjworkspace/output Hadoop架构 1、HDFS架构 2、MapReduce架构 HDFS架构(采用了Master/Slave 架构) 1、Client --- 文件系统接口,给用户调用 2、NameNode --- 管理HDFS的目录树和相关的的文件元数据信息以及监控DataNode的状 态。信息以“fsimage”及“editlog”两个文件形势存放 3、DataNode --- 负责实际的数据存储,并将数据定期汇报给NameNode。每个节点上都 安装一个DataNode 4、Secondary NameNode --- 定期合并fsimage和edits日志,并传输给NameNode (存储基本单位为block) MapReduce架构(采用了Master/Slave 架构) 1、Client --- 提交MapReduce 程序并可查看作业运行状态 2、JobTracker --- 资源监控和作业调度 3、TaskTracker --- 向JobTracker汇报作业运行情况和资源使用情况(周期性),并同时接 收命令执行操作 4、Task --- (1)Map Task (2)Reduce Task ——均有TaskTracker启动 MapReduce处理单位为split,是一个逻辑概念 split的多少决定了Map Task的数目,每个split交由一个Map Task处理 Hadoop MapReduce作业流程及生命周期 一共5个步骤 1、作业提交及初始化。JobClient将作业相关上传到HDFS上,然后通过RPC通知JobTracker,

Hbase学习笔记复习过程

H b a s e学习笔记

参考书籍: Hadoop in action, 吴超沉思录 1.Hbase简介 1.面向列的分布式数据库 2. 以HDFS作为文件系统 3. 利用MapReduce处理Hbase中海量数据 4. ZookKeeper作为协调工具 5. sqoop提供Hbase到关系型数据库中数据导入功能 6. Hive和pig提供高层语言支持如HSQL 2. 伪分布式安装 准备:安装Hadoop 详细见上一篇日志:hadoop分布式安装hbase版本: hbase-0.94.7-security.tar.gz 安装目录 /usr/local 步骤: 1. 安装 tar -zxvf hbase-0.94.7-security.tar.gz 2. 重命名: mv hbase-0.94.7-security hbase 3. 配置环境变量hbase_home (vi /etc/profile) 4. 修改配置文件 1. hbase_home/conf/hbase_env.sh

修改java_home export JAVA_HOME=/usr/local/jdk/ 修改zookeeper(最后一行) export HBASE_MANAGES_ZK=true(使用Hbase托管的ZooKeeper)2. hbase_home/conf/hbase-site.xml文件 configuration 中加入: hbase.rootdir hdfs://hadoop0:9000/hbase hbase.cluster.distributed true hbase.zookeeper.quorum hadoop0 dfs.replication 1 5. 启动hbase 先启动hadoop(start-all.sh)

基于Hadoop平台的并行数据挖掘算法工具箱与数据挖掘云

基于Hadoop平台的并行数据挖掘算法工具 箱与数据挖掘云 来源:南京大学计算机科学与技术系作者:高阳,杨育彬,商琳时间:2011-06-27 浏览次数:60 一基于云计算的海量数据挖掘 2008年7 月,《Communications of the ACM》杂志发表了关于云计算的专辑,云计算因其清晰的商业模式而受到广泛关注,并得到工业和学术界的普遍认可。目前工业界推出的云计算平台有Amazon公司的EC2和S3,Google公司的Google Apps Engine, IBM公司的Blue Cloud,Microsoft公司的Windows Azure, Salesforce公司的Sales Force, VMware公司的vCloud,Apache软件开源组织的Hadoop等。在国内,IBM与无锡市共建了云计算中心,中石化集团成功应用IBM的云计算方案建立起一个企业云计算平台。阿里巴巴集团于2009年初在南京建立电子商务云计算中心。 严格的讲,云计算是一种新颖的商业计算模型,它可以将计算任务分布在大量互连的计算机上,使各种应用系统能够根据需要获取计算资源、存储资源和其他服务资源。Google公司的云平台是最具代表性的云计算技术之一,包括四个方面的主要技术:Google文件系统GFS、并行计算模型MapReduce、结构化数据表BigTable和分布式的锁管理Chubby。基于以上技术,云计算可以为海量数据处理和分析提供一种高效的计算平台。简单来说,将海量数据分解为相同大小、分布存储,然后采用MapReduce模型进行并行化编程,这种技术使Google公司在搜索引擎应用中得到了极大的成功。 然而MapReduce计算模型适合结构一致的海量数据,且要求计算简单。对于大量的数据密集型应用(如数据挖掘任务),往往涉及到数据降维、程序迭代、

基于Hadoop平台的海量数据高效抽取方法及应用

基于Hadoop 平台的海量数据高效抽取方法及应用 徐金玲1,金 璐1,李昆明2,熊 政2,仲春林2,方 超2 (1.江苏省南京供电公司,江苏南京,210008;2.江苏方天电力技术有限公司,江苏南京,211102) 摘要:本文从数据抽取过程的本质出发,论述了传统数据抽取过程与大数据平台数据抽取过程的异同,以基于Hadoop 的大数据平台为例,结合传统的关系型数据库和非关系型数据库(NoSQL)的特点,提出了一种从关系型数据库到大数据平台的高效数据抽取方法,实现了对数据源系统资源占用的最小化,并在电力公司用电大数据抽取中得到广泛应用。关键词:海量数据;数据抽取;NoSQL;大数据平台 Method and application of efficient extraction of mass data based on Hadoop platform Xu Jinling 1,Jin Lu 1,Li Kunming 2,Xiong Zheng 2,Zhong Chunlin 2,Fang Chao 2 (1.Jiangsu Nanjing power supply company,Jiangsu Nanjing,210008;2.Jiangsu Fangtian Power Technology Co. Ltd.,Jiangsu Nanjing,211102) Abstract :This article from the essence of data extraction process,discusses the similarities and differences between traditional data extraction process and the data platform,data extraction process, the data platform based on Hadoop as an example,combining the traditional relational database and non relational database(NoSQL)characteristics,proposes a from relational database to efficient data extraction method of data platform,thereby minimizing the occupancy of the data source of the system resources, and the power companies in large data extraction has been widely applied in. Keywords :data;data extraction;NoSQL;data platform 0 引言 对于大数据的抽取,一般通过使用Sqoop 来实现。但是Sqoop 组件自身的局限性导致其对于特定的场景并不适用(例如,进行TB 级大数据量数据抽取时效率较低,进行增量数据抽取需改变源数据库表结构,对源数据库性能也有较大影响)。因此,本文提出了基于大数据平台的一种海量数据抽取的高效方法,该方法可以快速、高效、可靠地将海量数据从关系型数据库抽取到大数据平台中。同时,由于通过对数据源日志文件的分析实现对增量数据的抽取,因此该方法在抽取数据时对源数据库的影响非常小。 1 系统开发环境 系统开发环境采用CentOS 6.5操作系统,以Cloudera CDH 5.0为大数据平台框架,并结合Tomcat 作为Web Server。集群由20台服务器组成,划分为2个机架,每台服务器配置32核CPU、64GB 内存和10块磁盘。Cloudera 是全球领先的Hadoop 服务提供商,其CDH 5.0是最新的Hadoop 发行版,提供了高度的稳 定性和使用便捷性。数据源采用Oracle 数据库,抽取工具采用Golden Gate。 2 系统结构和处理流程 2.1 技术架构 系统以Oracle 为数据源,以CDH 5.0为大数据平台框架,结合Tomcat 作为Web Server 提供Web 层的访问服务。在大数据平台中,以MapReduce 作为大数据的计算引擎,以HDFS 分布式文件系统存储非结构化和半结构化的数据,以HBase 分布式数据库存 图1. 系统技术架构

hadoop平台搭建-入门详细教程(含视频)

Hadoop平台搭建说明 1.Hadoop节点规划 本次安装规划使用三个节点,每个节点都使用centos系统。 三个节点的hostname分别规划为:centoshadoop1、centoshadoop2、centoshadoop3(此处为本教程参数,可根据实际环境情况修改) 三个节点的ip地址分别规划为:192.168.65.57、192.168.65.58、192.168.65.59(此处为本教程参数,根据实际环境情况修改) 2.平台搭建使用的软件 下载如下软件 操作系统安装包:Centos6.3_x64 Jdk安装包:jdk-6u37-linux-x64.bin Hadoop安装包:hadoop-1.1.2.tar.gz 3.安装centos操作系统 安装三个节点的操作系统,安装过程省略。 4.配置centoshadoop1节点 4.1.修改节点hostname [root@localhost ~]# vi /etc/sysconfig/network HOSTNAME=centoshadoop1 [root@localhost ~]# vi /etc/hosts …… 192.168.65.57 centoshadoop1 192.168.65.58 centoshadoop2 192.168.65.59 centoshadoop3 [root@localhost ~]#reboot

4.2.关闭iptables防火墙 [root@centoshadoop1~]#service iptables stop 注意每次操作系统重启后都要操作 4.3.建立无ssh密码登陆 生成签名文件 [root@centoshadoop1~]#cd /root [root@centoshadoop1~]#ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa [root@centoshadoop1~]#cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys [root@centoshadoop1~]# 测试本地SSH无密码登录 [root@centoshadoop1~]#sshcentoshadoop1 4.4.安装jdk 上传jdk-6u37-linux-x64.bin到/root目录下 [root@centoshadoop1~]#chmod 777 jdk-6u37-linux-x64.bin [root@centoshadoop1~]#./jdk-6u37-linux-x64.bin [root@centoshadoop1~]#ll 查看生成jdk-6u37-linux-x64目录 4.5.安装hadoop软件 上传hadoop-1.1.2.tar.gz到/root目录下 [root@centoshadoop1~]#tar -zvxfhadoop-1.1.2.tar.gz [root@centoshadoop1~]#ll 查看生成hadoop-1.1.2目录 [root@centoshadoop1~]#vi/conf/core-site.xml https://www.360docs.net/doc/eb13121346.html, hdfs://192.168.65.57:9000

基于hadoop平台海量数据的快速查询与实现

龙源期刊网 https://www.360docs.net/doc/eb13121346.html, 基于hadoop平台海量数据的快速查询与实现 作者:褚福银张林何坤鹏 来源:《电脑知识与技术》2016年第21期 摘要:随着互联网技术的发展,人类产生的数据量正在呈指数级增长,Hadoop作为大数据领域的常用工具,在现代生活中发挥着至关重要的作用。Hive是基于Hadoop的一个数据仓库工具,在做查询统计分析时最终翻译成Hadoop平台上的MapReduce程序运行,当数据量不断增大时,就会使得查询效率[5]下降。该文就此提出了一种Hive与Spark结合的方案,将Hive的查询作为Spark的任务提交到Spark集群上进行计算,利用Spark的特性提高Hive 查询性能。该研究首先理论阐述了Hive与Spark各自的工作机制,然后介绍Hive_Spark原理,最后通过做实验,对实验结果进行对比,分析,从而验证Hive_Spark提高了查询效率,对大规 模数据处理具有一定参考意义。 关键词:Hadoop;Hive;Spark;查询;海量数据 中图分类号:TP31 文献标识码:A 文章编号:1009-3044(2016)21-0003-03 Abstract: With the development of Internet technology, The amount of data generated by humans is growing exponentially. Hadoop as a common tool in the field of big data, play a vital role in modern life. Hive is a data warehouse tools based on Hadoop, when doing statistical analysis queries eventually translated into Hadoop program running on the platform, when increasing amounts of data, it makes the query efficiency will be reduced. In this paper, we propose a Hive and Spark combination of the program, the Hive query as the task of Spark to submit to the Spark cluster computing, using the characteristics of Spark to improve the performance of Hive query. This research firstly theory elaborated the Hive and Spark their working mechanism, and then this paper introduces the principle of Hive_Spark finally by doing experiment, compared with the result of the experiment and analysis, to validate Hive_Spark improve the query efficiency, for large-scale data processing has a certain reference significance. Key words: Hadoop; Hive; Spark; Data query; Mass data 1 引言 随着大数据时代的到来,数据量的急速增长以及对数据实时查询的迫切需求使得传统的数据仓库引擎难以满足企业对大数据存储与分析的需求。Hadoop[3-4] 作为一种开源的架构凭借其低成本、可伸缩性和高容错性等优点开始取代传统数据仓库[8],采用 MapReduce 编程模型可以对海量数据进行有效分割和合理分配。hive是基于Hadoop的一个数据仓库工具,提供了

Hadoop_Ubuntu学习笔记

Hadoop+Ubuntu 学习笔记 ——IT 进行时(zhengxianquan AT https://www.360docs.net/doc/eb13121346.html, ) 环备一、境准 Hadoop-0.20.1 Ubuntu 9.10 二、安装JDK6 开终执打端,行以下命令: sudo apt-get install sun-java6-jdk 按照提示做就是了。 配置JAVA 环变境量: sudo gedit /etc/environment 在其中添加如下两行: CLASSPATH=.:/usr/lib/jvm/java-6-sun/lib JAVA_HOME=/usr/lib/jvm/java-6-sun 执行命令:sudo gedit /etc/jvm,在最前面加入: /usr/lib/jvm/java-6-sun 三、配置SSH 见方便起,新增hadoop 组户的及其同名用: zhengxq@zhengxq-desktop:~$ sudo addgroup hadoop zhengxq@zhengxq-desktop:~$ sudo adduser --ingroup hadoop hadoop 别则请接下来需要做些特的工作(否参考FAQ“xx is not in the sudoers file”): hadoop@zhengxq-desktop:~$ su root@zhengxq-desktop:/home/hadoop# ls -l /etc/sudoers -r--r----- 1 root root 557 2009-11-10 22:01 /etc/sudoers

root@zhengxq-desktop:/home/hadoop# ls -l /etc/sudoers -rw-r----- 1 root root 557 2009-11-10 22:01 /etc/sudoers root@zhengxq-desktop:/home/hadoop# gedit /etc/sudoers 在root ALL=(ALL) ALL后面添加:hadoop ALL=(ALL) ALL root@zhengxq-desktop:/home/hadoop# chmod u-w /etc/sudoers root@zhengxq-desktop:/home/hadoop# exit 安装openssh-server: $ sudo apt-get install openssh-server 建立SSH KEY: zhengxq@zhengxq-desktop:~$ su hadoop hadoop@zhengxq-desktop:/home/zhengxq$ ssh-keygen -t rsa -P "" Generating public/private rsa key pair. Enter file in which to save the key (/home/hadoop/.ssh/id_rsa): Created directory '/home/hadoop/.ssh'. Your identification has been saved in /home/hadoop/.ssh/id_rsa. Your public key has been saved in /home/hadoop/.ssh/id_rsa.pub. The key fingerprint is: f4:5f:6a:f4:e5:bf:1d:c8:08:28:1c:88:b4:31:4a:a0 hadoop@zhengxq-desktop …… 启用SSH KEY: hadoop@zhengxq-desktop:~$ cat $HOME/.ssh/id_rsa.pub >> $HOME/.ssh/authorized_keys

hadoop环境配置入门教程

ubuntu 下安装配置hadoop 1.0.4 第一次搞hadoop,折腾我2天,功夫不负有心人,终于搞好了,现在来分享下, 我的环境 操作系统:wmv虚拟机中的ubuntu12.04 hadoop版本:hadoop-1.0.4(听说是稳定版就下了) eclipse版本:eclipse-jee-indigo-SR2-win32 1.先安装好jdk,然后配置好jdk的环境变量,在这里我就不累赘了!网上多的是 2.安装ssh这个也不用说了 2.把hadoop-1.0.4.tar.gz拖到虚拟机中,解压,比如: /home/wys/Documents/hadoop-1.0.4/ (有的还单独建了个用户,为了舍去不必要的麻烦我都是用root用户来操作的) 3.修改hadoop-1.0.4/conf 下面的core-site.xml文件,如下: https://www.360docs.net/doc/eb13121346.html, hdfs://192.168.116.128:9000 hadoop.tmp.dir /home/wys/Documents/tmp

192.168.116.128这个是虚拟机中ubuntu的ip,听说用localhost,127.0.0.1都不行,我没试过,直接写上ip地址了 tmp是预先创建的一个目录 4.修改hadoop-env.sh 把export JAVA_HOME=xxxxxx 这行的#号去掉,写上jdk的目录路径 5.修改hdfs-site.xml如下: dfs.replication 1 dfs.permissions false 说明:为了以后用eclipse开发出现各种问题,就把权限关了!

大数据技术之hadoop实战笔记

Hadoop一直是我想学习的技术,正巧最近项目组要做电子商城,我就开始研究Hadoop,虽然最后鉴定Hadoop不适用我们的项目,但是我会继续研究下去,技多不压身。《Hadoop基础教程》是我读的第一本Hadoop书籍,当然在线只能试读第一章,不过对Hadoop历史、核心技术和应用场景有了初步了解。 ?Hadoop历史 雏形开始于2002年的Apache的Nutch,Nutch是一个开源Java 实现的搜索引擎。它提供了我们运行自己的搜索引擎所需的全部工具。包括全文搜索和Web爬虫。 随后在2003年Google发表了一篇技术学术论文谷歌文件系统(GFS)。GFS也就是google File System,google公司为了存储海量搜索数据而设计的专用文件系统。 2004年Nutch创始人Doug Cutting基于Google的GFS论文实现了分布式文件存储系统名为NDFS。 2004年Google又发表了一篇技术学术论文MapReduce。MapReduce是一种编程模型,用于大规模数据集(大于1TB)的并行分析运算。 2005年Doug Cutting又基于MapReduce,在Nutch搜索引擎实现了该功能。 2006年,Yahoo雇用了Doug Cutting,Doug Cutting将NDFS和MapReduce 升级命名为Hadoop,Yahoo开建了一个独立的团队给Goug Cutting专门研究发展Hadoop。 不得不说Google和Yahoo对Hadoop的贡献功不可没。 ?Hadoop核心

Hadoop的核心就是HDFS和MapReduce,而两者只是理论基础,不是具体可使用的高级应用,Hadoop旗下有很多经典子项目,比如HBase、Hive等,这些都是基于HDFS和MapReduce发展出来的。要想了解Hadoop,就必须知道HDFS和MapReduce 是什么。 HDFS HDFS(Hadoop Distributed File System,Hadoop分布式文件系统),它是一个高度容错性的系统,适合部署在廉价的机器上。HDFS能提供高吞吐量的数据访问,适合那些有着超大数据集(large data set)的应用程序。 HDFS的设计特点是: 1、大数据文件,非常适合上T级别的大文件或者一堆大数据文件的存储,如果文件只有几个G甚至更小就没啥意思了。 2、文件分块存储,HDFS会将一个完整的大文件平均分块存储到不同计算机上,它的意义在于读取文件时可以同时从多个主机取不同区块的文件,多主机读取比单主机读取效率要高得多得多。 3、流式数据访问,一次写入多次读写,这种模式跟传统文件不同,它不支持动态改变文件内容,而是要求让文件一次写入就不做变化,要变化也只能在文件末添加内容。 4、廉价硬件,HDFS可以应用在普通PC机上,这种机制能够让给一些公司用几十台廉价的计算机就可以撑起一个大数据集群。 5、硬件故障,HDFS认为所有计算机都可能会出问题,为了防止某个主机失效读取不到该主机的块文件,它将同一个文件块副本分配到其它某几个主机上,如果其中一台主机失效,可以迅速找另一块副本取文件。

Hadoop笔记讲解

https://www.360docs.net/doc/eb13121346.html, 猎聘网站 注意:一定要将Windows上的WMnet1的IP设置和你的虚拟机在同一网段,但是IP不能相同 1.Linux环境配置(windows下面的防火墙也要关闭) 1.1修改主机名 vim /etc/sysconfig/network 1.2修改IP vim /etc/sysconfig/network-scripts/ifcfg-eth0 DNS1="8.8.8.8" DNS2="8.8.4.4" 修改主机名和IP的映射关系 vim /etc/hosts 关闭防火墙 查看防火墙状态 service iptables

查看计算机重启后防火强是否会开启,如下所示在2,3,4,5种情况会开启,可以在/etc/inittab中查看这几种情况,使用chkconfig iptables off 关闭 修改计算机名后需要重启计算机#reboot 重启后查看计算机和IP地址和防火墙是否改过来了

从windows中ping虚拟机 发现无法ping通,则查看虚拟机网络状态右击选择设置

将NA T模式改为host-only模式 在Windows中再ping一次,若还是ping不通,则将本地连接禁用,再次从Windows中ping 虚拟机和从虚拟机中ping Windows(两方的防火墙都要关闭) 安装jdk J dk下载地址: https://www.360docs.net/doc/eb13121346.html,/technetwork/java/javase/downloads/jdk7-downloads-1880260. html (windows和虚拟机互传文件方式 1共享文件夹:“虚拟机”-->设置-->选项-->共享文件夹-->总是启用-->添加... 2使用FileZilla进行网络传输) 使用SecureCRT进行远程

hadoop学习笔记(一、hadoop集群环境搭建)

Hadoop集群环境搭建1、准备资料 虚拟机、Redhat6.5、hadoop-1.0.3、jdk1.6 2、基础环境设置 2.1配置机器时间同步 #配置时间自动同步 crontab -e #手动同步时间 /usr/sbin/ntpdate https://www.360docs.net/doc/eb13121346.html, 1、安装JDK 安装 cd /home/wzq/dev ./jdk-*****.bin 设置环境变量 Vi /etc/profile/java.sh 2.2配置机器网络环境 #配置主机名(hostname) vi /etc/sysconfig/network #修第一台hostname 为master hostname master

#检测 hostname #使用setup 命令配置系统环境setup

#检查ip配置 cat /etc/sysconfig/network-scripts/ifcfg-eth0 #重新启动网络服务 /sbin/service network restart #检查网络ip配置 /sbin/ifconfig 2.3关闭防火墙

2.4配置集群hosts列表 vi /etc/hosts #添加一下内容到vi 中 2.5创建用户账号和Hadoop部署目录和数据目录 #创建hadoop 用户 /usr/sbin/groupadd hadoop

#分配hadoop 到hadoop 组中 /usr/sbin/useradd hadoop -g hadoop #修改hadoop用户密码 Passwd hadoop #创建hadoop 代码目录结构 mkdir -p /opt/modules/hadoop/ #修改目录结构权限拥有者为为hadoop chown -R hadoop:hadoop /opt/modules/hadoop/ 2.6生成登陆密钥 #切换到Hadoop 用户下 su hadoop cd /home/hadoop/ #在master、node1、node2三台机器上都执行下面命令,生成公钥和私钥 ssh-keygen -q -t rsa -N "" -f /home/hadoop/.ssh/id_rsa cd /home/hadoop/.ssh #把node1、node2上的公钥拷贝到master上 scp /home/hadoop/.ssh/ id_rsa.pub hadoop@master:/home/hadoop/.ssh/node1_pubkey scp /home/hadoop/.ssh/ id_rsa.pub hadoop@master:/home/hadoop/.ssh/node2_pubkey #在master上生成三台机器的共钥 cp id_rsa.pub authorized_keys cat node1_pubkey >> authorized_keys cat node2_pubkey >> authorized_keys rm node1_pubkey node2_pubkey #吧master上的共钥拷贝到其他两个节点上 scp authorized_keys node1: /home/hadoop/.ssh/ scp authorized_keys node1: /home/hadoop/.ssh/ #验证 ssh master ssh node1 ssh node2 没有要求输入密码登陆,表示免密码登陆成功

hadoop学习笔记

hadoop学习笔记 1. 2. 1. 2. 3. 3. 1. 2. 3. 4. 1. 2. 3. 1. 4. 5. 1. 2. 3. 4. 5. 6. 7. 8. 9. 1.

2. 6. 1. 2. 3. 4. 倒排索引 简介 倒排索引(英语:Inverted index),也常被称为反向索引、置入档案或反向档案,是一种索引方法,被用来存储在全文搜索下某个单词在一个文档或者一组文档中的存储位置的映射。它是文档检索系统中最常用的数据结构。 有两种不同的反向索引形式: · 一条记录的水平反向索引(或者反向档案索引)包含每个引用单词的文档的列表。 · 一个单词的水平反向索引(或者完全反向索引)又包含每个单词在一个文档中的位置。 例子 以英文为例,下面是要被索引的文本: · "itis what it is" · "whatis it" · "itis a banana" 我们就能得到下面的反向文件索引: "a": {2} "banana": {2} "is": {0, 1, 2} "it": {0, 1, 2} "what": {0, 1}

检索的条件"what", "is" 和 "it" 将对应这个集合:。 对相同的文字,我们得到后面这些完全反向索引,有文档数量和当前查询的单词结果组成的的成对数据。同样,文档数量和当前查询的单词结果都从零开始。所以,"banana":{(2, 3)} 就是说 "banana"在第三个文档里 (),而且在第三个文档的位置是第四个单词(地址为 3)。 "a": {(2, 2)} "banana": {(2, 3)} "is": {(0, 1), (0, 4), (1, 1), (2, 1)} "it": {(0, 0), (0, 3), (1, 2), (2, 0)} "what": {(0, 2), (1, 0)} 应用 · 反向索引数据结构是典型的搜索引擎检索算法重要的部分。 · 一个搜索引擎执行的目标就是优化查询的速度:找到某个单词在文档中出现的地方。以前,正向索引开发出来用来存储每个文档的单词的列表,接着掉头来开发了一种反向索引。正向索引的查询往往满足每个文档有序频繁的全文查询和每个单词在校验文档中的验证这样的查询。 · 实际上,时间、内存、处理器等等资源的限制,技术上正向索引是不能实现的。 · 为了替代正向索引的每个文档的单词列表,能列出每个查询的单词所有所在文档的列表的反向索引数据结构开发了出来。 · 随着反向索引的创建,如今的查询能通过立即的单词标示迅速获取结果(经过随机存储)。随机存储也通常被认为快于顺序存储。Lucene 简介 Lucene是apache软件基金会4 jakarta项目组的一个子项目,是一个开放源代码的全文检索引擎工具包,即它不是一个完整的全文检索引擎,而是一个全文检索引擎的架构,提供了完整的查询引擎和索引引擎,部分文本分析引擎(英文与德文两种西方语言)。Lucene的目的是为软件开发人员提供一个简单易用的工具包,以方便的在目标系统中实现全文检索的功能,或者是以此为基础建立起完整的全文检索引擎。

相关文档
最新文档