`

列式存储处理

 
阅读更多
下面以GBase 8a分析型数据库为例,描述列存储对数据存储与管理的作用。

面对海量数据分析的 I/O 瓶颈,GBase 8a 把表数据按列的方式存储,其优势体现在以下几个方面。
不读取无效数据:降低 I/O 开销,同时提高每次 I/O 的效率,从而大大提高查询性能。查询语句只从磁盘上读取所需要的列,其他列的数据是不需要读取的。例如,有两张表,每张表100GB 且有100 列,大多数查询只关注几个列,采用列存储,不需要像行存数据库一样,将整行数据取出,只取出需要的列。磁盘 I/0 是行存储的 1/10或更少,查询响应时间提高 10 倍以上。
高压缩比:压缩比可以达到 5 ~ 20 倍以上,数据占有空间降低到传统数据库的1/10 ,节省了存储设备的开销。
当数据库的大小与数据库服务器内存大小之比达到或超过 2:1 (典型的大型系统配置值)时,列存的 I/O 优势就显得更加明显;
GBase 8a 分析型数据库的独特列存储格式,对每列数据再细分为“数据包”。这样可以达到很高的可扩展性:无论一个表有多大,数据库只操作相关的数据包,性能不会随着数据量的增加而下降。通过以数据包为单位进行 I/O 操作提升数据吞吐量,从而进一步提高I/O效率。
由于采用列存储技术,还可以实现高效的透明压缩。

由于数据按列包存储,每个数据包内都是同构数据,内容相关性很高,这使得GBase 8a 更易于实现压缩,压缩比通常能够达到 1:10 甚至更优。这使得能够同时在磁盘 I/O 和 Cache I/O 上都提升数据库的性能,使 GBase 8a 在某些场景下的运算性能比传统数据库快 100 倍以上。
GBase 8a 允许用户根据需要设置配置文件,选择是否进行压缩。在启用压缩的情况下GBase 8a 根据数据的不同特性以及不同的分布状况,自动采用相应的压缩算法,如:

行程编码(适用于大量连续重复的数据,特别是排序数据);
基于数据的差值编码(适用于重复率低,但彼此差值较小的数据列);
基于位置的差值编码(适用于重复率高,但分布比较随机的数据列)。
  • 大小: 17.2 KB
  • 大小: 36.9 KB
分享到:
评论

相关推荐

    java 列式计算器

    一个由java语言编写的列式计算器,有基本的运算和检错功能,也有次方,开方运算功能,至于其他功能可自己扩展!涉及到很强的逻辑结构和数据结构,很适合初学者,本程序是本人花了两个星期开发的学期作业!想要深沉次...

    分布式系统下大数据存储结构优化研究

    在分布式系统中,数据的存储结构直接影响了大数据的存储效率和处理...行列结合的存储结构不仅避免行式存储的额外磁盘I/O开销,同时也减少了列式存储不必要的网络传输,极大地提高分布式系统对大数据存储效率及处理性能。

    基于列式存储的铁道供电监控信息快速查询与压缩处理研究__铁道供电相关专业论文毕业设计范文.pdf

    基于列式存储的铁道供电监控信息快速查询与压缩处理研究__铁道供电相关专业论文毕业设计范文.pdf

    列存储数据仓库中启发式查询优化机制

    文中首先比较了列存储系统中查询优化与行存储系统的不同,在此基础上提出适合于列存储的启发式查询优化机制,其中包括启发式优化策略、重写规则、左深连接树结构和相关算法.实验表明:该文提出的启发式优化机制能有效...

    大数据数据存储技术.pdf

    数据存储技术 数据采集与存储技术研究现状 传统关系数据库 应用场景局限 – 面向结构化数据,致力于数据处理,保证严格 一致性 缺乏对海量数据的快速访问能力 – 根据列值来定位行,输入输出耗时 – 范式设计与web...

    分布式系统下大数据存储结构优化研究 (2014年)

    在列式存储结构下,数据压缩效率高,但数据的跨节点访问增加了网络传输消耗。针对行式存储结构和列式存储结构的缺点,提出一种以行列结合的存储方式,对数据存储结构进行改进。实验结果表明,改进的数据存储结构在...

    列式数据库和向量化

    列式存储格式使我们可以采用一些基于每列的轻量级压缩算法(lightweightcompressionalgorithms)。向量化的数据处理通过有效使用CPU缓冲机制的方法,来开发更快速的分析查询引擎。Arrow的列式数据结构允许使用轻量级...

    orc:Apache ORC-用于Hadoop工作负载的最小,最快的列式存储

    ORC是一种专为Hadoop工作负载设计的自描述类型感知列式文件格式。 它针对大型流读取进行了优化,但具有集成支持,可快速查找所需的行。 以列格式存储数据使阅读器仅可以读取,解压缩和处理当前查询所需的值。 由于...

    利用Impala+Kudu构建准实时分析应用

    Kudu是Cloudera开源的新型列式存储系统,Apache Hadoop生态圈的顶级项目之一,解决了传统Lamda架构处理Hadoop上快速变化数据的存储和处理技术过于复杂的问题,同时Kudu能够与Hadoop生态的其他组件比如Impala、Spark...

    columnstore_docker_cluster:企业MariaDB列存储群集项目

    MariaDB ColumnStore是使用大规模并行分布式数据架构的列式存储引擎。 它是通过将InfiniDB移植到MariaDB来构建的,并已根据GPL许可证发布。 MariaDB ColumnStore专为大数据扩展而设计,可处理PB级数据,线性可伸缩...

    一文了解华为Gauss数据库:开发历程、OLTP&OLAP特点、行式&列式存储,及与Oracle和AWS对比…

    数据库是计算机行业的基础核心软件,所有应用软件的运行和数据处理都要与其进行数据交互。数据库的开发难度,不仅体现在与其他基础器件的适配,更在于如何实现对数据高效、稳定、持续的管理。Oracle、微软的数据库之...

    ClickHouse重点知识讲解-从入门到精通.pptx

    ClickHouse 是俄罗斯的 Yandex 于 2016 年开源的用于在线分析处理查询(OLAP :Online Analytical Processing)MPP架构的列式存储数据库(DBMS:Database Management System),能够使用 SQL 查询实时生成分析数据...

    基于图数据库存储引擎的CMDB系统.pdf

    关系数据库与图数据库区别 关系数据库将数据存储在具有固定结构 (架构) 的表中, 每列具有名称、 类型、长度、约束等。 表与表之间的引用通过将一个表的主键作为另一个表 的重复外键来实现。 对于多对多的关系...

    ClickHouse官方中文文档.pdf

    ClickHouse是一个用于联机分析(OLAP)的列式数据库管理系统(DBMS)。ClickHouse 架构概述 ClickHouse 是一个真正的列式数据库管理系统(DBMS)。在 ClickHouse 中,数据始终是按列存储的,包括矢量(向量或列块)执行的...

    hbase2.1.5官网下载的版本

    HBase的设计思想来源于Google的BigTable论文,是一个面向列式存储的分布式数据库。 HBase底层存储基于HDFS实现,集群的管理基于ZooKeeper实现。其良好的分布式架构设计为海量数据的快速存储和随机访问提供了可能。...

    大数据技术之ClickHouse视频教程

    ClickHouse是一个真正面向列的DBMS,采用列式存储,提供超高压缩比的压缩算法,轻松存储海量数据。多样化的引擎方案、类LSM Tree的结构、极致的并行处理能力,可以为用户提供高吞吐实时数据处理,其单表查询能力更是...

    HBase海量数据存储实战视频教程

    手把手视频详细讲解项目开发全过程,需要的小伙伴自行百度网盘下载,链接见附件,永久有效。 课程简介 从HBase的集群搭建、HBaseshell操作、java...3. HBase的协处理器(Coprocessor) 4. HBase事务 5. HBase数据结构

    (orc + snappy / zlib ) 多线程并行合并小文件工具类 (出自:flink自定义合并orc小文件处)

    通过指定目录进行多线程执行合并小文件程序,由于hdfs小文件过多,可用于自定义合并orc小文件。

    构建近实时分析系统

    Kudu是Cloudera开源的新型列式存储系统,Apache Hadoop生态圈的顶级项目之一,解决了传统Lamda架构处理Hadoop上快速变化数据的存储和处理技术过于复杂的问题,同时Kudu能够与Hadoop生态的其他组件比如Impala、Spark...

Global site tag (gtag.js) - Google Analytics