对HBAS 和RDBMS 的认识

Sherlock 666 2019-04-19 02:51:36
HBAS、RDBMS等计算机专业概念以及它们的作用机制虽然和经济方面没有什么直接关联,但是我作为一个国贸专业的学生,个人认为任何专业在思维方面都有或多或少的联系,甚至说把这方面的系统思维模式运用到自己的专业,融会贯通都是可行的。以下是我对这二者的认识。 HBase是一个分布式的、面向列的开源数据库,该技术来源于 Fay Chang 所撰写的Google论文“Bigtable:一个结构化数据的分布式存储系统”。HBase是Apache的Hadoop项目的子项目。它不同于一般的关系数据库,是一个适合于非结构化数据存储的数据库。另一个不同的是HBase基于列的而不是基于行的模式。HBase – Hadoop Database,是一个高可靠性、高性能、面向列、可伸缩的分布式存储系统,利用HBase技术可在廉价PC Server上搭建起大规模结构化存储集群。在Hadoop EcoSystem中的各层系统中,HBase位于结构化存储层,Hadoop HDFS为HBase提供了高可靠性的底层存储支持,Hadoop MapReduce为HBase提供了高性能的计算能力,Zookeeper为HBase提供了稳定服务和failover机制。此外,Pig和Hive还为HBase提供了高层语言支持,使得在HBase上进行数据统计处理变的非常简单。 Sqoop则为HBase提供了方便的RDBMS数据导入功能,使得传统数据库数据向HBase中迁移变的非常方便。 RDBMS即关系数据库管理系统(Relational Database Management System),是将数据组织为相关的行和列的系统,而管理关系数据库的计算机软件就是关系数据库管理系统,常用的数据库软件有Oracle、SQL Server等。它通过数据、关系和对数据的约束三者组成的数据模型来存放和管理数据。它通过数据、关系和对数据的约束三者组成的数据模型来存放和管理数据。自关系数据库管理系统被提出以来,RDBMS获得了长足的发展,许多企业的在线交易处理系统、内部财务系统、客户管理系统等大多采用了RDBMS。字节级关系型数据库在大型企业集团中已是司空见惯。 他们二者的区别主要在各自的特点上。首先对RDBMS而言,它的特点是面向试图、标准化数据以及薄表。面向视图是指RDBMS表使用固定的视图,表中的数据类型也会事先定义。表的视图在创建时就已经定义,并且不容易修改。因此会限制RDBMS的使用场景,这也是RDBMS为什么适合高度结构化的用例场景的原因。标准化数据是指RDBMS通常存储着高度标准化的数据,但是数据仓库中可能存在非标准化的数据。薄表是指RDBMS表中通常不会包含太多列,并且最大只支持几百个列。包含一对一,一对多,多对多的关系。而HBASE相对RDBMS而言,其特点较少,主要包括弱视图和非标准化数据。弱视图是HBase的一种高效的映射嵌套。用户可以在运行时定义列,每一行都有属于自己的列。HBase非常适合数据结构灵活的应用。当文档中的页面数量庞大时,列可以根据页面的数据进行调整。而不包含这么多页面的文档则可以将不需要的列设置为空值。非标准化数据是从HBase表中检索出的行用例视角的信息全集,这能极大减少服务器的执行周期并支持大量的并发请求。
...全文
69 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

249

社区成员

发帖
与我相关
我的任务
社区描述
其他产品/厂家
社区管理员
  • 其他
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