搜档网
当前位置:搜档网 › hadoop学习笔记

hadoop学习笔记

hadoop学习笔记
hadoop学习笔记

一、Hadoop的结构:

NameNode

DataNode SecondaryNameNode

LobTracker

TaskTracker

二、Hadoop安装流程:

1、新建用户和组

2、配置服务器域名和主机名

3、SSH无密码登陆

4、JDK的安装

5、Hadoop配置

6、格式化与启动

7、WEB监控Hadoop的运行状态

三、下载:

VirtualBox

CenterOS

JDK

Hadoop

HBase

Putty

四、Hadoop FS Shell

hadoop fs –command parameter

help

ls 、lsr

du、dus

count

copyFromLocal、copyToLocal、cp moveFromLocal、mv、put

cat

chgrp、chmod、chown

expunge

get、getmerge

mkdir

rm、rmr

setrep、stat、tail、test、text、touchz

Linux的安装

在安装时内存大小如果小于652MB时默认会进入text model(文本安装模式)。因此在此处需要将内存调大些

网络:

VirtualBox有4种网络连接方式

1、NAT

2、Bridged Adapter

3、Internal

4、Host-only Adapter

VMWare有三种连接方式(上面的除去Internal)

1、NAT

NAT:Network Address Translation:网络地址转换

NAT模式是最简单的实现虚拟机上网的方式

4、Host-only Adapter(主机模型)

主机模型是一种比较复杂的模式,需要有比较扎实的网络基础知识才能玩转,可以说前面的几种模式所实现的功能在这种模式下,通过虚拟机及网卡的设置都可以被实现

网络配置:

DEVICE="eth0"

BOOTPROTO="static"

HWADDR="08:00:27:34:F4:69"

NM_CONTROLLED="yes"

ONBOOT="yes"

TYPE="Ethernet"

UUID="35b4fc2a-f79b-4013-a465-0a6aa793b487"

IPADDR=192.168.137.10

NETMASK=255.255.255.0

GATEWAY=192.168.137.1

DNS1=101.226.4.6

DNS2=192.168.0.1

Hadoop的配置步骤:

添加用户和组

[root@localhost ~]# groupadd hadoop #添加组

[root@localhost ~]# useradd hadoop –g hadoop #添加用户

[root@localhost ~]# su hadoop #切换

[hadoop@localhost root]$ exit #退出

exit

Hosts的配置:

[root@localhost ~]#vi /etc/hosts

追加

192.168.137.10 master #本机IP地址主机名

[root@localhost ~]#vi /etc/sysconfig/network

修改

HOSTNAME=master

[root@localhost ~]#hostname #查看主机名(需要重启才能修改主机名)[root@localhost ~]#hostname master #临时把主机名修改为master

[root@localhost ~]#logout #登出

SSH无密码登陆

[root@master ~]#yum –y install openssh-clients #安装SSH客户端

#ssh默认是需要输入密码的:

[root@ master ~]#ssh localhost

yes

#接下来需要输入密码,我们按[Ctrl+C]结束,接下来我们设置ssh的无密码登陆

[root@ master ~]#su hadoop #切换到hadoop用户

[hadoop@master root]$ cd

[hadoop@master ~]$ ssh-keygen –t rsa –P ‘’–f ~/.ssh/id_rsa #设置无密码登陆公钥和私钥对(除了rsa格式的公私钥还有dsa格式的:ssh-keygen –t dsa –P ‘’–f ~/.ssh/id_dsa)

[hadoop@master ~]$ pwd

/home/hadoop

[hadoop@master ~]$ cd .ssh/

[hadoop@master .ssh]$ ls –alh #查看生成的公钥(id_rsa.pub)和私钥(id_rsa)

[hadoop@master .ssh]$ cat id_rsa.pub >> authorized_keys

[hadoop@master .ssh]$ ls -alh

[hadoop@master .ssh]$ chmod 600 authorized_keys

[hadoop@master .ssh]$ cd ..

[hadoop@master ~]$ chmod 700 .ssh/

ssh无密码登陆设置成功。

测试:

[hadoop@master ~]$ ssh masterex

[hadoop@master ~]$ exit #退出ssh

JDK的安装:

[hadoop@master ~]$ exit #退出hadoop用户,进入root用户

[root@master ~]$ cd software/ #却换到JDK安装包目录

[root@master software]$ mkdir /usr/java #创建解压目录

