oracle: 表分區>>范圍分區,列表分區,散列分區/哈希分區,間隔分區,參考分區,組合分區,子分區/復合分區/組合分區

分區表

是將一個邏輯上的大表按照特定的規則劃分為多個物理上的子表,這些子表稱為分區。
分區可以基于不同的維度,如時間、數值范圍、字符串值等,將數據分散存儲在不同的分區
中,以提高數據管理的效率和查詢性能,同時便于數據的維護和操作
作用

范圍分區 range

它將表中的數據根據某個列的值的范圍分布到不同的分區中。通常適用于具有連續數值或時間序列的數據

分區名自定義,可以用p1,p2,也可以用其他

分區字段必須在表中有定義, 每個分區的區間是前閉后開, 即最小值<=區間< 最大值

每個分區的最小值是上一個分區的最大值,相鄰分區的區值是連續的

超出范圍的數據無法被插入
解決方案: 設置一個默認分區, 超出其他分區數據范圍的數據都會放入此分區, 但是此分區后面不能再增加分區

列表分區list

?列表分區是根據列的值列表來分割數據的。每個分區包含一個或多個離散的列值,適用于數據基數小, 重復量大的情況. 各分區的值不用區分大小

插入數據時數據不在任何分區中會報錯, 可以設置一個默認分區,專門存放類似數據

.......

partition? 分區名 values (default)

散列分區/哈希分區 hash

語法2:

建表語句

partition by hash (字段)? partitions n

未指定分區名,數據庫會自動設置分區名, n是分區個數

可利用數據字典查看分區的相關信息: 比如多少個分區,分區名稱

SELECT * FROM ALL_TAB_PARTITIONS WHERE TABLE_NAME = UPPER('表名');

用于數據較少重復的, 以免數據傾斜

無需指定分區名, 數據庫會自動設置分區名

雖然可以通過查詢分區信息、查詢特定分區的數據或通過實驗驗證來了解哈希分區的數據分布情況,但是無法直接通過分區鍵的值來確定數據會被分配到哪個分區, 所以工作中不常用

間隔分區

oarcle 11g 版本新增的分區類型,? ?間隔分區(Interval Partitioning)是范圍分區(Range Partitioning)的一種特殊形式, 允許數據庫自動創建分區以適應數據增長, 只需定義一個分區,系統會根據定義自動添加分區

注意: 間隔分區不能執行增加分區的操作

?

時間間隔函數

用于將數字轉換為時間間隔類型

1. numtoyminterval? (n, 'year/month')

2.numtodsinterval (n, 'day/hour/minute/seconds')

通常用于日期計算或時間間隔操作

參考分區/引用分區

一個表的分區策略基于另一個表的分區鍵。這使得相關的表可以按照相同的邏輯進行分區,便于管理和維護, 這種分區方式特別適用于父子表關系,其中子表的分區與父表的分區保持一致

?子分區/復合分區

分區表可以進一步劃分為子分區(Subpartitioning),從而形成復合分區(Composite Partitioning),有時也稱為組合分區,混合分區

?

注意: 分區名稱不能重復, 不在同一個分區里的子分區名也不能重復

分區管理

刪除分區的寫法2: delete from 表名 partition (分區名);

清空分區/截斷分區(即刪除分區中的所有數據)

默認是?保留存儲空間。也就是說不寫明時,Oracle 會保留分區占用的存儲空間,以便后續可以重用這些空間來插入新數據

注意:

范圍分區新增分區時,只能在最后一個分區后面添加

哈希分區/散列分區一般不添加分區

刪除分區時, 如果只剩下一個分區, 不能刪除唯一的分區(因為數據會重新分布,且不知道刪除了哪些數據)

刪除分區和截斷分區都會把分區里面的數據刪除, 不同的是截斷分區的分區還在

合并分區

將多個分區合并為一個分區。合并分區通常用于優化存儲或簡化分區結構

注意: 確保合并操作不影響業務邏輯

索引維護:?合并分區后,全局索引可能會失效,需要使用?UPDATE INDEXES?子句來維護索引

語法

ALTER TABLE sales
MERGE PARTITIONS p1, p2
INTO PARTITION p_merged
[UPDATE INDEXES];

合并操作會停止間隔分區的自動創建功能,直到新的分區范圍被定義。

