HBase入门:数据模型与逻辑架构详解

需积分: 0 1 下载量 36 浏览量 更新于2024-07-01 收藏 2.76MB PDF 举报
HBase讲义1深入探讨了HBase这一分布式列式非关系型数据库系统,它起源于Google的BigTable论文,主要适用于处理海量、实时的随机读写操作。HBase的核心特点包括: 1. **数据模型**: - HBase采用表的形式存储数据,每个表由行(rowkey)和列(列族)构成。行key通常是确定数据唯一性的主键,列族则是数据的组织方式,包含一组相关的列。 - 列存储优化:与关系型数据库不同,HBase通过列式存储减少存储空间占用,支持多列存储,并且在列数据为空时不会占用空间,体现其稀疏性。 2. **特性与优势**: - **海量存储**:底层基于Hadoop Distributed File System (HDFS),可以处理极大量的数据。 - **易扩展性**:随着数据增长,仅需动态添加DataNode服务节点来扩展存储能力。 - **高并发**:支持高并发的读写操作,对于高流量应用场景非常关键。 - **数据版本管理**:每个数据有多个版本,版本号即插入时间戳,便于历史数据追踪。 - **数据类型**:所有数据以字节数组形式存储,保持统一的数据模型。 3. **应用领域**: - 交通:存储船舶GPS数据,日增量大。 - 金融:包括消费、贷款、还款等信息。 - 电商:交易、物流、浏览等业务数据。 - 电信:通话记录等。 4. **逻辑架构**: - **命名空间**(NameSpace):类似于关系型数据库的数据库概念,HBase有预设的hbase和default命名空间,用户表可以选择归属到其中的一个或自定义命名空间。 5. **物理存储**: - 表在物理层面上是由NameNode管理和DataNode节点上的Region组成,Region是数据的物理分片,存储在具体的DataNode上。 总结:HBase适用于对海量明细数据的高效存储,特别强调在处理单表数据量巨大(千万乃至上亿条)且并发需求高的场景。理解HBase的数据模型和逻辑架构对于有效利用其性能和功能至关重要。