wget http://mirrors.cnnic.cn/apache/zookeeper/zookeeper-3.4.5/zookeeper-3.4.5.tar.gz
tar -xzvf zookeeper-3.4.5.tar.gz
cd zookeeper-3.4.5
cp conf/zoo_sample.cfg conf/zoo.cfg
vi conf/zoo.cfg
修改:dataDir=/home/ysc/zookeeper
添加:
server.1=host001:2888:3888
maxClientCnxns=100
mkdir /home/ysc/zookeeper(注:dataDir是zookeeper的数据目录,需要手动创建)
echo 1 > /home/ysc/zookeeper/myid
启动服务:
bin/zkServer.sh start
连接服务:
bin/zkCli.sh -server host001:2181
查看服务状态:
bin/zkServer.sh status
hbase存在系统时间同步的问题,并且误差要再30s以内
sudo apt-get install ntp
sudo ntpdate -u 210.72.145.44
HBase是数据库,会在同一时间使用很多的文件句柄,大多数linux系统使用的默认值1024是不能满足的,还需要修改 hbase 用户的nproc,在压力很大的情况下,如果过低会造成 OutOfMemoryError异常
sudo vi /etc/security/limits.conf
添加:
ysc soft nproc 32000
ysc hard nproc 32000
ysc soft nofile 32768
ysc hard nofile 32768
sudo vi /etc/pam.d/common-session
添加:
session required pam_limits.so
wget http://mirrors.hust.edu.cn/apache/hbase/hbase-0.94.12/hbase-0.94.12.tar.gz
tar -xzvf hbase-0.94.12.tar.gz
cd hbase-0.94.12
vi conf/hbase-env.sh
追加:
export JAVA_HOME=/home/ysc/jdk1.7.0_40
export HBASE_MANAGES_ZK=false
export HBASE_HEAPSIZE=1000
vi conf/hbase-site.xml
加入:
<property>
<name>hbase.rootdir</name>
<value>hdfs://host001:9000/hbase</value>
</property>
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<property>
<name>hbase.zookeeper.quorum</name>
<value>host001</value>
</property>
vi conf/regionservers
改localhost为host001
因为HBase建立在Hadoop之上,Hadoop使用的hadoop*.jar和HBase使用的必须一致。所以要将 HBase lib目录下的hadoop*.jar替换成Hadoop里面的那个,防止版本冲突。
cp /home/ysc/hadoop-1.2.1/hadoop-core-1.2.1.jar /home/ysc/hbase-0.94.12/lib
rm /home/ysc/hbase-0.94.12/lib/hadoop-core-1.0.4.jar
启动hadoop并创建目录
hadoop fs -mkdir /hbase
sudo vi /etc/profile
增加:
export PATH=$PATH:/home/ysc/hbase-0.94.12/bin
source /etc/profile
启动初始 HBase 集群:
start-hbase.sh
web界面
http://host001:60010
http://host001:60030
停止HBase 集群:
stop-hbase.sh
启动额外备份主服务器,可以启动到 9 个备份服务器(总数10 个):
local-master-backup.sh start 1
local-master-backup.sh start 2 3
启动更多regionservers, 支持到99 个额外regionservers(总100个):
local-regionservers.sh start 1
local-regionservers.sh start 2 3 4 5
停止备份主服务器:
cat /tmp/hbase-ysc-1-master.pid | xargs kill -9
停止单独regionserver:
local-regionservers.sh stop 1
使用HBase命令行模式:
hbaseshell
命令演示:
创建表Person,列族basic和detail
create 'Person', 'basic', 'detail'
看有哪些表:
list
看是否有person表:
list 'person'
增加数据,动态增加列:
数据1:
put 'Person','533001198510125838', 'basic:idcard', '533001198510125838'
put 'Person', '533001198510125838','basic:name', '章子怡'
put 'Person','533001198510125838', 'detail:age', '25'
数据2:
put 'Person', '533001198510125837','basic:idcard', '533001198510125837'
put 'Person','533001198510125837', 'basic:name', '杨尚川'
put 'Person','533001198510125837', 'detail:age', '22'
查询整条数据:
get 'Person','533001198510125838'
get 'Person','533001198510125837'
查询单列数据:
get 'Person', '533001198510125837','basic:idcard'
查询多列数据:
get 'Person', '533001198510125837','basic:idcard', 'detail:age'
查询全部数据:
scan 'Person'
删除表:
disable 'Person'
drop 'Person'
相关推荐
总结起来,这个“Hbase操作Hadoop分布式数据库java工程实例”是一个全面的学习资源,涵盖了HBase的基本概念、Java编程接口和测试实践。通过学习和实践这个实例,开发者能够掌握HBase在Hadoop环境下的实际应用,为大...
### HBase:云计算环境下的分布式数据库 #### 一、HBase简介 HBase是Apache Hadoop项目中的一个重要组件,主要用于处理大规模数据集的分布式存储需求。作为一种非关系型数据库,HBase特别适合于非结构化数据的存储...
本文将讨论如何基于Hadoop分布式存储与分析平台解决这一问题。 Hadoop是一个开源的分布式存储和处理大数据的框架,它能有效地存储和处理PB级别的数据。Hadoop的核心是HDFS(Hadoop Distributed File System),它...
第5章-Hadoop分布式数据库HBASE.pptx
基于Hadoop分布式系统的地质环境大数据框架探讨,涉及了地质环境大数据的特性分析,以及提出了一种基于Hadoop生态系统架构的框架。这个框架支持数据清洗转换、分布式数据存储管理、数据挖掘、文本搜索和数据可视化等...
第零章 大数据概述(2学时) 第一章 Hadoop概述(2学时) 第二章 Hadoop环境搭建(6学时) ...第五章 分布式数据库HBase(6学时) 第六章 分布式数据仓库Hive(8学时) 第七章 综合实例(8学时)
基于Hadoop的分布式数据库测试方法研究主要关注在电力系统海量数据存储采集的背景下,构建基于Hadoop生态圈框架的通用测试方法,以对分布式数据库的性能进行分析和检测。随着数据量的激增,传统的集中式数据库已无法...
在构建分布式网盘系统时,通常会涉及到多个技术栈,如大数据处理框架Hadoop、分布式数据库HBase以及微服务开发框架Spring Boot。本项目“基于hadoop+hbase+springboot实现分布式网盘系统”旨在利用这些技术搭建一个...
通过使用HBase存储数据,Hive作为数据仓库工具用于查询和分析数据,研究了一种基于Hadoop的分布式数据库系统模型。 Hadoop框架使用了HDFS(Hadoop Distributed File System)作为其文件系统,能够存储大量数据,并...
HBase是基于Hadoop的分布式文件系统(HDFS)的开源分布式数据库,属于面向列的NoSQL数据库。它利用HDFS的高容错性和扩展性特性,能够存储海量数据,特别适合于那些数据量庞大而访问模式不确定的场景。HBase采用列...
本文将围绕“Hadoop分布式搭建配置/Hive/HBase”这一主题,深入探讨Hadoop生态系统中的关键组件,并结合提供的书籍资源进行讲解。 首先,Hadoop是一个开源的分布式计算框架,它允许在大规模集群上处理和存储大量...
HBase作为Hadoop生态系统的一部分,是一个开源的非关系型分布式数据库(NoSQL),它支持大数据量的存储和实时查询。HBase以列族的形式存储数据,表可以被划分为多个列族,每个列族可以进一步划分为多个列限定符。...
HBase是建立在HDFS之上,为处理大规模的稀疏数据集而设计的NoSQL数据库。HBase采用了列存储,这意味着数据按照列而不是行进行存储,非常适合于读写密集型的实时应用。HBase提供了高扩展性,可运行在廉价的硬件上,...
基于SpringMVC+Spring+HBase+Maven搭建的Hadoop分布式云盘系统。使用Hadoop HDFS作为文件存储系统、HBase作为数据存储仓库,采用SpringMVC+Spring框架实现,包括用户注册与登录、我的网盘、关注用户、我的分享、我...
在深入分析Hadoop云计算框架中的分布式数据库HBase研究之前,我们先了解一下Hadoop的背景和其核心组件。Hadoop是一个开源框架,它允许使用简单的编程模型在计算机集群上进行海量数据的存储和处理。由于其用Java语言...
"分布式数据库HBase" HBase 是一个分布式的、面向列的开源数据库,源于 Google 的一篇论文《BigTable:一个结构化数据的分布式存储系统》。HBase 以表的形式存储数据,表有行和列组成,列划分为若干个列族/列簇...