HBase是一个分布式的、面向列的开源数据库,该技术来源于Chang et al所撰写的Google论文“Bigtable:一个结构化数据的分布式存储系统”。就像Bigtable利用了Google文件系统(File System)所提供的分布式数据存储一样,HBase在Hadoop之上提供了类似于Bigtable的能力。HBase是Apache的Hadoop项目的子项目。HBase不同于一般的关系数据库,它是一个适合于非结构化数据存储的数据库.另一个不同的是HBase基于列的而不是基于行的模式。HBase使用和Bigtable非常相同的数据模型。用户存储数据行在一个表里。一个数据行拥有一个可选择的键和任意数量的列。表是疏松的存储的,因此用户可以给行定义各种不同的列。HBase主要用于需要随机访问,实时读写你的大数据(Big Data)。
本文主要介绍在Ubuntu10.04环境下安装配置单机版原生的HBase。在网络上找到的文章要么语焉不详,要么ungeliable.于是记录一下自己的安装配置过程,做个STEP BY STEP的图文并茂的教程,谨防自己以后忘记 。
向您推荐《Facebook实时信息系统:HBase每月存储1350亿条信息》
安装Hbase其实主要是配置好java环境以及Hadoop与Hbase的配置文件。
1.安装并配置Java环境。在Ubuntu10.04默认的源使用的OpenJDK,在某些应用上OpenJDK并不被支持(如abicloud等).我们为了省事还是安装sun java ,打开终端,输入以下命令:
(1)安装
sudoadd-apt-repository"debhttp://archive.canonical.com/lucidpartner" sudoapt-getupdate sudoapt-getinstallsun-java6-jresun-java6-pluginsun-java6-fonts sudoapt-getinstallsun-java6-jdksun-java6-pluginsun-java6-fonts
查看是否安装成功
$java-version
(2) 设置默认的java解释器。
sudoupdate-alternatives--configjava
会出现下列图面:
输入你想选择的编号。
(3)编辑java环境变量
sudogedit/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
sudoapt-getinstallssh
(2)设置不用登录密码
<PREclass=wiki>$ssh-keygen-trsa-f~/.ssh/id_rsa-P""</PRE> <PREclass=wiki>$cp~/.ssh/id_rsa.pub~/.ssh/authorized_keys</PRE>
完成后登录不用输入密码,***次需要输入回车键。
$sshlocalhost $exit $sshlocalhost $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权限)。
cdhadoop-0.20.2 geditconf/hadoop-env.sh
将以下java环境copy进去。
exportJAVA_HOME=/usr/lib/jvm/java-6-sun-1.6.0.22
(5)设置xml文件,需要设置conf文件夹下的三个文件core-site.xml, hdfs-site.xml, mapred-site.xml。
geditconf/core-site.xml
将下面内容copy进该文件中:
<configuration> <property> <name>fs.default.name</name> <value>hdfs://localhost:9000</value> </property> <property> <name>hadoop.tmp.dir</name> <value>/var/hadoop/hadoop-\${user.name}</value> </property> </configuration>
保存退出,继续修改另外一个文件hdfs-site.xml
geditconf/hdfs-site.xml
将下面内容copy进该文件
<configuration> <property> <name>dfs.replication</name> <value>1</value> </property> </configuration>
保存退出,修改***一个文件
geditmapred-site.xml
将下面内容copy进该文件
<configuration> <property> <name>mapred.job.tracker</name> <value>localhost:9001</value> </property> </configuration>
经历以上步骤,所有文件修改完毕,已经设置好Hadoop单机测试环境,下面将是启动Hadoop服务。
3.格式化Namenode并开启所有Hadoop服务,查看服务状态。
(1)格式化Namenode
bin/hadoopnamenode-format
会出现下面画面:
(2)启动所有Hadoop服务
bin/start-all.sh
会出现下面画面:
(3)查看服务状态。
管理页面:http://localhost:50030/jobtracker.jsp
原文链接:http://www.cnblogs.com/ventlam/archive/2010/11/24/hadoop.html
- Facebook实时信息系统:HBase每月存储1350亿条信息SQL Server数据库对大数据量表数据进行DELETEMongoDB CEO谈NoSQL的大数据量处理能力详解NoSQL数据库使用实例细数Google HBase与BigTable区别在哪里?
【编辑推荐】