[root@master software]$ tar -zxvf jdk-7u25-linux-i586.tar.gz –C /usr/java #解压(rpm包的解压:rpm –ivh jdkxxx.rpm)

[root@master software]$ cd /usr/java

[root@master java]$ ls –alh

[root@master ~]$ vi /etc/profile #配置PATH

[root@master ~]$ source /etc/profile #使配置生效

hadoop的配置

[root@master ~]# cd /software/

[root@master software]# ls -alh

[root@master software]#mkdir /software_jy

[root@master software]# tar -zxvf hadoop-1.2.1.tar.gz –C /software_jy [root@master software]# cd /software_jy/

[root@master software_jy]# ls -alh

总用量12K

drwxr-xr-x. 3 root root 4.0K 4月22 11:19 .

dr-xr-xr-x. 27 root root 4.0K 4月22 11:19 ..

drwxr-xr-x. 15 root root 4.0K 7月23 2013 hadoop-1.2.1

[root@master software_jy]# chown -R hadoop:hadoop hadoop-1.2.1/ [root@master software_jy]# mv hadoop-1.2.1/ hadoop

[root@master software_jy]# ls -alh

[root@master software_jy]# su hadoop

[hadoop@master software_jy]$ cd hadoop/conf

[hadoop@master hadoop]$ ls -alh

[hadoop@master conf]$ vi hadoop-env.sh #配置环境变量

[hadoop@master conf]$ vi core-site.xml

[hadoop@master conf]$ vi hdfs-site.xml #配置hdfs

需要配置namenode的数据目录、datanode的数据目录、集群个数(dfs.replication)

[hadoop@master conf]$ vi mapred-site.xml

[hadoop@master conf]$ vi masters #配置辅助名称节点

[hadoop@master conf]$ vi slaves #配置slaves

到此已配置完成。验证一下是否真正的配置成功:

[hadoop@master conf]$ cd ../bin

[hadoop@master bin]$ ./hadoop namenode -format

[hadoop@master bin]$ ./start-all.sh

[hadoop@master bin]$ jps

查看命令是否能正常执行。

[hadoop@master bin]$ ./hadoop dfsadmin –report #执行dfsadmin命令,-report作用:打印一个报告

查看hdfs中有什么内容:

[hadoop@master bin]$ ./hadoop fs -ls /

[hadoop@master bin]$ ./hadoop fs -ls /home/hadoop/mapred_system

查看日志文件:

[hadoop@master bin]$ cd ../logs

[hadoop@master logs]$ ls –alh

Hbase的配置:

[hadoop@master logs]$ cd ../conf

[hadoop@master conf]$ vi hdfs-site.xml

重启hadoop

[hadoop@master conf]$ cd ../bin [hadoop@master bin]$ ./stop-all.sh [hadoop@master bin]$ ./start-all.sh

[hadoop@master bin]$ ./hadoop dfsadmin –report #查看启动状态

http://192.168.137.10:50030/

http://192.168.137.10:50070/

开始安装Hbase

解压Hbase

[hadoop@master bin]$ exit

exit

[root@master ~]# cd /software

[root@master software]# tar -zxvf hbase-0.94.10.tar.gz -C /software_jy/ [root@master software]# cd /software_jy/

alh

[root@master software_jy]# ls –

[root@master software_jy]# mv hbase-0.94.10/ hbase

[root@master software_jy]# chown -R hadoop:hadoop hbase/

[root@master software_jy]# cd hbase/

[root@master hbase]# ls –

alh

[root@master conf]# ls -alh

