当前位置:首页 > PHP教程 > PHP总结归纳

HBase入门7-安全&权限

我的废话: 大年三十夜,看春晚实在是太无聊了,整个《新闻联播》的电视剧版本,还不如上上网,看看资料,喝喝老酒,写点东西来的快活。 近2年来云计算的话题到目前为止风风火火从来没有平静过,一直是大家嘴边讨论的热门话题,人们期望运用云计算提供可靠、

我的废话:
大年三十夜,看春晚实在是太无聊了,整个《新闻联播》的电视剧版本,还不如上上网,看看资料,喝喝老酒,写点东西来的快活。

近2年来云计算的话题到目前为止风风火火从来没有平静过,一直是大家嘴边讨论的热门话题,人们期望运用云计算提供可靠、稳定、高速的计算,在云计算中google是目前最大的云计算供应商,例如:google gae(google app engine)和google的docs在线文章服务,这些saas上线产品的数据存储(datastore)是由bigtable提供存储服务的,在次之前我提到过yahoo贡献给apache的那些山寨版本(google与yahoo的那些利器),其中apache的hbase就是山寨了google的bigtable。

我们知道在云计算的技术话题中apache的hadoop项目是一块基石,利用hadoop项目中的产品可以建立云计算平台和超大型的计算。不知道你是否有想过如果将hbase作为google gae上的数据存储(datastore),那么每个用户之间的数据访问权限怎么办?如果使用hbase提供对大客户提供“私有云”(private cloud)或者另一种可能一个公司内部的集群上运行hbase,公司的内部可能有几个部门,某几个部门之间的数据都是独立分离但又运行在一个平台上,那么你就会发现hbase不具备这样的功能,貌似目前hbase的最高版本0.90.0还没有这样的功能对用户的表、row、cell的访问权限。但是我们知道google的gae上每个用户访问的数据肯定是有权限划分的,不然我只要有权限登录gea就能看见所有用户存放的数据了。这样的问题你有可能没有想过,但趋势公司的工程师们却为此想到了这点,并且把他们的设想和设计提交了hbase项目组,并且提出了以下主要的设计思想:
1. client access to hbase is authenticated
2. user data is private unless access has been granted
3. access to data can be granted at a table or per column family basis.

对hbase中的表和数据划分权限等级和身份验证后,操作权限被分为3大类,每类中包含的操作权限如下所示:

对于方案中涉及到存储的权限的是指整个表或表中的列族,也就是说只考虑在表这个级别的权限,表与表之间的所属关系是存放在 .meta. 系统表中,以regioninfo:owner 的格式进行存放,例如:系统中table1这个表是有权限的,这个表权限的存根保存在3个地方 :
* the row in .meta. for the first region of table1
* the node /hbase/acl/table1 of zookeeper
* the in-memory permissions mirror of every regionserver that serves table1
如图所示,图中的箭头表示了数据流向的顺序:

查看大图请点击这里

方案中hbase在分布式、集群环境下,而权限一致性的问题交给了zookeeper来处理,在多个regionservers中,每个服务器的hregion中存放着多个表,并且实现了(implement)zkpermissionwatcher接口的nodecreated() 和 nodechanged() 方法,这2个方法对zookeeper 的节点进行监控, 节点的状态发生相应的变化时会zookeeper刷新镜像中的权限。
如图所示:

查看大图请点击这里

hbase的这一关于权限的功能正在设计和研讨当中,让我们继续对他保持关注,看看今后将会发生的变化能给我们带来什么样的效果,非常期待这个功能早日正式发布。

2011年的大年三十夜,祝大家新年快乐,往事如意。

相关文章:
hbase入门6 -白话mysql(rdbms)与hbase之间
lily-建立在hbase上的分布式搜索
mysql向hive/hbase的迁移工具
hbase入门5(集群) -压力分载与失效转发
hive入门3–hive与hbase的整合
hbase入门篇4
hbase入门篇3
hbase入门篇2-java操作hbase例子
hbase入门篇
基于hbase存储的分布式消息(im)系统-jabase

–end–


【说明】本文章由站长整理发布,文章内容不代表本站观点,如文中有侵权行为,请与本站客服联系(QQ:)!