SAP HANA 管理 - 資料壓縮



使用 SAP 列儲存表,您可以執行高達 11 倍的資料壓縮,這為在 HANA 資料庫中儲存更多資料提供了一種節省成本的解決方案。列儲存表還提供更快的數 據訪問、搜尋和複雜計算。

未壓縮資料大小與壓縮資料大小的比率稱為壓縮因子。壓縮表大小是指表在 SAP HANA 資料庫主記憶體中佔用的空間。

檢查列表的壓縮

使用 SAP HANA Studio,您可以找出列儲存表的壓縮狀態以及壓縮因子。要查詢壓縮詳細資訊,您需要先將表載入到記憶體中。

要將表載入到 SAP HANA 記憶體中,您應該具有:

  • 系統許可權 - TABLE ADMIN

  • 物件許可權 - 對錶或表所在的模式具有 UPDATE 許可權

Column Table

您也可以使用 SQL 命令載入表。開啟 SQL 控制檯並執行以下語句:

LOAD <table_name>  
UNLOAD <table_name>

請注意,當您載入表時,它會將完整資料以及增量儲存載入到 SAP HANA 系統的主記憶體中。

要執行資料壓縮,請執行以下 SQL 命令以檢查資料壓縮屬性。

SELECT SCHEMA_NAME, TABLE_NAME, COLUMN_NAME, COMPRESSION_TYPE, LOADED from  
PUBLIC.M_CS_COLUMNS where SCHEMA_NAME = '<your_schema>' and TABLE_NAME = '<your_table>' 

Command Check

您可以在“結果”選項卡中檢視輸出。

Result

要檢查表的壓縮比率,您可以導航到表定義。轉到執行時資訊。

要檢視壓縮比率,請轉到“列”選項卡。您可以在“主大小壓縮比率 [%]”列中看到壓縮比率。

Ratio

在 SAP HANA 中手動壓縮表

也可以透過執行以下 SQL 語句在 SAP HANA 系統中手動壓縮表。

UPDATE "table_name" WITH PARAMETERS ('OPTIMIZE_COMPRESSION' = 'YES') 

這將決定是否需要壓縮或可以最佳化現有壓縮。在這種情況下,HANA 系統將使用最合適的壓縮演算法。

Compress Table

執行上述 SQL 命令後,壓縮狀態保持不變。您還可以強制資料庫使用以下 SQL 狀態重新評估壓縮:

UPDATE "AA_HANA11"."SHOP_FACTS" WITH PARAMETERS ('OPTIMIZE_COMPRESSION' = 'FORCE')

SQL Status
廣告