自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

對(duì)DB2分區(qū)兼容性的正確認(rèn)識(shí)以及并置概念講述

數(shù)據(jù)庫(kù)
本文主要向你介紹的是是DB2分區(qū)兼容性認(rèn)識(shí)與并置的概念描述,你如果是你如果是Oracle編程的瘋狂一族的話下面的文章,你一定不要錯(cuò)過(guò)。

分區(qū)兼容的數(shù)據(jù)類型具有如下屬性:具有相同值但有不同類型的兩個(gè)變量會(huì)按相同的分區(qū)算法映射至同一個(gè)分區(qū)號(hào)。

 

最近在看一些DB2的DPF方面的東西,有兩個(gè)概念有一些搞不懂。

 

就是“DB2分區(qū)兼容性”和“并置”兩個(gè)概念。

查找了一些相關(guān)資料,內(nèi)容如下:

分區(qū)兼容性

可對(duì)分區(qū)鍵的對(duì)應(yīng)列的基本數(shù)據(jù)類型進(jìn)行比較,并可將它們聲明為是分區(qū)兼容的(partition compatible)。分區(qū)兼容的數(shù)據(jù)類型具有如下屬性:具有相同值但有不同類型的兩個(gè)變量會(huì)按相同的分區(qū)算法映射至同一個(gè)分區(qū)號(hào)。DB2 分區(qū)兼容性具有下列特征:

基本數(shù)據(jù)類型與另一個(gè)相同的基本數(shù)據(jù)類型兼容。

內(nèi)部格式用于 DATE、TIME 和 TIMESTAMP 數(shù)據(jù)類型。它們彼此都不兼容,且都不與 CHAR 兼容。

分區(qū)兼容性不受帶有 NOT NULL 或 FOR BIT DATA 定義的列的影響。

對(duì)兼容數(shù)據(jù)類型的 NULL 值的處理是完全相同的;對(duì)不兼容數(shù)據(jù)類型的 NULL 值的處理可能不相同。

用戶定義的類型的基本數(shù)據(jù)類型用于分析分區(qū)兼容性。

對(duì)分區(qū)鍵中相同值的小數(shù)的處理是完全相同的,即使它們的標(biāo)度和精度不同。

字符串中(CHAR、VARCHAR GRAPHIC 或 VARGRAPHIC)的尾部空格會(huì)被散列算法忽略。

BIGINT、SMALLINT 和 INTEGER 是兼容的數(shù)據(jù)類型。

REAL 和 FLOAT 是兼容的數(shù)據(jù)類型。

不同長(zhǎng)度的 CHAR 和 VARCHAR 是兼容的數(shù)據(jù)類型。

GRAPHIC 和 VARGRAPHIC 是兼容的數(shù)據(jù)類型。

DB2分區(qū)兼容性不適用于 LONG VARCHAR、LONG VARGRAPHIC、CLOB、DBCLOB 和 BLOB 數(shù)據(jù)類型,因?yàn)樗鼈儾荒茏鳛榉謪^(qū)鍵。

并置

并置(collocation)是安置同一個(gè)數(shù)據(jù)庫(kù)分區(qū)中包含相關(guān)數(shù)據(jù)的不同表中的行。并置的表使 DB2 可以更有效地使用連接策略。

您可能會(huì)發(fā)現(xiàn),作為對(duì)特定查詢的響應(yīng),兩個(gè)或多個(gè)表頻繁地提供數(shù)據(jù)。在此情況下,您會(huì)希望這樣的表中的相關(guān)數(shù)據(jù)的位置盡可能地靠近。在數(shù)據(jù)庫(kù)被物理地劃分為兩個(gè)或多個(gè)數(shù)據(jù)庫(kù)分區(qū)的環(huán)境中,必須有一種方法可將劃分的表的相關(guān)碎片盡可能地靠近。完成此過(guò)程的功能稱為表并置。

當(dāng)存取用于連接或子查詢的多個(gè)表時(shí),DB2(R) 通用數(shù)據(jù)庫(kù)(DB2 UDB)能夠識(shí)別要連接的數(shù)據(jù)是否位于相同數(shù)據(jù)庫(kù)分區(qū)上。于是 DB2 就可以在存儲(chǔ)數(shù)據(jù)的數(shù)據(jù)庫(kù)分區(qū)上執(zhí)行連接或子查詢,而不必在數(shù)據(jù)庫(kù)分區(qū)之間移動(dòng)數(shù)據(jù)。這種局部地執(zhí)行連接或子查詢的能力具有顯著的性能優(yōu)點(diǎn)。