[root@master conf]# vi hbase-site.xml

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面试题目及答案(附目录) 选择题 1.下面哪个程序负责HDFS 数据存储。 a)NameNode b)Jobtracker c)Datanode d)secondaryNameNode e)tasktracker 答案C datanode 2. HDfS 中的block 默认保存几份? a)3 份b)2 份c)1 份d)不确定 答案A 默认3 份 3.下列哪个程序通常与NameNode 在一个节点启动? a)SecondaryNameNode b)DataNode c)TaskTracker d)Jobtracker 答案D 分析:hadoop 的集群是基于master/slave 模式,namenode 和jobtracker 属于master,datanode 和tasktracker 属于slave,master 只有一个,而slave 有多个SecondaryNameNode 内存需求和NameNode 在一个数量级上,所以通常secondaryNameNode(运行在单独的物理机器上)和NameNode 运行在不同的机器上。 JobTracker 和TaskTracker JobTracker 对应于NameNode,TaskTracker 对应于DataNode,DataNode 和NameNode 是针对数据存放来而言的,JobTracker 和TaskTracker 是对于MapReduce 执行而言的。mapreduce 中几个主要概念,mapreduce 整体上可以分为这么几条执行线索:jobclient,JobTracker 与TaskTracker。 1、JobClient 会在用户端通过JobClient 类将应用已经配置参数打包成jar 文件存储到hdfs,并把路径提交到Jobtracker,然后由JobTracker 创建每一个Task(即MapTask 和ReduceTask)并将它们分发到各个TaskTracker 服务中去执行。 2、JobTracker 是一个master 服务,软件启动之后JobTracker 接收Job,负责调度Job 的每一个子任务task 运行于TaskTracker 上,并监控它们,如果发现有失败的task 就重新运行它。一般情况应该把JobTracker 部署在单独的机器上。 3、TaskTracker 是运行在多个节点上的slaver 服务。TaskTracker 主动与JobTracker 通信,接收作业,并负责直接执行每一个任务。TaskTracker 都需要运行在HDFS 的DataNode 上。 4. Hadoop 作者 a)Martin Fowler b)Kent Beck c)Doug cutting 答案C Doug cutting 5. HDFS 默认Block Size a)32MB b)64MB c)128MB 答案:B 6. 下列哪项通常是集群的最主要瓶颈 a)CPU b)网络c)磁盘IO d)内存 答案:C 磁盘 首先集群的目的是为了节省成本,用廉价的pc 机,取代小型机及大型机。小型机和大型机

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.sodocs.net/doc/8315419282.html,/thread-60444-1-1.html 用Hadoop进行分布式数据处理 https://www.sodocs.net/doc/8315419282.html,/thread-60447-1-1.html

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

hadoop基本操作指令

Hadoop基本操作指令 假设Hadoop的安装目录HADOOP_HOME为/home/admin/hadoop,默认认为Hadoop环境已经由运维人员配置好直接可以使用 启动与关闭 启动Hadoop 1. 进入HADOOP_HOME目录。 2. 执行sh bin/start-all.sh 关闭Hadoop 1. 进入HADOOP_HOME目录。 2. 执行sh bin/stop-all.sh 文件操作 Hadoop使用的是HDFS,能够实现的功能和我们使用的磁盘系统类似。并且支持通配符,如*。 查看文件列表 查看hdfs中/user/admin/aaron目录下的文件。 1. 进入HADOOP_HOME目录。 2. 执行sh bin/hadoop fs -ls /user/admin/aaron 这样,我们就找到了hdfs中/user/admin/aaron目录下的文件了。 我们也可以列出hdfs中/user/admin/aaron目录下的所有文件(包括子目录下的文件)。 1. 进入HADOOP_HOME目录。 2. 执行sh bin/hadoop fs -lsr /user/admin/aaron 创建文件目录 查看hdfs中/user/admin/aaron目录下再新建一个叫做newDir的新目录。 1. 进入HADOOP_HOME目录。 2. 执行sh bin/hadoop fs -mkdir /user/admin/aaron/newDir 删除文件 删除hdfs中/user/admin/aaron目录下一个名叫needDelete的文件 1. 进入HADOOP_HOME目录。 2. 执行sh bin/hadoop fs -rm /user/admin/aaron/needDelete 删除hdfs中/user/admin/aaron目录以及该目录下的所有文件

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,

Hadoop集群程序设计与开发教学大纲

《Hadoop集群程序设计与开发》教学 大纲 课程名称:Hadoop集群程序设计与开发 课程类别:必修 适用专业:大数据技术类相关专业 总学时:64学时 总学分:4.0学分 一、课程的性质 本课程是为大数据技术类相关专业学生开设的课程。大数据技术蓬勃发展,基于开源技术的Hadoop在行业中应用广泛。Hadoop开源免费、社区活跃,框架具备分布式存储和计算的核心功能,并且有企业成功的案例(如如淘宝、百度等)。本课程首先通过企业项目发展历程介绍了大数据与云计算的概念并将Hadoop在这二个领域中的作用与地位进行阐述。通过Hadoop源码片断与理论及实操结合的模式介绍Hadoop分布式存储框架HDFS与分布式计算框架MapReduce的用法。对于HDFS不能很好支持小条目读取的缺陷,引入HBase 框架进行应用说明。对于MapReduce框架对于项目专业人员的技能要求门槛高,复杂业务开发周期较长的问题引入了Hive框架进行应用说明。Hadoop与HBase和Hive结合进行项目中大数据的存取与统计计算在企业中的运用越来越广泛,学习Hadoop框架已然是进入大数据行业所必不可少的一步。 二、课程的任务 通过本课程的学习,使学生对Hadoop框架有一个全面的理解,课程内容主要包括了Hadoop基本原理与架构、集群安装配置、HDFS应用、HDFS I/O操作、MapReduce工作原理与应用编程、HBase基本应用、Hive基本应用,关键知识点配置Hadoop源码片断和实操案例进行辅助。涉及的知识点简要精到,实践操作性强。