對于參考分區/引用分區,如果父表的分區合并,子表的分區也會自動相應合并

拆分分區

把1個分區拆成2個或以上

范圍分區的拆分語法


?列表分區的拆分語法

ALTER TABLE table_name
SPLIT PARTITION partition_name
values (value)
INTO (PARTITION new_partition1,PARTITION new_partition2
);

第一個分區包含分區字段的值,即(value)

范圍分區和列表分區拆分語法的區別

范圍分區:? at (value)

列表分區: values(value)?

復合分區的拆分

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

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

相關文章

【單層神經網絡】基于MXNet的線性回歸實現(底層實現)

寫在前面 剛開始先從普通的尋優算法開始&#xff0c;熟悉一下學習訓練過程下面將使用梯度下降法尋優&#xff0c;但這大概只能是局部最優&#xff0c;它并不是一個十分優秀的尋優算法 整體流程 生成訓練數據集&#xff08;實際工程中&#xff0c;需要從實際對象身上采集數據…

本地快速部署DeepSeek-R1模型——2025新年賀歲

一晃年初六了&#xff0c;春節長假余額馬上歸零了。今天下午在我的電腦上成功部署了DeepSeek-R1模型&#xff0c;抽個時間和大家簡單分享一下過程&#xff1a; 概述 DeepSeek模型 是一家由中國知名量化私募巨頭幻方量化創立的人工智能公司&#xff0c;致力于開發高效、高性能…

C++11詳解(一) -- 列表初始化,右值引用和移動語義

文章目錄 1.列表初始化1.1 C98傳統的{}1.2 C11中的{}1.3 C11中的std::initializer_list 2.右值引用和移動語義2.1左值和右值2.2左值引用和右值引用2.3 引用延長生命周期2.4左值和右值的參數匹配問題2.5右值引用和移動語義的使用場景2.5.1左值引用主要使用場景2.5.2移動構造和移…

在K8S中,pending狀態一般由什么原因導致的?

在Kubernetes中&#xff0c;資源或Pod處于Pending狀態可能有多種原因引起。以下是一些常見的原因和詳細解釋&#xff1a; 資源不足 概述&#xff1a;當集群中的資源不足以滿足Pod或服務的需求時&#xff0c;它們可能會被至于Pending狀態。這通常涉及到CPU、內存、存儲或其他資…

手寫MVVM框架-構建虛擬dom樹

MVVM的核心之一就是虛擬dom樹&#xff0c;我們這一章節就先構建一個虛擬dom樹 首先我們需要創建一個VNode的類 // 當前類的位置是src/vnode/index.js export default class VNode{constructor(tag, // 標簽名稱&#xff08;英文大寫&#xff09;ele, // 對應真實節點children,…

linux內核源代碼中__init的作用?

在 Linux 內核源代碼中&#xff0c;__init是一個特殊的宏&#xff0c;用于標記在內核初始化階段使用的變量或函數。這個宏的作用是告訴內核編譯器和鏈接器&#xff0c;被標記的變量或函數只在內核的初始化階段使用&#xff0c;在系統啟動完成后就不再需要了。因此&#xff0c;這…

【大數據技術】教程03:本機PyCharm遠程連接虛擬機Python

本機PyCharm遠程連接虛擬機Python 注意:本文需要使用PyCharm專業版。 pycharm-professional-2024.1.4VMware Workstation Pro 16CentOS-Stream-10-latest-x86_64-dvd1.iso寫在前面 本文主要介紹如何使用本地PyCharm遠程連接虛擬機,運行Python腳本,提高編程效率。 注意: …

pytorch實現門控循環單元 (GRU)

人工智能例子匯總&#xff1a;AI常見的算法和例子-CSDN博客 特性GRULSTM計算效率更快&#xff0c;參數更少相對較慢&#xff0c;參數更多結構復雜度只有兩個門&#xff08;更新門和重置門&#xff09;三個門&#xff08;輸入門、遺忘門、輸出門&#xff09;處理長時依賴一般適…

PAT甲級1032、sharing

題目 To store English words, one method is to use linked lists and store a word letter by letter. To save some space, we may let the words share the same sublist if they share the same suffix. For example, loading and being are stored as showed in Figure …

最小生成樹kruskal算法

