当前位置: 首页 > news >正文

40-Oracle 23 ai Bigfile~Smallfile-Basicfile~Securefile矩阵对比

小伙伴们是不是在文件选择上还默认给建文件4G/个么,在oracle每个版本上系统默认属性是什么,选择困难症了没,一起一次性文件存储和默认属性看透。

基于Oracle历代在存储架构的技术演进分析,结合版本升级和23ai新特性,一起梳理Smallfile/Bigfile、BasicFiles/SecureFiles的技术差异与应用场景,用脚本验证。

一、表空间技术:Smallfile vs Bigfile的版本演进

​1. 技术特点对比

​版本​

​Smallfile特性

​Bigfile特性​

​关键升级点​

​10g

• 最多1022个文件/表空间

• 单文件最大32GB (8K块)

• 单文件表空间

• 最大32TB (8K块)

引入Bigfile,

扩展单文件容量上限

​11g​

• 保持传统架构

• 支持ASM条带化分散I/O

• 优化ROWID寻址(32位块号)

• 简化ASM管理

性能优化,

强化与ASM集成

​19c​

• 仍为默认类型

• 支持在线迁移至Bigfile

• 支持OMF自动管理文件

• 提升RAC扩展性

管理自动化增强

​23ai​

• 仅PDB的USERS表空间默认Smallfile

​默认启用​:SYSTEM/SYSAUX/

UNDO表空间均Bigfile化

Bigfile成为新标准

2. 使用场景选择
  • Bigfile适用场景​:
  1. 数据仓库​:单表超1TB时避免文件数量爆炸(如23ai中的AI向量库)
  2. ASM环境​:依赖条带化分散I/O压力(11g+最佳实践)
  3. 归档系统​:简化历史数据维护(19c+推荐)
  • Smallfile保留场景
  1. OLTP高并发​:多文件分布提升I/O并行度(如高频交易库)
  2. 兼容性需求​:迁移旧系统且存储设备异构(如10g遗留环境)
Bigfile风险​:23ai中单文件损坏影响扩大,需搭配ASM冗余策略

 

二、LOB存储革命:BasicFiles vs SecureFiles

​1. 架构演进关键版本

​版本​

BasicFiles特性​

​SecureFiles特性​

​技术特点​

​10g​

• 默认LOB存储

• 手动管理CHUNK/PCTVERSION

未支持

-

11g

• 仍可创建

• 易碎片化

• 引入压缩/加密/去重

• ​写性能提升

重构LOB架构,支持高级功能

​19c

• 兼容模式保留

• 官方建议迁移

• ASSM表空间默认启用

• 支持TDE列加密

全面替代BasicFiles

​23ai​

• 仅用于兼容旧数据

• 深度集成AI向量搜索

• 支持JSON二元存储

LOB与AI模型直接交互

2. 功能与性能对比 

--ASSM表空间在上一期建好了
-- SecureFiles核心优势(11g+)
CREATE TABLE contracts1 (id NUMBER,doc CLOB
) LOB(doc) STORE AS SECUREFILE (COMPRESS HIGH          -- 智能压缩DEDUPLICATE            -- 跨分区去重ENCRYPT USING 'AES192' -- 透明加密--不要在SYS管理员用户建
) TABLESPACE ASSM_TS;

三、Oracle 23ai存储新特性:AI向量类型与存储融合 

1. 核心创新方向
  • Bigfile默认化​除TEMP外所有系统表空间默认Bigfile,新表空间自动启用:
-- 23ai默认表空间类型验证
SELECT tablespace_name, bigfile FROM dba_tablespaces;
-- 输出:SYSAUX=YES, SYSTEM=YES, UNDOTBS1=YES
TABLESPACE_NAME    BIGFILE
__________________ __________
SYSTEM             YES
SYSAUX             YES
UNDOTBS1           YES
TEMP               NO
USERS              YES
HR_DATA            YES
HR_TEMP            YES
OE_DATA            YES
SH_DATA            YES
CO_DATA            YES
OE_TEMP            YES
SH_TEMP            YES
PM_TEMP            YES
CO_TEMP            YES
SHRINK_TS          YES
SECURE_LOB_TS      YES
ASSM_TS            YES17 rows selected.Elapsed: 00:00:00.043
  • SecureFiles AI化
    • 向量存储集成​:LOB字段直接映射为AI向量
CREATE TABLE research_papers (id NUMBER PRIMARY KEY,content CLOB,  -- 不在此处指定SecureFileembedding VECTOR(1024)  -- 1024维向量列
) TABLESPACE assm_ts LOB(content) STORE AS SECUREFILE (  -- 正确语法位置COMPRESS HIGH  -- 可选高级功能
);
--Table RESEARCH_PAPERS created.
Elapsed: 00:00:00.098
 2. 自然语言查询​: 
-- 手动输入向量值(需提前通过AI模型生成)
SELECT content 
FROM research_papers 
ORDER BY VECTOR_DISTANCE(embedding, TO_VECTOR('[0.1,0.5,0.8]', 1024, FLOAT32)  -- 实际数组3
) 
FETCH FIRST 5 ROWS ONLY;
--
no rows selected
Elapsed: 00:00:00.018
  • 自治存储优化
    • 自动压缩冷数据SecureFiles
    • Bigfile空间预警与ASM自动扩容
​3. 发展趋势
  • BasicFiles​:23ai仅兼容保留,无功能更新
  • Smallfile​:非核心表空间使用,新项目不建议

四、实操脚本:19c ~ 23ai

