首页 文章

在索引组织表中存储Oracle用户定义类型的效率

提问于
浏览
0

在Oracle 10G中将用户定义的类型存储在索引组织表中是否存在已知问题?

CREATE OR REPLACE TYPE MyList AS VARRAY(256) OF NUMBER(8,0);

CREATE TABLE myTable (
    id NUMBER(10,0) NOT NULL, 
    my_list MyList NOT NULL)
    CONSTRAINT pk_myTable_id PRIMARY KEY(id))
ORGANIZATION INDEX NOLOGGING;

通过这种类型和表格设置,我通过insert append~2.4M记录加载,它占用了20G的空间,此时我的磁盘空间用完了 . 查看数据类型的大小,这似乎占用了存储内容的大量空间 . 然后我将表更改为常规表(不是IOT),并且我在~7G存储中存储了6M记录,添加了额外512M的PK索引 .

我过去曾多次使用过IOT,但没有使用用户定义的类型 .

为什么使用UDT和IOT时的存储要求如此之高?

1 回答

  • 0

    AFAICROracle 总是在 IOT 中存储 VARRAY 的行 .

    我现在将尝试在文档中找到引用以确认这一点 .

相关问题