0

在表分区(按分区 4 散列)后,观察到磁盘上内存的总内存消耗增加。早些时候我们做了分区(按分区 12 散列)观察到磁盘上内存的总内存消耗减少了。

这两个表都是 SLT 表,并且在恢复 slt 复制之前进行内存转储。

任何人都可以解释内存增加或减少的原因是什么?

4

1 回答 1

0

如果没有表和列的详细信息(即从系统视图M_CS_ALL_COLUMNS),我们只能推测这种情况下的原因。

我的猜测是,现在单个列的压缩(4 个分区)比以前(12 个分区)效率低。
由于 HANA 确实执行压缩优化- 也就是说,它尝试为表中的每一列找到最佳压缩算法,给定所有其他列 - 这可能在重新分区后发生了变化。

另一种选择是这种压缩优化实际上还没有完成。在这种情况下,您可以运行
UPDATE <table name> WITH PARAMETERS ('OPTIMIZE_COMPRESSION' = 'FORCE)
以手动触发它。

于 2020-03-27T21:52:24.193 回答