​1. 表空间与LOB配置(19c)​
-- 1. 创建Smallfile+SecureFiles表空间(19c)
CREATE TABLESPACE sf_secure DATAFILE '/u01/app/oracle/oradata/TEST19/pdbrs6/sf1.dbf' SIZE 1G;
CREATE TABLESPACE sf_secure DATAFILE '/u01/app/oracle/oradata/TEST19/pdbrs6/sf2.dbf' SIZE 1G;
--Tablespace 已创建
-- 2. 迁移BasicFiles到SecureFiles
CREATE TABLE legacy_data (id NUMBER PRIMARY KEY,          -- 修正:INT 改为 NUMBER,并添加主键约束document CLOB                   -- 修正:明确 LOB 类型为 CLOB/BLOB
)
LOB(document) STORE AS BASICFILE (  -- 显式指定存储类型(19c 默认可能为 SecureFile)TABLESPACE users                -- 指定 LOB 存储表空间(需提前存在)DISABLE STORAGE IN ROW          -- 禁用行内存储(优化大文本性能)CHUNK 8192                     -- 设置 LOB 块大小(需与表空间块大小匹配)
);ALTER TABLE legacy_data MOVE LOB(document) STORE AS SECUREFILE (TABLESPACE sf_secure COMPRESS LOW);
--Table已变更。
-- 3. 验证SecureFiles启用
SELECT table_name, securefile FROM dba_lobs WHERE table_name = 'LEGACY_DATA';
-- 应返回YES
--
SYS@CDB$ROOT> SELECT table_name, securefile FROM dba_lobs WHERE table_name = 'LEGACY_DATA';TABLE_NAME                                                                                                                       SEC
------------------------------
LEGACY_DATA                    YES
3. 跨版本兼容性脚本 
-- 同时兼容19c/23ai的SecureFiles创建
DECLAREv_securefile VARCHAR2(20);
BEGINSELECT VALUE INTO v_securefile FROM v$parameter WHERE name = 'db_securefile';IF v_securefile = 'FORCE' THENEXECUTE IMMEDIATE 'CREATE TABLE t_uni (doc CLOB) LOB(doc) STORE AS SECUREFILE';ELSEEXECUTE IMMEDIATE 'CREATE TABLE t_uni (doc CLOB)';END IF;
END;-- 之前已经新建名为ASSM_TS的ASSM表空间
DECLAREv_securefile VARCHAR2(20);
BEGIN-- 获取db_securefile参数值SELECT VALUE INTO v_securefile FROM v$parameter WHERE name = 'db_securefile';IF v_securefile = 'FORCE' THEN-- 必须在ASSM表空间中创建SecureFile LOBEXECUTE IMMEDIATE 'CREATE TABLE t_uni (doc CLOB)TABLESPACE ASSM_TS  -- 显式指定ASSM表空间LOB(doc) STORE AS SECUREFILE (COMPRESS HIGH  -- 可选:启用高级压缩DEDUPLICATE    -- 可选:启用重复数据删除)';ELSE-- 非SecureFile模式,但仍需指定表空间EXECUTE IMMEDIATE 'CREATE TABLE t_uni (doc CLOB)TABLESPACE ASSM_TS  -- 显式指定表空间';END IF;
END;
/
---
PL/SQL procedure successfully completed.Elapsed: 00:00:00.054
验证19c需手动启用SecureFiles:ALTER SYSTEM SET db_securefile=FORCE;

五、技术选型与未来趋势

  • 版本对比决策

​需求

10g/11g​

​19c​

​23ai​

超大规模数据存储

Bigfile+BasicFile

Bigfile+SecureFile

​Bigfile+SecureFile+AI

高频事务处理

Smallfile

Smallfile

Smallfile(仅PDB)

非结构化数据高级管理

不可行

SecureFile

​SecureFile+向量化​

  • 核心趋势
  1. 存储智能化​:Bigfile成为基础设施,SecureFiles支持AI原生交互
  2. 架构融合​:LOB数据可直接参与向量计算,消除ETL链路
  3. 自治运维​:AI驱动存储压缩、扩容、故障预测(23ai OCI增强特性)
​新建系统建议​:
  1. 新项目统一采用 ​Bigfile + SecureFiles​
  2. 旧系统迁移参考脚本优先保障兼容性
  3. 23ai项目重点验证向量搜索与JSON二元存储性能

相关文章:

  • 性能优化 - 高级进阶:JVM 常见优化参数
  • useMemo vs useCallback:React 性能优化的两大利器
  • 2024 提高寒假第一轮第四题:铁路建设
  • Uncaught (in promise) TypeError: x.isoWeek is not a function
  • 华为云国际版有区块链吗
  • 量化面试绿皮书:14. 钟表零件
  • Qt QComboBox下拉多选
  • Node.js 中常用的异步函数讲解、如何检测异步操作时间和事件
  • 「Matplotlib 入门指南」 Python 数据可视化分析【数据分析全栈攻略:爬虫+处理+可视化+报告】
  • 数据库相关操作
  • YOLOv11改进 | Conv/卷积篇 | 2024最新ECCV最新大感受野的小波卷积WTConv助力YOLOv11有效涨点(二次创新C3k2)
  • XXX2024073105:纪念品分组【c++】
  • 关于layui select option莫名多一行的问题
  • NodeJS哪些情况下会造成内存泄漏和避免方法
  • 建造者模式Builder Pattern
  • LeetCode HOT 100
  • ShenNiusModularity项目源码学习(34:总结)
  • 每日学习一道数模题-2024国赛E题-交通流量管控
  • React19源码系列之Hooks(useState)
  • C++ 类的知识点
  • 怎么自己制作月饼/站长工具seo
  • 帮人做微信是哪个网站/seo技巧
  • 炫酷的电商网站设计/seo博客写作
  • 做网站的 深圳/网店推广软文范例
  • h5手机网站发展趋势/鞍山seo优化
  • 谷多网站/免费推广网站注册入口