三、教学内容及学时安排

四、考核方式 突出学生解决实际问题的能力,加强过程性考核。课程考核的成绩构成= 出勤(10%)+ 平时作业与课堂练习(30%)+ 课程设计(60%)。 五、教材与参考资料

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 ?进入HADOOP_HOME目录。 ?执行sh bin/start-all.sh 关闭Hadoop ?进入HADOOP_HOME目录。 ?执行sh bin/stop-all.sh 1、查看指定目录下内容 hadoopdfs –ls [文件目录] eg: hadoopdfs –ls /user/wangkai.pt 2、打开某个已存在文件 hadoopdfs –cat [file_path] eg:hadoopdfs -cat /user/wangkai.pt/data.txt 3、将本地文件存储至hadoop hadoopfs –put [本地地址] [hadoop目录] hadoopfs –put /home/t/file.txt /user/t (file.txt是文件名) 4、将本地文件夹存储至hadoop hadoopfs –put [本地目录] [hadoop目录] hadoopfs –put /home/t/dir_name /user/t (dir_name是文件夹名) 5、将hadoop上某个文件down至本地已有目录下hadoopfs -get [文件目录] [本地目录] hadoopfs –get /user/t/ok.txt /home/t 6、删除hadoop上指定文件 hadoopfs –rm [文件地址] hadoopfs –rm /user/t/ok.txt 7、删除hadoop上指定文件夹(包含子目录等)hadoopfs –rm [目录地址] hadoopfs –rmr /user/t

8、在hadoop指定目录内创建新目录 hadoopfs –mkdir /user/t 9、在hadoop指定目录下新建一个空文件 使用touchz命令: hadoop fs -touchz /user/new.txt 10、将hadoop上某个文件重命名 使用mv命令: hadoop fs –mv /user/test.txt /user/ok.txt (将test.txt重命名为ok.txt) 11、将hadoop指定目录下所有内容保存为一个文件,同时down至本地hadoopdfs –getmerge /user /home/t 12、将正在运行的hadoop作业kill掉 hadoop job –kill [job-id] 1、列出所有Hadoop Shell支持的命令 $ bin/hadoopfs -help 2、显示关于某个命令的详细信息 $ bin/hadoopfs -help command-name 3、用户可使用以下命令在指定路径下查看历史日志汇总 $ bin/hadoop job -history output-dir 这条命令会显示作业的细节信息,失败和终止的任务细节。 4、关于作业的更多细节,比如成功的任务,以及对每个任务的所做的尝试次数等可以用下面的命令查看 $ bin/hadoop job -history all output-dir 5、格式化一个新的分布式文件系统: $ bin/hadoopnamenode -format 6、在分配的NameNode上,运行下面的命令启动HDFS: $ bin/start-dfs.sh bin/start-dfs.sh脚本会参照NameNode上${HADOOP_CONF_DIR}/slaves文件的内容,在所有列出的slave上启动DataNode守护进程。 7、在分配的JobTracker上,运行下面的命令启动Map/Reduce: $ bin/start-mapred.sh bin/start-mapred.sh脚本会参照JobTracker上${HADOOP_CONF_DIR}/slaves文件的内容,在所有列出的slave上启动TaskTracker守护进程。 8、在分配的NameNode上,执行下面的命令停止HDFS: $ bin/stop-dfs.sh

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.sodocs.net/doc/8315419282.html, hdfs://192.168.65.57:9000

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

龙源期刊网 https://www.sodocs.net/doc/8315419282.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.sodocs.net/doc/8315419282.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.sodocs.net/doc/8315419282.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开发出现各种问题,就把权限关了!

相关主题