1.段收缩的实现原理
进行行迁移会自动进行段收缩,第一步,压缩更改Row ID 蜂窝状数据来回收空间,第二步,移动HWN(高水位线),在压缩期间,所有的 DML 操作和查询不受影响,可以正常执行。在移动高水位线的时候,DML的操作不允许执行的, 收缩操作结束之后,这个会改善数据库的性能,并且提高空间的使用率。另外在收缩的同时,索引会被维护,但是触发器不会执行。收缩完成后,迁移过的行的数量会减少。Oracle建议这个重建二级索引在 IOT表上,提高这个查询的效率。
2.还原(undo)和重做(redo)的完整的对比说明。
如果需要还原更改,则需要还原数据,而且为了保持读取一致性和执行回退,也需要还原数据。在因某种原因而丢失了所做更改时,如果需要再次执行更改,则需要用到重做数据。还原块更改也写入重做日志。
3.基本压缩和高级行压缩的原理。
通过压缩所有的数据可以减少存储的成本。
基本压缩,它是针对直接路径插入操作的, 会对字节进行操作 它的压缩率非常高,可以在 10 倍,适合于 DSS,数据仓库系统
高级的业压缩,是针对所有DML操作的。这个高级行压缩适合于联机输入处理系统,高级行压缩使用的是符号表,它不对字节进行操作,所以它压缩率要低一些,是 2 到 4 倍。适合于联机事务处理系统
另外,oracle不允许在超出了 255 个列的这个表上指定基本压缩和高级行压缩。
4.在创建表空间时,系统会预先设置什么样的阈值预警?
数据库默认的表空间的阈值是 85%是警告,97%严重警告用来监控表空间的使用