社区编辑申请
注册/登录
浅析Hbase中的Hadoop单机环境配置
数据库 Hadoop
今天我们要介绍的是Hbase中的Hadoop单机环境配置,系统为Ubuntu10.04。希望对大家有所帮助。

HBase是一个分布式的、面向列的开源数据库,该技术来源于Chang et al所撰写的Google论文“Bigtable:一个结构化数据的分布式存储系统”。就像Bigtable利用了Google文件系统(File System)所提供的分布式数据存储一样,HBase在Hadoop之上提供了类似于Bigtable的能力。HBase是Apache的Hadoop项目的子项目。HBase不同于一般的关系数据库,它是一个适合于非结构化数据存储的数据库.另一个不同的是HBase基于列的而不是基于行的模式。HBase使用和Bigtable非常相同的数据模型。用户存储数据行在一个表里。一个数据行拥有一个可选择的键和任意数量的列。表是疏松的存储的,因此用户可以给行定义各种不同的列。HBase主要用于需要随机访问,实时读写你的大数据(Big Data)。

 

HBase架构图

本文主要介绍在Ubuntu10.04环境下安装配置单机版原生的HBase。在网络上找到的文章要么语焉不详,要么ungeliable.于是记录一下自己的安装配置过程,做个STEP BY STEP的图文并茂的教程,谨防自己以后忘记 。

51CTO向您推荐《Facebook实时信息系统:HBase每月存储1350亿条信息

安装Hbase其实主要是配置好java环境以及Hadoop与Hbase的配置文件。

1.安装并配置Java环境。在Ubuntu10.04默认的源使用的OpenJDK,在某些应用上OpenJDK并不被支持(如abicloud等).我们为了省事还是安装sun java ,打开终端,输入以下命令:

(1)安装 

  1. sudo add-apt-repository "deb http://archive.canonical.com/ lucid partner"   
  2. sudo apt-get update    
  3. sudo apt-get install sun-java6-jre sun-java6-plugin sun-java6-fonts    
  4. sudo apt-get install sun-java6-jdk sun-java6-plugin sun-java6-fonts  

查看是否安装成功

  1. $ java -version  

(2) 设置默认的java解释器。

  1. sudo update-alternatives --config java  

会出现下列图面:

输入你想选择的编号。

(3)编辑java环境变量

  1. sudo gedit /etc/environment  

在弹出的environment文件中添加下列两行:

CLASSPATH=.:/usr/lib/jvm/java-6-sun/lib  JAVA_HOME=/usr/lib/jvm/java-6-sun

保存退出,行文至此,java环境已经配置好。

2.安装并配置Hadoop。虽说我安装的是单机版的Hbase,但是由于Hadoop本来就是分布系统,使用SSH通讯。

(1)安装ssh

  1. sudo apt-get install ssh  

(2)设置不用登录密码

  1. <PRE class=wiki>$ ssh-keygen -t rsa -f ~/.ssh/id_rsa -P ""</PRE>    
  2. <PRE class=wiki>$ cp ~/.ssh/id_rsa.pub ~/.ssh/authorized_keys</PRE>  

完成后登录不用输入密码,***次需要输入回车键。        

  1. $ ssh localhost    
  2. $ exit    
  3. $ ssh localhost    
  4. $ exit  

 (3)下载解压Hadoop,到http://hadoop.apache.org/common/releases.html#Download下载stable版本0.20.2.并解压到/Home路径

(4)修改hadoop-env.sh 。在本人机器上解压路径是/home/viki/hadoop-0.20.2,进入刚才所解压的文件夹,修改之(需要root权限)。

  1. cd hadoop-0.20.2   
  2. gedit conf/hadoop-env.sh  

将以下java环境copy进去。

  1. export JAVA_HOME=/usr/lib/jvm/java-6-sun-1.6.0.22  

(5)设置xml文件,需要设置conf文件夹下的三个文件core-site.xml, hdfs-site.xml, mapred-site.xml。

  1. gedit  conf/core-site.xml  

将下面内容copy进该文件中:

  1. <configuration>    
  2. <property>    
  3. <name>fs.default.name</name>    
  4.  <value>hdfs://localhost:9000</value>    
  5.  </property>    
  6.  <property>    
  7.  <name>hadoop.tmp.dir</name>    
  8.   <value>/var/hadoop/hadoop-\${user.name}</value>    
  9. </property>    
  10.  </configuration>  

保存退出,继续修改另外一个文件hdfs-site.xml

  1. gedit  conf/hdfs-site.xml  

将下面内容copy进该文件

  1. <configuration>    
  2. <property>    
  3.    <name>dfs.replication</name>    
  4.  <value>1</value>    
  5.  </property>    
  6. </configuration>  

保存退出,修改***一个文件 

  1. gedit mapred-site.xml  

将下面内容copy进该文件

  1. <configuration>    
  2.   <property>    
  3.     <name>mapred.job.tracker</name>    
  4.    <value>localhost:9001</value>    
  5.   </property>    
  6.  </configuration>  

经历以上步骤,所有文件修改完毕,已经设置好Hadoop单机测试环境,下面将是启动Hadoop服务。

3.格式化Namenode并开启所有Hadoop服务,查看服务状态。

(1)格式化Namenode

  1. bin/hadoop namenode -format  

会出现下面画面:

(2)启动所有Hadoop服务

  1. bin/start-all.sh  

会出现下面画面:


(3)查看服务状态。

管理页面:http://localhost:50030/jobtracker.jsp

原文链接:http://www.cnblogs.com/ventlam/archive/2010/11/24/hadoop.html

 

  1. Facebook实时信息系统:HBase每月存储1350亿条信息
  2. SQL Server数据库对大数据量表数据进行DELETE
  3. MongoDB CEO谈NoSQL的大数据量处理能力
  4. 详解NoSQL数据库使用实例
  5. 细数Google HBase与BigTable区别在哪里?

【编辑推荐】

责任编辑:彭凡 来源: 博客园
相关推荐

2010-06-03 13:21:07

HadoopHBase

2015-08-26 10:18:40

hbase

2010-06-04 09:43:47

2020-11-19 10:30:28

Linux

2010-06-04 17:43:12

Hadoop集群搭建

2010-06-03 15:39:47

Hadoop配置

2010-06-03 14:55:59

Hadoop配置

2010-06-03 15:13:34

Hadoop Hdfs

2010-06-03 15:25:31

Hadoop Hdfs

2012-06-25 10:30:06

2010-06-03 12:57:06

2017-03-09 08:37:26

2020-09-08 13:25:52

同话题下的热门内容

历时1年,大型金融企业100%核心系统国产数据库迁移实践明明加了唯一索引,为什么还是产生重复数据?8 月数据库排行榜:Oracle 分数大跌,MySQL 上涨最多字节二面,两个事务执行 SQL 语句的过程中,导致死锁都说国产数据库90%兼容Oracle,为何迁移过程中总遇难题?推荐几款好用的MySQL开源客户端,建议收藏一款Web3原生数据库:Tableland分布式系统中,级联故障是最可怕的

编辑推荐

Oracle数据库初学者开场篇NoSQL数据库概览及其与SQL语法的比较如果对MySQL还停留在这个印象,就out了SQL编程之高级查询及注意事项防止服务器宕机时MySQL数据丢失的几种方案
我收藏的内容
点赞
收藏

51CTO技术栈公众号