Oracle Database 11g 将LOB 数据类型作为Oracle SecureFiles 进行了完全重新设计,显著改进了应用程序开发的性能、可管理性和易用性。新实施也提供了下一代高级功能,如智能压缩和透明加密。
使用SecureFiles 时,块大小介于Oracle 数据块大小到64MB 之间。Oracle DB 尝试使数据集中在磁盘的相邻物理位置,从而将内部碎片降到最低。通过使用可变的块大小,SecureFiles 避免对不必要的大型LOB 数据块进行版本化。
SecureFiles 还提供了新的客户机/服务器网络层,从而允许在支持更高读写性能的服务器和客户机之间进行高速数据传输。SecureFiles自动确定生成重做和还原的最有效方法,因而不需要用户定义参数。SecureFiles 自动确定是仅为更改生成重做和还原,还是通过生成完整的重做记录创建新版本。
由于SecureFiles 需要维护各种内存中统计信息以帮助有效地分配内存和空间,所以将其设计为可自适应的智能工具。这样,由于减少了很难使用不可预测的负荷进行优化的可优化参数数量,可管理性有所提高。
Oracle SecureFiles 重新设计了非结构化(文件)数据的处理方法,提供了以下全新的设计:
(1) 磁盘格式
a) 可变块大小
(2) 网络协议
a) 改进的输入/输出
(3) 版本化和共享机制
(4) 重做和还原算法
a) 无用户配置
(5) 空间和内存增强功能
使用DB_SECUREFILE 初始化参数,数据库管理员(DBA) 可确定SecureFiles 的使用情况,其中有效值为:
(1) ALWAYS:尝试将ASSM表空间上的所有LOB 创建为SecureFile LOB,但是仅可将自动段空间管理(ASSM) 表空间外的任何LOB 创建为BasicFile LOB
(2) FORCE:强制将所有LOB 创建为SecureFileLOB
(3) PERMITTED:允许创建SecureFiles(默认值)
(4) NEVER:禁止创建SecureFiles
(5) IGNORE:禁止创建SecureFiles,并忽略使用SecureFiles 选项强制创建BasicFiles 而导致的任何错误
如果指定了NEVER,则任何指定为SecureFiles 的LOB 均被创建为BasicFiles。如果对BasicFiles 使用任何SecureFiles 特定的存储选项和功能(如压缩、加密和取消重复),则会导致异常错误。将对任何未指定的存储选项使用BasicFiles 默认值。
如果指定了ALWAYS,则系统中创建的所有LOB 均会被创建为SecureFiles。必须在ASSM 表空间中创建LOB,否则会发生错误。将忽略所有指定的BasicFiles 存储选项。可以使用ALTER SYSTEM 命令更改所有存储的SecureFiles 默认值。
SQL>Altersystem set db_securefile=’ALWAYS’;
OracleSecureFiles 实施也提供了下一代高级功能,如智能压缩和透明加密。压缩功能支持显式压缩SecureFiles。SecureFiles 仅为随机读取或写入访问透明解压缩所需的数据块集,从而自动维护未压缩和已压缩的偏移量之间的映射。如果将压缩级别从MEDIUM 更改为HIGH,则映射会自动进行更新以反映新的压缩算法。取消重复可自动检测重复的SecureFile LOB 数据,并通过仅存储一个副本来节省空间- 减少磁盘存储空间、I/O 和重做事件记录。可在表级别或分区级别指定取消重复,但不能跨越分区的LOB。取消重复需要使用高级压缩选项。
现在可以在适当位置存储加密的LOB数据,并对其进行随机读取和写入,因而提高了数据的安全性。只能按列加密SecureFile LOB (与透明数据加密相同)。将使用相同的加密算法对LOB 列中的所有分区进行加密。无法对BasicFiles 数据进行加密。SecureFiles 支持行业标准加密算法:3DES168、AES128、AES192(默认)和AES256。加密是高级安全选项的一部分。
注:必须将COMPATIBLE 初始化参数设置为11.0.0.0.0 或更高,才能使用SecureFiles。在11.1.0.0.0 兼容性下BasicFiles(以前的LOB)格式仍然受支持。设置11.0.0.0.0 后不会出现功能降低。
Oracle SecureFiles 提供了下列高级功能:
(1) 智能LOB 压缩
(2) 取消重复
(3) 透明加密
MAXSIZE 是新的存储子句,用于控制SecureFiles 的物理存储属性。MAXSIZE 指定与存储子句级别相关的最大段大小。
RETENTION 指定SecureFiles 的以下项:
(1) MAX 在达到段MAXSIZE 后重新使用旧版本。
(2) MIN 在指定的最短时间内保留旧版本。
(3) AUTO 是默认设置,主要对空间和时间进行折中使之达到平衡。这是自动确定的。
(4) NONE 尽可能重用旧版本。
使用ALTER TABLE 语句更改RETENTION 仅影响该语句执行后创建的空间。
对于SecureFiles,不再需要指定CHUNK、PCTVERSION、FREEPOOLS、FREELISTS 和FREELIST GROUPS。为了与现有脚本相兼容,将对这些子句进行分析但不解释它们。
《FROM:http://blog.csdn.net/tianlesoftware/article/details/8231322》