美文网首页
HBase是面向列还是面向行的存储?

HBase是面向列还是面向行的存储?

作者: 小麦哥 | 来源:发表于2020-02-13 11:27 被阅读0次

一直以来有个疑问,HBase究竟是面向列(Column oriented)还是面向行(Row oriented)的存储?

其实按照 Martin Kleppmann 在他的名著 DDIA 里面的说法,HBase 的数据模型本质上还是行式存储。

Cassandra and HBase have a concept of column families, which they inherited from Bigtable. However, it is very misleading to call them column-oriented: within each column family, they store all columns from a row together, along with a row key, and they do not use column compression. Thus, the Bigtable model is still mostly row-oriented.

HBase 是基于 Bigtable 模型的,它是列族的概念,而每个列族包含了很多列。每个列族里的所有列仍然和 row key 以一行的形式存储在一起,因此从这个角度来看,在一个列族里,HBase 仍然是面向行的存储,而每个列族可以类比为关系型数据库的一张表。底层的文件存储是 LSM Tree 的结构,新的数据以 Key-Value 的形式被批量写到文件(SSTable)中,再进行合并压缩。这与通常的基于 B-tree 的关系型数据库的存储有很大区别。

相关文章

  • HBase是面向列还是面向行的存储?

    一直以来有个疑问,HBase究竟是面向列(Column oriented)还是面向行(Row oriented)的...

  • Hbase复习总结之一

    1. Hbase 的简介 重要特点:大:一个表可以有上十亿行,上百万列面向列:面向列(族)的存储和权限控制,列(族...

  • 万字+20张图,带你到HBase的世界遨游

    1 HBase 浅析 1.1 HBase 是啥 HBase 是一款面向列存储,用于存储处理海量数据的 NoSQL ...

  • HBase 入门

    1 HBase 概述 1.1 什么是 HBase? HBase 是一个高可靠性、高性能、面向列、可伸缩的分布式存储...

  • 没用过 HBASE 数据库?看完你就是老手了

    一、Hbase简介 1、什么是Hbase Hbase是一个高可靠性(存储在hdfs上,有副本机制),高性能,面向列...

  • HBASE 概述

    HBASE 概述 HBase是什么 HBase是一种构建在HDFS之上的分布式、面向列的存储系统。在需要实时读写、...

  • HBase架构原理

    一、什么是HBase HBase是一个高可靠、高性能、面向列、可伸缩、实时读写的分布式存储系统,利用HBase技术...

  • HBase基本概念与基本使用

    1. HBase简介 1.1 什么是HBase HBASE是一个高可靠性、高性能、面向列、可伸缩的分布式存储系统,...

  • HBase学习

    HBase是一个开源的,分布式的,多版本的,面向列的存储模型。官网:http://hbase.apache.org...

  • 冰解的破-Hbase

    学习整理: hbase运行原理,rowkey的作用? HBase 是一个高可靠、高性能、面向列、可伸缩的分布式存储...

网友评论

      本文标题:HBase是面向列还是面向行的存储?

      本文链接:https://www.haomeiwen.com/subject/diskfhtx.html