文章目錄 kruskal算法的思想模板 kruskal算法的思想 模板 #include <bits/stdc.h> #define lowbit(x) ((x)&(-x)) #define int long long #define endl \n #define PII pair<int,int> #define IOS ios::sync_with_stdio(0),cin.tie(0),cout.tie(0); using na…

為何在Kubernetes容器中以root身份運行存在風險?

作者&#xff1a;馬辛瓦西奧內克&#xff08;Marcin Wasiucionek&#xff09; 引言 在Kubernetes安全領域&#xff0c;一個常見的建議是讓容器以非root用戶身份運行。但是&#xff0c;在容器中以root身份運行&#xff0c;實際會帶來哪些安全隱患呢&#xff1f;在Docker鏡像和…

js --- 獲取時間戳

介紹 使用js獲取當前時間戳 語法 Date.now()

ConcurrentHashMap線程安全:分段鎖 到 synchronized + CAS

專欄系列文章地址&#xff1a;https://blog.csdn.net/qq_26437925/article/details/145290162 本文目標&#xff1a; 理解ConcurrentHashMap為什么線程安全&#xff1b;ConcurrentHashMap的具體細節還需要進一步研究 目錄 ConcurrentHashMap介紹JDK7的分段鎖實現JDK8的synchr…

Vue和Java使用AES加密傳輸

背景&#xff1a;Vue對參數進行加密&#xff0c;對響應進行解密。Java對參數進行解密&#xff0c;對響應進行解密。不攔截文件上傳類請求、GET請求。 【1】前端配置 安裝crypto npm install crypto-js編寫加解密工具類encrypt.js import CryptoJS from crypto-jsconst KEY …

開發板目錄 /usr/lib/fonts/ 中的字體文件 msyh.ttc 的介紹【微軟雅黑(Microsoft YaHei)】

本文是博文 https://blog.csdn.net/wenhao_ir/article/details/145433648 的延伸擴展。 本文是博文 https://blog.csdn.net/wenhao_ir/article/details/145433648 的延伸擴展。 問&#xff1a;運行 ls /usr/lib/fonts/ 發現有一個名叫 msyh.ttc 的字體文件&#xff0c;能介紹…

[ESP32:Vscode+PlatformIO]新建工程 常用配置與設置

2025-1-29 一、新建工程 選擇一個要創建工程文件夾的地方&#xff0c;在空白處鼠標右鍵選擇通過Code打開 打開Vscode&#xff0c;點擊platformIO圖標&#xff0c;選擇PIO Home下的open&#xff0c;最后點擊new project 按照下圖進行設置 第一個是工程文件夾的名稱 第二個是…

述評:如果抗拒特朗普的“普征關稅”

題 記 美國總統特朗普宣布對美國三大貿易夥伴——中國、墨西哥和加拿大&#xff0c;分別征收10%、25%的關稅。 他威脅說&#xff0c;如果這三個國家不解決他對非法移民和毒品走私的擔憂&#xff0c;他就要征收進口稅。 去年&#xff0c;中國、墨西哥和加拿大這三個國家&#…

九. Redis 持久化-AOF(詳細講解說明,一個配置一個說明分析,步步講解到位 2)

九. Redis 持久化-AOF(詳細講解說明&#xff0c;一個配置一個說明分析&#xff0c;步步講解到位 2) 文章目錄 九. Redis 持久化-AOF(詳細講解說明&#xff0c;一個配置一個說明分析&#xff0c;步步講解到位 2)1. Redis 持久化 AOF 概述2. AOF 持久化流程3. AOF 的配置4. AOF 啟…

C++11新特性之long long超長整形

1.介紹 long long 超長整形是C11標準新添加的&#xff0c;用于表示更大范圍整數的類型。 2.用法 占用空間&#xff1a;至少64位&#xff08;8個字節&#xff09;。 對于有符號long long 整形&#xff0c;后綴用“LL”或“II”標識。例如&#xff0c;“10LL”就表示有符號超長整…

瀏覽器查詢所有的存儲信息,以及清除的語法

要在瀏覽器的控制臺中查看所有的存儲&#xff08;例如 localStorage、sessionStorage 和 cookies&#xff09;&#xff0c;你可以使用瀏覽器開發者工具的 "Application" 標簽頁。以下是操作步驟&#xff1a; 1. 打開開發者工具 在 Chrome 或 Edge 瀏覽器中&#xf…