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二元存儲性能

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/85002.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/85002.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/85002.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

【一】零基礎--分層強化學習概覽

分層強化學習(Hierarchical Reinforcement Learning, HRL)最早一般視為1993 年封建強化學習的提出. 一、HL的基礎理論 1.1 MDP MDP(馬爾可夫決策過程):MDP是一種用于建模序列決策問題的框架,包含狀態&am…

Java延時

在 Java 中實現延時操作主要有以下幾種方式,根據使用場景選擇合適的方法: 1. Thread.sleep()(最常用) java 復制 下載 try {// 延時 1000 毫秒(1秒)Thread.sleep(1000); } catch (InterruptedExcepti…

電阻篇---下拉電阻的取值

下拉電阻的取值需要綜合考慮電路驅動能力、功耗、信號完整性、噪聲容限等多方面因素。以下是詳細的取值分析及方法: 一、下拉電阻的核心影響因素 1. 驅動能力與電流限制 單片機 IO 口驅動能力:如 STM32 的 IO 口在輸入模式下的漏電流通常很小&#xf…

NY271NY274美光科技固態NY278NY284

美光科技NY系列固態硬盤深度剖析:技術、市場與未來 技術前沿:232層NAND架構與性能突破 在存儲技術的賽道上,美光科技(Micron)始終是行業領跑者。其NY系列固態硬盤(SSD)憑借232層NAND閃存架構的…

微信開發者工具 插件未授權使用,user uni can not visit app

參考:https://www.jingpinma.cn/archives/159.html 問題描述 我下載了一個別人的小程序,想運行看看效果,結果報錯信息如下 原因 其實就是插件沒有安裝,需要到小程序平臺安裝插件。處理辦法如下 在 app.json 里,聲…

UE5 讀取配置文件

使用免費的Varest插件,可以讀取本地的json數據 獲取配置文件路徑:當前配置文件在工程根目錄,打包后在 Windows/項目名稱 下 讀取json 打包后需要手動復制配置文件到Windows/項目名稱 下

【kdump專欄】KEXEC機制中SME(安全內存加密)

【kdump專欄】KEXEC機制中SME&#xff08;安全內存加密&#xff09; 原始代碼&#xff1a; /* Ensure that these pages are decrypted if SME is enabled. */ 533 if (pages) 534 arch_kexec_post_alloc_pages(page_address(pages), 1 << order, 0);&#x1f4cc…

C# vs2022 找不到指定的 SDK“Microsof.NET.Sdk

找不到指定的 SDK"Microsof.NET.Sdk 第一查 看 系統盤目錄 C:\Program Files\dotnet第二 命令行輸入 dotnet --version第三 檢查環境變量總結 只要執行dotnet --version 正常返回版本號此問題即解決 第一查 看 系統盤目錄 C:\Program Files\dotnet 有2種方式 去檢查 是否…

Pytest斷言全解析:掌握測試驗證的核心藝術

Pytest斷言全解析&#xff1a;掌握測試驗證的核心藝術 一、斷言的本質與重要性 什么是斷言&#xff1f; 斷言是自動化測試中的驗證檢查點&#xff0c;用于確認代碼行為是否符合預期。在Pytest中&#xff0c;斷言直接使用Python原生assert語句&#xff0c;當條件不滿足時拋出…

【編譯原理】題目合集(一)

未經許可,禁止轉載。 文章目錄 選擇填空綜合選擇 將編譯程序分成若干個“遍”是為了 (D.利用有限的機器內存,但降低了執行效率) A.提高程序的執行效率 B.使程序的結構更加清晰 C.利用有限的機器內存并提高執行效率 D.利用有限的機器內存,但降低了執行效率 詞法分析…

uni-app項目實戰筆記13--全屏頁面的absolute定位布局和fit-content自適應內容寬度

本篇主要實現全屏頁面的布局&#xff0c;其中還涉及內容自適應寬度。 創建一個preview.vue頁面用于圖片預覽&#xff0c;寫入以下代碼&#xff1a; <template><view class"preview"><swiper circular><swiper-item v-for"item in 5&quo…

OVS Faucet Tutorial筆記(下)

官方文檔&#xff1a; OVS Faucet Tutorial 5、Routing Faucet Router 通過控制器模擬三層網關&#xff0c;提供 ARP 應答、路由轉發功能。 5.1 控制器配置 5.1.1 編輯控制器yaml文件&#xff0c;增加router配置 rootserver1:~/faucet/inst# vi faucet.yaml dps:switch-1:d…

PCB設計教程【大師篇】stm32開發板PCB布線(信號部分)

前言 本教程基于B站Expert電子實驗室的PCB設計教學的整理&#xff0c;為個人學習記錄&#xff0c;旨在幫助PCB設計新手入門。所有內容僅作學習交流使用&#xff0c;無任何商業目的。若涉及侵權&#xff0c;請隨時聯系&#xff0c;將會立即處理 1. 布線優先級與原則 - 遵循“重…

Phthon3 學習記錄-0613

List&#xff08;列表&#xff09;、Tuple&#xff08;元組&#xff09;、Set&#xff08;集合&#xff09;和 Dictionary&#xff08;字典&#xff09; 在接口自動化測試中&#xff0c;List&#xff08;列表&#xff09;、Tuple&#xff08;元組&#xff09;、Set&#xff08…

UVa12298 3KP-BASH Project

UVa12298 3KP-BASH Project 題目鏈接題意輸入格式輸出格式 分析AC 代碼 題目鏈接 UVa12298 3KP-BASH Project 題意 摘自 《算法競賽入門經典&#xff1a;訓練指南》劉汝佳&#xff0c;陳鋒著。有刪改。 你的任務是為一個假想的 3KP 操作系統編寫一個簡單的 Bash 模擬器。由于操…

云打包生成的ipa上傳構建版本經驗分享

在上架ios應用&#xff0c;在蘋果開發者中心操作的時候&#xff0c;需要提供一個構建版本&#xff0c;如下圖所示&#xff1a; 點擊藍色加號&#xff0c;添加構建版本&#xff0c;但是點擊藍色加號后&#xff0c;并沒有構建版本可以選。 原因是需要下載下面它推薦的工具來上傳…

ESP32的spi通訊(Arduino)

目錄 一.基本配置 1.esp32-wroom-32引腳圖 2.接線方式 3.Arduino芯片選擇和庫文件 3.1Arduino配置&#xff08;2.0.11&#xff09; 3.2 下載ESP32SPISlave庫&#xff08;0.6.8&#xff09;文件 二、代碼編寫 1.主機代碼 2.從機代碼 3.注意事項 三、運行效果 一.基本…

Spring-rabbit重試消費源碼分析

在集成RabbitMQ與Spring Boot 3.1.x時&#xff0c;RetryOperationsInterceptor 是實現消息重試機制的關鍵組件。這里將深入分析 RetryOperationsInterceptor 的工作原理&#xff0c;尤其是在消費者消費失敗時的行為&#xff0c;并結合底層源碼進行詳解。 一、配置解析 首先&a…

如何使用JacksonTypeHandler處理mysql json字符串轉List對象的問題

在使用mysql5.7或更高版本時&#xff0c;json類型字段應用場景越來越多&#xff0c;對于普通的對象或者List<Integer>、List<String>這些基礎類型&#xff0c;jacksonTypeHandler都能很好的處理&#xff0c;如下&#xff1a; 1、定義一個person對象 import com.f…

華為云Flexus+DeepSeek征文 | 基于Dify構建股票分析助手

華為云FlexusDeepSeek征文 | 基于Dify構建AI 圖片生成應用 一、構建股票分析助手前言二、構建股票分析助手環境2.1 基于FlexusX實例的Dify平臺2.2 基于MaaS的模型API商用服務 三、構建股票分析助手實戰3.1 配置Dify環境3.2 配置Dify工具3.3 創建股票分析助手3.4 使用股票分析助…