自学大数据入门,例如hcolumndescriptor,这类长串代码码员都是怎么记的

在上一篇中 中成功搭建了Hadoop+HBase嘚环境,本文则主要讲述使用Java 对HBase的一些操作

}
* 插入或更新单个数据 * 测试取出一個列族的值 * 测试取出一行数据所有值
}

创建一个新表使用一组初始指定嘚分割键限定空区域

这个类包含一个HBase表如详细信息:

  • 与之相关联的协同处理器等
构造一个表描述符指定TableName对象。
}
用于大数据的并查集(基于HBase)的java類

用于大数据的并查集(基于HBase)的java类

您还没有浏览的资料哦~

快去寻找自己想要的资料吧

您还没有收藏的资料哦~

收藏资料后可随时找到自己囍欢的内容

}

BigTable是什么Google的Paper对其作了充分的说明。字面上看就是一张大表其实和我们想象的传统的表还是有些差别的。松散数据可以说是介于Map Entry(key & value)和DB Row之间的一种数据在我使用Memcache的时候,有时候的需求是需要存储的不仅仅是简单的一个key对应一个value可能我需要类似于数据库表结构中多属性的存储,但是又不会有传统数据库表结构中那么多关联关系的需求其实这类数据就是所谓的松散数据。BigTable最浅显来看就是一张很大的表表的属性可以根据需求去动态增加,但是又没有表与表之间关联查询的需求

        互联网应用有一个最大的特点,就是速度功能再强大,速度慢还是会被舍弃。因此在大访問量的网站都采取前后的缓存来提升性能和响应时间对于Map Entry类型的数据,集中式分布式Cache都有很多选择对于传统的关系型数据,从到Oracle都给叻很好的支持唯有松散数据这类数据,采用前后两种解决方案都不能最大化它的处理能力因此BigTable才有了它用武之地。

HBase是一个针对结构化數据的可伸缩、分布式和面向列的动态模式数据库它能有效和可靠地管理分布在数千个商品服务器上的大规模数据(千兆兆字节或更多)。HBase 根据 Google 的 Bigtable 数据库建模是 Apache Software Foundation 的 项目的子项目。

最适合使用Hbase存储的数据是非常稀疏的数据(非结构化或者半结构化的数据)Hbase之所以擅长存储这類数据,是因为Hbase是column-oriented列导向的存储机制而我们熟知的RDBMS都是row-oriented行导向的存储机制(郁闷的是我看过N本关于关系数据库的介绍从来没有提到过row-oriented行导姠存储这个概念)。在列导向的存储机制下对于Null值得存储是不占用任何空间的比如,如果某个表UserTable有10列但在存储时只有一列有数据,那么其他空值的9列是不占用存储空间的(普通的数据库MySql是如何占用存储空间的呢?)
  Hbase适合存储非结构化的稀疏数据的另一原因是他对列集合 column families 处悝机制。打个比方ruby和这样的动态语言和c++、类的编译语言有什么不同?对于我来说,最显然的不同就是你不需要为变量预先指定一个类型Ok,现在Hbase为未来的DBA也带来了这个激动人心的特性你只需要告诉你的数据存储到Hbase的那个column

Hbase还有很多特性,比如不支持join查询但你存储时可以用:parent-child tuple 的方式来变相解决。

一个空单元没有与单元的键相关联的值在表 1 中,与键 (000002, contact:http, t4) 关联的单元为空空单元不存储在 HBase 中,读取空单元类似于根據不存在的键从映射提取值HBase 表以这种方法适应稀疏的 行。

对于任意行一次只能访问一个列族的一个成员(这与关系数据库不同,在关系数据库中一个查询可以访问来自一个行中的多个列的单元)。您可以将一个行中的一个列族的成员视为子行

表被分解为多个表区域,等同于 Bigtable 片(tablet)一个区域包含某个范围中的行。将一个表分解为多个区域是高效处理大型表的关键机制

Stamp是每次数据操作对应关联的时間戳,可以看作类似于SVN的版本Column定义为:<family>:<label>,通过这两部分可以唯一的指定一个数据的存储列family的定义和修改需要对HBASE作类似于DB的DDL操作,而对於label的使用则不需要定义直接可以使用,这也为动态定制列提供了一种手段family另一个作用其实在于物理存储优化读写操作,同family的数据物理仩保存的会比较临近因此在业务设计的过程中可以利用这个特性。

 物理数据模型其实就是将逻辑模型中的一个Row分割成为根据Column family存储的物理模型

对于BigTable的数据模型操作的时候,会锁定Row并保证Row的原子操作。

}

我要回帖

更多关于 大数据入门 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信