要發(fā)生并置,表必須:

在相同數(shù)據(jù)庫(kù)分區(qū)組中,且這個(gè)數(shù)據(jù)庫(kù)分區(qū)組不能處在再分配期間。(在再分配期間,數(shù)據(jù)庫(kù)分區(qū)組中的表可能使用不同的分區(qū)映射 —— 它們不是并置的。)

有包含相同數(shù)量的列的分區(qū)鍵。

分區(qū)鍵的相應(yīng)列是分區(qū)兼容的。

如果一個(gè)表在一個(gè)單分區(qū)數(shù)據(jù)庫(kù)分區(qū)組中,且該分區(qū)組是在另一個(gè)表所在的同一個(gè)分區(qū)上定義的,那么也可以發(fā)生并置。

總結(jié):

比如int, char, varchar之類能夠被散列的數(shù)據(jù)類型就是DB2分區(qū)兼容性得,其他類似LOB, LF等類型不能被散列的就不是

對(duì)于并置,比如我有兩個(gè)表A,B,其中A包含列c1 int, c2 char,B包含c1 varchar, c2 int

然后表A按照c1分區(qū),表B按照c2分區(qū),也就是說(shuō),當(dāng)用戶插入一行數(shù)據(jù)到表A,首先會(huì)對(duì)A.c1進(jìn)行散列,然后模分區(qū)數(shù)量,把新的數(shù)據(jù)插入相應(yīng)的分區(qū),而對(duì)于表B則是對(duì)B.c2進(jìn)行相同算法散列。

這樣當(dāng)查詢select * from c1,c2 where A.c1=B.c2的時(shí)候,由于A.c1和B.c2的數(shù)據(jù)類型相同,使用相同的散列算法,如果A.c1與B.c2相等,那么他們肯定在同一分區(qū),這樣的話進(jìn)行join的時(shí)候就不需要再分區(qū)間移動(dòng)數(shù)據(jù),只需要在本分區(qū)join完后向coord partition返回?cái)?shù)據(jù)。

【編輯推薦】

  1. DB2數(shù)據(jù)庫(kù)為單個(gè)會(huì)話鎖定“竅門”
  2. DB2建立database Partition的點(diǎn)滴
  3. DB2數(shù)據(jù)庫(kù)所支持的外部文件格式與制格式的文件
  4. DB2數(shù)據(jù)庫(kù)所支持的外部文件格式與ASCII文件
  5. DB2數(shù)據(jù)庫(kù)所支持的某些外部文件格式的解析

 

責(zé)任編輯:佚名 來(lái)源: csdn.net
相關(guān)推薦

2010-07-29 11:07:23

DB2分區(qū)兼容性

2010-08-27 09:55:40

db2兼容性并置

2010-08-11 15:04:03

DB2備份

2010-08-06 14:22:07

DB2分區(qū)兼容性

2010-07-30 17:21:26

DB2數(shù)據(jù)庫(kù)編目

2010-08-18 14:52:01

DB2數(shù)據(jù)庫(kù)賬戶

2010-08-03 11:27:01

DB2分區(qū)兼容性

2010-08-03 11:33:30

DB2并置

2010-08-04 17:10:37

DB2數(shù)據(jù)庫(kù)

2010-08-11 10:06:39

DB2數(shù)據(jù)庫(kù)

2010-08-02 14:03:49

DB2驅(qū)動(dòng)類型

2010-05-17 09:35:10

MySQL 字符集

2010-11-02 16:47:26

DB2鎖兼容性

2018-05-08 09:39:57

區(qū)塊鏈數(shù)字貨幣投資

2010-09-28 14:23:29

網(wǎng)絡(luò)詐騙

2010-06-09 13:17:22

傳輸控制協(xié)議

2010-02-24 09:47:05

Python 源文件

2010-11-02 10:35:59

DB2分區(qū)數(shù)據(jù)庫(kù)

2010-08-19 16:47:14

DB2 9.5分區(qū)管理

2010-07-27 10:32:22

DB2數(shù)據(jù)庫(kù)編目
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)