在学习Hadoop的过程中,你可能会遇到在Hadoop创建Hbase表的问题,本节和大家介绍一下,欢迎大家一起来学习在Hadoop创建Hbase表的方法。
在Hadoop创建Hbase表
之前项目组曾经尝试过Hadoop来进行DFS存储,但是因为当时Hadoop版本不稳定,或者是我们使用的不深入,感觉Hadoop不是太稳定,有些文件扫描时会出错,因此就放弃了Hadoop的方案。最近在寻找大容量样本数据库的方案,又想起Hadoop来了,而且最近新出的HBase构建在Hadoop之上,实现了一个类似Bigtable的存储结构,恰好能满足要求。拿来尝试下。
安装很简单,下载HBase的文件,解压,修改下conf/hbase-site.xml,测试时简单的用本机:
hbase.rootdir
file:///tmp/hbase-${user.home}/hbase
修改conf/hbase-env.sh,把JAVA_HOME路径写进去。ok了
执行hbase/bin/start-hbase.sh启动一个hbase服务器。
运行hbase/bin/hbaseshell进入HQL的shell。
进入HQLshell有种熟悉的感觉,如同mysql或者sqlite的shell,试着创建了一个表:
createtableuser(name,age);~运行ok,很简单。
在Hadoop创建Hbase表时插入条数据:
hql>insertintouser(name,age)values("AlbertLee",26);
Syntaxerror:Type'help;'forusage.
Message:Encountered";"atline1,column56.
hql>
oh,出错了,看help,原来需要一个row的key,之前看过Google的Bigtable的论文,大概知道这个rowkey是定位一行数据的
hql>insertintouser(name,age)values("AlbertLee",26)whererow='al';
1rowinsertedsuccessfully.(0.12sec)
ok,查询:
hql>select*fromuser;
+-------------------------+-------------------------+-------------------------+
|Row|Column|Cell|
+-------------------------+-------------------------+-------------------------+
|al|age:|26|
+-------------------------+-------------------------+-------------------------+
|al|name:|AlbertLee|
+-------------------------+-------------------------+-------------------------+
恩,看到Rowal这个行,有两个Column,一个age,一个name。没有发现Update语句而是直接用Insert,改下数据覆盖掉就可以了,应该会记录不同的版本的数据的,具体再试验。本节关于在Hadoop创建Hbase表内容介绍到这里,谢谢关注。
【编辑推荐】
文章标题:Hadoop创建Hbase表方法指导
当前路径:http://www.shufengxianlan.com/qtweb/news28/383228.html
网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联