跳转到主要内容
Chinese, Simplified

SAP HANA Modeler视图只能在基于列的表的顶部创建。在列表中存储数据并不是什么新鲜事。在此之前,假定将数据存储在基于柱状结构的结构中需要更大的内存大小,并且没有优化性能。

随着SAP HANA的发展,HANA在信息视图中使用了基于列的数据存储,并展示了与基于行的表相比,柱状表的真正优点。

列存储

在列存储表中,数据是垂直存储的。因此,类似的数据类型组合在一起,如上面的示例所示。在内存计算引擎的帮助下,它提供了更快的内存读写操作。

在传统的数据库中,数据是以行为基础的结构,即水平存储的。SAP HANA以基于行和列的结构存储数据。这为HANA数据库提供了性能优化、灵活性和数据压缩。

将数据存储在基于列的表中有以下好处

  1. 数据压缩
  2. 与传统的基于行的存储相比,对表的读写访问更快
  3. 灵活性和并行处理
  4. 以更快的速度执行聚合和计算

功能差异—行存储与列存储

如果SQL语句必须执行聚合函数和计算,则始终建议使用基于列的存储。当运行诸如Sum、Count、Max、Min之类的聚合函数时,基于列的表的性能总是更好。

当输出必须返回完整行时,首选基于行的存储。下面给出的例子很容易理解。

当在sales列中运行带有Where子句的聚合函数(Sum)时,它将只在运行SQL查询时使用Date和sales列,因此如果它是基于列的存储表,那么它将进行性能优化,速度更快,因为只需要来自两列的数据。

在运行简单的Select查询时,必须在输出中打印完整的行,因此建议根据此场景将表存储为行。

 

讨论:请加入知识星球或者小红圈【首席架构师圈】

原文地址
https://www.tutorialspoint.com/SAP-HANA-row-and-column-store-table
本文地址
Article
知识星球
 
微信公众号
 
视频号