[IDS培訓文件]第五章 資料分片(fragmentation)
第五章 資料分片(fragmentation)
Informix資料分片指把一個資料庫表的資料分佈在不同的資料空間上。資料分片技術主要適用於資料量比較大(50,000條記錄以上)、訪問頻繁的資料表。
1、資料分片技術
1)輪循(round robin)方式
輪循方式資料分片將資料庫表的資料均勻分佈在指定的資料空間上。對於經常需要順序掃描的資料表或經常裝載的資料的資料表,可以考慮使用round robin分片策略,將資料均勻分佈在多個位於不同硬碟上的資料空間(dbspaces)上。例如:
create table satmxhz
(
…
)fragment by round robin in workdbs1,workdbs2,workdbs3;
2)表示式(expression)方式
表示式方式資料分片將資料按照一定的條件分佈在指定的資料空間上。對於經常按照一定的條件掃描,而且很少裝載資料的資料表,可以考慮使用expression分片方式,將資料按照一定條件分佈在多個位於不同的資料空間(dbspace)上。例如:
create table acdb1
(
…
)fragment by expression
fb1z1 in (“1”,”2”,”3”) in workdbs1,
fb1z1 in (“4”,”5”,”6”) in workdbs2,
remainder in workdbs3;
使用表示式方式資料分片在進行條件查詢時,Online可以忽略那些不滿足條件的分片,從而降低了掃描資料量,提高了查詢效率。
2、 資料分片的優點
(1)並行掃描(parallel scans);
如果使用了資料分片,並且開啟了PDQ,那麼對資料表的掃描將並行從各個fragmentation中讀資料,查詢速度將得到很大提高。
(2)均衡I/O;
如果資料分片使用的資料空間正好分佈在多個獨立物理硬碟上,則資料掃描將在多個硬碟上同時進行,減少了磁碟競爭,均衡了磁碟I/O。這對於OLTP交易非常有利。
(3)高可靠性;
通過設定忽略出錯的單個資料分片,可以避免由於單個資料分片出錯導致整個不能使用的情況。這對於大量的動態資料統計非常有利,如決策支援系統DSS(Decision Support System)中的資料統計。
(4)降低備份、恢復資料粒度。
由於資料備份、恢復可以在dbspace一級上進行,而資料分片駐留在dbspace上,所以資料備份、恢復可以在fragment上進行。
3、rowid問題
IDS的rowid由4個位元組構成:
0 -- 07bit :記錄在頁面中的槽表號。
08 -- 32bit :tbsapce中的邏輯頁號。
由於使用了資料分片,一個資料庫表將跨越多個dbspace中的tbspace,所以rowid在一個表中不再是唯一的,而且作為應用程式也不應該直接操作rowid。鑑於以上情況,在使用Informix 7.0後,應該不再直接操作rowid。為了操作方便可以在資料庫表中定義主關鍵字(primary key)。
Informix資料分片指把一個資料庫表的資料分佈在不同的資料空間上。資料分片技術主要適用於資料量比較大(50,000條記錄以上)、訪問頻繁的資料表。
1、資料分片技術
1)輪循(round robin)方式
輪循方式資料分片將資料庫表的資料均勻分佈在指定的資料空間上。對於經常需要順序掃描的資料表或經常裝載的資料的資料表,可以考慮使用round robin分片策略,將資料均勻分佈在多個位於不同硬碟上的資料空間(dbspaces)上。例如:
create table satmxhz
(
…
)fragment by round robin in workdbs1,workdbs2,workdbs3;
2)表示式(expression)方式
表示式方式資料分片將資料按照一定的條件分佈在指定的資料空間上。對於經常按照一定的條件掃描,而且很少裝載資料的資料表,可以考慮使用expression分片方式,將資料按照一定條件分佈在多個位於不同的資料空間(dbspace)上。例如:
create table acdb1
(
…
)fragment by expression
fb1z1 in (“1”,”2”,”3”) in workdbs1,
fb1z1 in (“4”,”5”,”6”) in workdbs2,
remainder in workdbs3;
使用表示式方式資料分片在進行條件查詢時,Online可以忽略那些不滿足條件的分片,從而降低了掃描資料量,提高了查詢效率。
2、 資料分片的優點
(1)並行掃描(parallel scans);
如果使用了資料分片,並且開啟了PDQ,那麼對資料表的掃描將並行從各個fragmentation中讀資料,查詢速度將得到很大提高。
(2)均衡I/O;
如果資料分片使用的資料空間正好分佈在多個獨立物理硬碟上,則資料掃描將在多個硬碟上同時進行,減少了磁碟競爭,均衡了磁碟I/O。這對於OLTP交易非常有利。
(3)高可靠性;
通過設定忽略出錯的單個資料分片,可以避免由於單個資料分片出錯導致整個不能使用的情況。這對於大量的動態資料統計非常有利,如決策支援系統DSS(Decision Support System)中的資料統計。
(4)降低備份、恢復資料粒度。
由於資料備份、恢復可以在dbspace一級上進行,而資料分片駐留在dbspace上,所以資料備份、恢復可以在fragment上進行。
3、rowid問題
IDS的rowid由4個位元組構成:
0 -- 07bit :記錄在頁面中的槽表號。
08 -- 32bit :tbsapce中的邏輯頁號。
由於使用了資料分片,一個資料庫表將跨越多個dbspace中的tbspace,所以rowid在一個表中不再是唯一的,而且作為應用程式也不應該直接操作rowid。鑑於以上情況,在使用Informix 7.0後,應該不再直接操作rowid。為了操作方便可以在資料庫表中定義主關鍵字(primary key)。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/24955184/viewspace-772255/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- [IDS培訓文件]第四章 並行資料查詢PDQ並行
- [IDS培訓文件]第三章 索引策略索引
- [IDS培訓文件]第六章 ESQL/C的使用SQL
- [IDS培訓文件]第一章 Informix動態可伸縮體系結構ORM
- java培訓資料Java
- Hadoop資料分析員培訓Hadoop
- 達夢資料庫DCP培訓心得資料庫
- solaris的入門培訓資料(轉)
- 深圳java培訓:構建xml文件--【千鋒】JavaXML
- 分散式文件儲存資料庫之MongoDB分片叢集分散式資料庫MongoDB
- informix fragment 分片表的常見操作 ids9.40ORMFragment
- 完整的selenium免費培訓資料
- “資料安全管理”培訓班順利開班!
- 分享Cloudera大資料培訓課程的資訊Cloud大資料
- PIC微控制器入門培訓資料
- 好程式設計師大資料培訓分享mysql資料型別程式設計師大資料MySql資料型別
- 使用 PyTorch 完全分片資料並行技術加速大模型訓練PyTorch並行大模型
- 黑馬程式設計師Java培訓和Android培訓:培訓前奏程式設計師JavaAndroid
- 如何分片資料庫? - stackoverflow資料庫
- 西部戰略 | GBase資料庫訓練營華西專場培訓資料庫
- 培訓遊戲遊戲
- 好程式設計師大資料培訓分享大資料還學嗎?程式設計師大資料
- 好程式設計師大資料培訓分享大資料的應用程式設計師大資料
- 大資料培訓完一般可以做哪些工作?大資料
- 好程式設計師大資料培訓分享MapReduce理解程式設計師大資料
- Oracle備份恢復實驗(原廠培訓資料)Oracle
- 認證培訓 | GBase 8s資料庫2022年首期培訓圓滿結束資料庫
- Java培訓:長沙Java培訓機構排名Java
- 網路安全培訓何必冠以***培訓之名?薦
- 五種資料庫資料模型分片策略資料庫模型
- 好程式設計師大資料培訓分享大資料面試寶典一程式設計師大資料面試
- 好程式設計師大資料培訓分享大資料面試寶典二程式設計師大資料面試
- 好程式設計師大資料培訓分享大資料面試寶典三程式設計師大資料面試
- 好程式設計師大資料培訓分享大資料面試寶典四程式設計師大資料面試
- 好程式設計師大資料培訓分享大資料面試寶典六程式設計師大資料面試
- 好程式設計師大資料培訓分享大資料的影響一程式設計師大資料
- Python培訓分享:如何做資料分析,資料分析流程是什麼?Python
- Mycat中的特性----資料分片