传统的行存储和(HBase)列存储的区别
发布时间:2025-05-23 23:09:26 发布人:远客网络
一、传统的行存储和(HBase)列存储的区别
列存储不同于传统的关系型数据库,其数据在表中是按行存储的,列方式所带来的重要好处之一就是,由于查询中的选择规则是通过列来定义的,因此整个数据库是自动索引化的。按列存储每个字段的数据聚集存储,在查询只需要少数几个字段的时候,能大大减少读取的数据量,一个字段的数据聚集存储,那就更容易为这种聚集存储设计更好的压缩/解压算法。
传统的(Oracle)行存储和(Hbase)列存储的区别
3、建立索引和物化视图需要花费大量时间和资源
4、面对查询的需求,数据库必须被大量膨胀才能满足性能需求
1、数据按列存储–每一列单独存放
3、只访问查询涉及的列–大量降低系统IO
4、每一列由一个线索来处理–查询的并发处理
5、数据类型一致,数据特征相似–高效压缩
二、hbase的主要用途是什么
HBase的主要用途是作为大数据存储系统,用于存储非结构化和半结构化的稀疏数据。
1.大数据存储:HBase是一个分布式、可伸缩的大数据存储系统,能够存储数十亿行甚至更多的数据。它不同于传统的关系型数据库,不需要预先定义数据结构,因此非常适合存储大量且快速变化的数据。这使得HBase成为许多大数据应用的首选存储解决方案。
2.非结构化和半结构化数据:HBase可以灵活地存储各种类型的数据,包括文本、图片、音频、视频等非结构化数据,以及JSON、XML等半结构化数据。这些数据在现代应用中越来越常见,而传统的关系型数据库往往难以有效处理。
3.稀疏数据:HBase非常适合存储稀疏数据,即其中大部分元素都是空的数据集。在很多情况下,稀疏数据在传统数据库中会占用大量空间,并且处理效率低下。而HBase通过列式存储和高效的压缩机制,能够高效地处理这类数据。
举例来说,假设有一个大型的电子商务网站,需要存储用户的浏览记录、购买记录、搜索记录等信息。这些数据量巨大,且快速增长,同时包含大量的非结构化和半结构化数据(如用户评论、图片等)。在这种情况下,使用HBase作为存储系统可能是一个很好的选择。HBase可以灵活地存储这些数据,并且可以很容易地扩展存储容量和处理能力。同时,HBase提供的高效查询和数据处理功能,可以帮助电子商务网站实现实时推荐、用户画像等高级功能。
三、Hbase知识点总结
1、非结构化的分布式的面向列存储非关系型的开源的数据库,根据谷歌的三大论文之一的bigtable
2、为了解决大规模数据集合多重数据种类带来的挑战,尤其是大数据应用难题。
3、存储大量结果集数据,低延迟的随机查询。
4、非关系型数据库,列存储和文档存储(查询低延迟),hbase是nosql的一个种类,其特点是列式存储。
5、非关系型数据库--文档存储(MongoDB)
6、非关系型数据库--内存式存储(redis)
7、非关系型数据库--图形模型(graph)
8、Hive的定位是数据仓库,虽然也有增删改查,但其删改查对应的是整张表而不是单行数据,查询的延迟较高。其本质是更加方便的使用mr的威力来进行离线分析的一个数据分析工具。
9、HBase的定位是hadoop的数据库,电脑培训发现是一个典型的Nosql,所以HBase是用来在大量数据中进行低延迟的随机查询的。
10、单节点:单独的进程运行在同一台机器上
11、hbase行一行在hbase中由行健和一个或多个列的值组成,按行健字母顺序排序的存储。