Oracle:对可变长度但小字节数组使用 RAW 或 BLOB

问题描述 投票:0回答:1

我的表中有一个列,其中填充了字节数组。该字节数组的大小是可变的,范围为 20 到 200 字节。这个表可以有数十亿条记录,所以如果一条记录的值只有 20 字节,那么只需要消耗 20 字节的存储空间(不应该保留任何内容)RAW 或 BLOB 哪个更适合这个需求?

oracle
1个回答
0
投票

BLOB
会造成严重的处理惩罚,因此绝对不建议这样做,因为您的最大大小远低于 2KB。

RAW
是可变长度,因此在空间方面将是最有效的,仅存储您需要的内容而无需开销。

您还可以选择

VARRAY(10) OF RAW(20)
,它可以自然地与数组配合使用。整个数组需要 7 个字节的开销,加上每个数组元素一个长度字节,因此需要 9 个字节到 227 个字节来存储最多 200 个字节的变量数组数据。

© www.soinside.com 2019 - 2024. All rights reserved.