• 描述SecureFiles 如何提高大对象(LOB) 数据类型的性能
• 使用SQL 和PL/SQL API 访问SecureFiles
- 管理企业信息
组织需要有效且安全地管理许多类型的数据:
• 结构化:简单数据,对象关系数据
• 半结构化:XML 文档,文字处理文档
• 非结构化:介质、医学数据、映像
管理企业信息
如今,应用程序必须处理多种类型的数据,这些数据主要分为结构化、半结构化和非结构
化数据。使用大对象(LOB) 的功能,可以将所有这些类型的数据存储在数据库中以及可
从该数据库进行访问的操作系统(OS) 文件中。在关系数据库中保存对象关系数据时,文
件系统所具有的简单性和性能使其非常适合于存储文件数据。
- 现有LOB 实施中的问题
• LOB 大小限制
• 主要考虑“单写多读”数据
• 提供低并发性的DML
• 用户定义的版本控制
• 统一CHUNK大小:
– 影响碎片
– 大小上限
• Oracle Real Application Clusters (RAC) 的可扩展性
问题
现有LOB 实施中的问题
在Oracle8i 中,LOB 设计是基于下列假设做出的:
•LOB 实例化的大小预计为几个兆字节。
•LOB 通常被视为“单写多读”类型的数据。很少进行更新,所以可以为所有类型的更
新(大型或小型)对整个块进行版本化。
• 预计很少有批处理会流式处理数据。预计不会出现联机事务处理(OLTP) 类型的工作
量。
• 保留的还原量由用户使用PCTVERSION和RETENTION 参数进行控制。这是额外的管
理工作。
• 在假设LOB 大小通常是统一的前提下,CHUNK大小是一个静态参数。CHUNK大小的
上限是32 KB 。
• 预计Oracle RAC 中不会出现高并发性的写入。
自首次实施后,业务要求已发生了显著变化。现在LOB 的使用方式与关系数据的相似,用
于存储各种大小的半结构化和非结构化数据。数据大小可以从几千字节(用于HTML 链
接)到几兆兆字节(用于流视频)不等。在LOB 中存储所有文件系统数据的Oracle 文件系
统会遇到类似OLTP 的高并发性访问。随着Oracle RAC 日益广泛的应用,必须解决Oracle
RAC 的可扩展性问题。LOB 空间结构的现有设计不能满足这些新要求。
- Oracle SecureFiles
Oracle SecureFiles 重新设计了非结构化(文件)数据的
处理方法,提供了以下全新的设计:
• 磁盘格式
– 可变块大小
• 网络协议
– 改进的输入/输出
• 版本化和共享机制
• 重做和还原算法
– 无用户配置
• 空间和内存增强功能
Oracle SecureFiles
Oracle Database 11 g 将LOB 数据类型作为Oracle SecureFiles 进行了完全重新设计,显著
改进了应用程序开发的性能、可管理性和易用性。新实施也提供了下一代高级功能,如智
能压缩和透明加密。
使用SecureFiles 时,块大小介于Oracle 数据块大小到64 MB 之间。Oracle DB 尝试使数
据集中在磁盘的相邻物理位置,从而将内部碎片降到最低。通过使用可变的块大小,
SecureFiles 避免对不必要的大型LOB 数据块进行版本化。
SecureFiles 还提供了新的客户机/ 服务器网络层,从而允许在支持更高读写性能的服务器
和客户机之间进行高速数据传输。SecureFiles 自动确定生成重做和还原的最有效方法,因
而不需要用户定义参数。SecureFiles 自动确定是仅为更改生成重做和还原,还是通过生成
完整的重做记录创建新版本。
由于SecureFiles 需要维护各种内存中统计信息以帮