简单来说,传统关系型数据库的修改与删除,可以快速通过主键、列或索引直接锁定到某一行或某些行,进行物理删除。 而对于Hbase来说,受到hdfs文件系统的局限(hdfs文件系统不能修改,添加也很不方便),进行CRUD的操作就会变得相对复杂。 Hbase的修改,是根据某个行键添加一行数据,并未这行数据生成一个较新的时间戳来实现,每个行键都会对应多个时间戳的数据,那么最新的时间戳就是最终修改后的内容。 而删除则是通过标记来实现,如果要删除某行记录,Hbase会添加一个带有删除标记的行,通过这个删除标记来辨认该行建的数据是否删除。 Hbase与关系型数据库的区别: 1、场景 Hbase是面向列的数据库,适合大量的插入的同时又要具备不俗的读功能,而Oracle或其他关系型数据库适合处理比较复杂的业务关系或事务处理,而且,在数据在一定量级下都会有良好的表现,并不是所有业务的数据压力都会发生比较极端的情况。 2、索引 Hbase只能做主键索引,而关系型数据库可以根据需求不同加入适合的索引机制,供用户查询。 3、瓶颈 Hbase的瓶颈是硬盘的传输速度,Oracle的瓶颈是硬盘的寻道时间(可以看做是硬盘的转数)。 4、业务 Hbase适合按照时间排序的业务,而Oracle或其他关系型数据库应用比较广泛,如OLTP或OLAP
HBase 使用 drop 命令删除表,但是在删除表之前需要先使用 disable 命令禁用表。
例如有一个 Student 表,删除该表的完整流程如下:
disable 'Student'
drop 'Student'
使用 disable 禁用表以后,可以使用 is_disable 查看表是否禁用成功。
另外,如果只是想清空表中的所有数据,使用 truncate 命令即可,此命令相当于完成禁用表、删除表,并按原结构重新建立表操作:
truncate 'Student'
HBase三层结构:
第一层 Zookeeper文件
记录了-ROOT-表的位置信息
第二层 -ROOT-表
记录了.META.表的Region位置信息-ROOT-表只能有一个Region。通过-ROOT-表,就可以访问.META.表中的数据
做hadoop和zookeeper的是大数据开发或运维岗。
Hadoop是一个由Apache基金会所开发的分布式系统基础架构。用户可以在不了解分布式底层细节的情况下,开发分布式程序。
ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoop和Hbase的重要组件。它是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、域名服务、分布式同步、组服务等。
到此,以上就是小编对于zookeeper和hbase的问题就介绍到这了,希望这3点解答对大家有用。
网站题目:zookeeper与Hbase的关系是什么
转载源于:http://www.mswzjz.cn/qtweb/news25/426975.html
攀枝花网站建设、攀枝花网站运维推广公司-贝锐智能,是专注品牌与效果的网络营销公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 贝锐智能