SAP HANA Admin – 表管理
SAP HANA Admin – 表管理
SAP HANA 支持可以在传统数据库中执行的所有数据库功能。您可以创建数据库表、视图、触发器、同义词、存储过程和其他数据库函数。在 SAP HANA 中,您可以创建两种类型的表 –
- 行商店
- 列存储
SAP HANA 列存储表适合执行性能优化的读取操作,也适合执行写入操作。与列存储表相比,您最多可以实现 11 倍的数据压缩,并且可以更快地执行搜索和计算。SAP HANA 的数据分区功能仅适用于列存储表,SAP HANA 数据建模仅可用于列存储表。
行存储表更适合在小尺寸表上执行 INSERT 和 UPDATE SQL 语句。
在 SAP HANA 数据库中,可以连接不同的存储表类型 – 行存储表可以连接到列存储表,但建议将相似的表类型连接在一起以保持较高的性能。
在 HANA Studio 中使用 GUI 选项在 HANA 数据库中创建表
右键单击架构下的表选项卡 → 选择“新建表”选项,如下面的屏幕截图所示。
单击“新建表”后,它将打开一个窗口以输入表名称。从下拉列表中选择架构名称 → 从下拉列表中定义表类型:列存储或行存储。
定义数据类型,如下面的屏幕截图所示,可以通过单击 (+) 号添加列。可以通过单击列名前面的主键下的单元格来选择主键。默认情况下,非空将处于活动状态。添加列后,单击执行。
在下面的屏幕截图中,您可以看到表类型为列存储。您可以选择通过从下拉列表中选择行存储来创建行存储表。
使用 SQL 语句创建表时,需要在创建表命令中提及“列”关键字。默认情况下,它使用 SQL 编辑器创建一个行存储表。
执行 (F8) 后,右键单击“表选项卡”→“刷新”。新表将反映在所选架构下的表列表中。
注意– 您还可以使用 SQL 编辑器中的以下 Alter 命令更改 SAP HANA 数据库中的表类型。
Alter table_name Column;
使用列存储表的好处
以下是使用列存储表与行存储相比的优势 –
性能优化的列操作
与行存储表相比,您可以更快地执行复杂的计算和聚合。这消除了在 HANA 数据库中存储聚合表的需要,因此也节省了内存空间。
列表的内置索引
对表使用列式数据结构消除了对索引的需要,因为当您将数据存储在列中时,它的工作方式类似于每列的内置索引。这样既节省了内存空间,又提高了写操作的性能。
数据压缩
当您在 HANA 数据库中存储基于列的表时,类似的数据类型会连续存储在内存中。它允许您应用各种数据压缩技术,例如 – Run Length Compressed、Dictionary Compressed,从而减少存储表所需的空间。与传统数据库相比,您可以实现高达 11 倍的数据压缩。
并行处理
通过使用多核处理器,您可以对列存储表执行并行处理。由于数据是垂直存储的,因此可以轻松地在基于列的表上处理列操作。