欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

用于數(shù)據(jù)處理的方法和系統(tǒng)的制作方法_3

文檔序號:9579299閱讀:來源:國知局
當(dāng)前葉子節(jié)點(diǎn)中的數(shù)據(jù)重新分配至該兩個(gè)新的葉子節(jié)點(diǎn)。通常當(dāng)某個(gè)當(dāng)前數(shù)據(jù)分區(qū)中的數(shù)據(jù)量超出一定的閾值后,會考慮進(jìn)一步切分該數(shù)據(jù)分區(qū)以分散數(shù)據(jù)。利用數(shù)據(jù)分區(qū)二叉樹,例如某當(dāng)前數(shù)據(jù)分區(qū)的二進(jìn)制編碼為1,那么通過在1之前分別加上0和1以生成兩個(gè)新的子節(jié)點(diǎn)一即01和11作為兩個(gè)新的數(shù)據(jù)分區(qū)。之所以是在1之前分別加上0和1而并非在1之后分別加上0和1,是因?yàn)楸景l(fā)明的構(gòu)思乃“由后至前”地將數(shù)據(jù)分區(qū)鍵值的二進(jìn)制編碼與數(shù)據(jù)分區(qū)的二進(jìn)制編碼進(jìn)行匹配。生成兩個(gè)新的數(shù)據(jù)分區(qū)后,可以將原來位于數(shù)據(jù)分區(qū)1中的數(shù)據(jù)按照01和11再次進(jìn)行匹配,以分別分配到數(shù)據(jù)分區(qū)01或11中,原來的數(shù)據(jù)分區(qū)1就被取消了(或者物理上直接將其作為數(shù)據(jù)分區(qū)01或11中的一個(gè))。這樣就實(shí)現(xiàn)了增加新的數(shù)據(jù)分區(qū)以及數(shù)據(jù)的遷移??梢钥闯觯谠黾有碌臄?shù)據(jù)分區(qū)以及進(jìn)行數(shù)據(jù)遷移的過程中,其它原有數(shù)據(jù)分區(qū)中的數(shù)據(jù)并不受到任何影響,而只需要重新匹配并遷移部分?jǐn)?shù)據(jù)分區(qū)1中的數(shù)據(jù)。
[0040]根據(jù)本發(fā)明的另一實(shí)施例,響應(yīng)于合并數(shù)據(jù)分區(qū)的請求,確定待合并的數(shù)據(jù)分區(qū)所對應(yīng)的二叉樹當(dāng)前葉子節(jié)點(diǎn);以及將當(dāng)前葉子節(jié)點(diǎn)中的數(shù)據(jù)分配至該當(dāng)前葉子節(jié)點(diǎn)的父節(jié)點(diǎn)所對應(yīng)的數(shù)據(jù)分區(qū)。與增加新的數(shù)據(jù)分區(qū)相對應(yīng)地,如果當(dāng)前某個(gè)數(shù)據(jù)分區(qū)中的數(shù)據(jù)量減少至可以與其它數(shù)據(jù)分區(qū)合并以節(jié)約物理或虛擬存儲資源時(shí),可以考慮將現(xiàn)有的多個(gè)數(shù)據(jù)分區(qū)進(jìn)行合并。與增加數(shù)據(jù)分區(qū)的思想類似,將具有相同父節(jié)點(diǎn)的子節(jié)點(diǎn)所代表的數(shù)據(jù)分區(qū)中的數(shù)據(jù)重新分配至該父節(jié)點(diǎn)所對應(yīng)的數(shù)據(jù)分區(qū)中,從而實(shí)現(xiàn)數(shù)據(jù)分區(qū)的合并。需要指出的是,當(dāng)前該父節(jié)點(diǎn)并沒有對應(yīng)于任何一個(gè)數(shù)據(jù)分區(qū)(因?yàn)橹挥腥~子節(jié)點(diǎn)才代表具體的數(shù)據(jù)分區(qū)),因此在實(shí)際操作中需要將該父節(jié)點(diǎn)對應(yīng)至某個(gè)實(shí)際存在的物理數(shù)據(jù)分區(qū)。此外,可以在二叉樹中刪除原來的葉子節(jié)點(diǎn),從而該父節(jié)點(diǎn)變成了新的葉子節(jié)點(diǎn)。
[0041]圖4示出了根據(jù)本發(fā)明一個(gè)實(shí)施例的利用二叉樹進(jìn)行數(shù)據(jù)處理的實(shí)例的示意圖。其中圖4A示出了一個(gè)初始化的數(shù)據(jù)分區(qū)二叉樹。在圖4A所示的初始化的二叉樹中,根節(jié)點(diǎn)為R,用0來表示左孩子節(jié)點(diǎn),用1來表示右孩子節(jié)點(diǎn),其中每個(gè)葉子節(jié)點(diǎn)對應(yīng)于一個(gè)數(shù)據(jù)分區(qū)。如圖4A所示,有4個(gè)數(shù)據(jù)分區(qū)(葉子節(jié)點(diǎn)),其中00,10,01和11分別代表一個(gè)數(shù)據(jù)分區(qū)。
[0042]圖4B示出了一個(gè)數(shù)據(jù)庫表的結(jié)構(gòu)。在該數(shù)據(jù)庫表中有兩列,分別為“訂單號”和“訂單價(jià)格”。為了對數(shù)據(jù)記錄進(jìn)行分區(qū),我們需要選擇分布較為均勻的字段來作為分區(qū)鍵,并采用合適的方法來將分區(qū)鍵的值轉(zhuǎn)化為二進(jìn)制編碼。假設(shè),我們需要對該數(shù)據(jù)庫表(其中“訂單號”列是自增為1的字段)進(jìn)行分區(qū),考慮到“訂單號”是自增字段且為十進(jìn)制的整型,所以我們可以選擇“訂單號”這一數(shù)據(jù)列為分區(qū)鍵,并將其值轉(zhuǎn)化為二進(jìn)制編碼。需要指出的是,這里僅僅給出了一種選擇分區(qū)鍵的方式,至于用什么方式確定分區(qū)鍵,本發(fā)明不做任何具體限定。
[0043]圖4C示出了一個(gè)待分區(qū)的新插入數(shù)據(jù)記錄。當(dāng)插入新數(shù)據(jù)記錄或刪除數(shù)據(jù)記錄時(shí),首先將分區(qū)鍵轉(zhuǎn)化為二進(jìn)制編碼,然后執(zhí)行下列操作:(1)從二進(jìn)制編碼中取最后一位;(2)如果是0,則轉(zhuǎn)向分區(qū)二叉樹的左孩子;(3)如果是1,則轉(zhuǎn)向分區(qū)二叉樹的右孩子;如果孩子節(jié)點(diǎn)是葉子節(jié)點(diǎn),該葉子節(jié)點(diǎn)對應(yīng)到分區(qū)節(jié)點(diǎn),至此該數(shù)據(jù)記錄找到它存儲的分區(qū)節(jié)點(diǎn)。如果孩子節(jié)點(diǎn)不是葉子節(jié)點(diǎn),則向左取一位二進(jìn)制位,轉(zhuǎn)到第(2)步。假如對于該數(shù)據(jù)庫表,插入新的訂單數(shù)據(jù)記錄,其中“訂單號”的值為128,為十進(jìn)制整型數(shù)值。首先將“訂單號”128的值轉(zhuǎn)化成二進(jìn)制編碼,即10000000。然后,取二進(jìn)制的最后一位,為0,則轉(zhuǎn)向分區(qū)二叉樹的左孩子,發(fā)現(xiàn)其左孩子不是葉子節(jié)點(diǎn);緊接著,向左再取一位二進(jìn)制位,為0,轉(zhuǎn)向分區(qū)二叉樹的左孩子,發(fā)現(xiàn)其左孩子是葉子節(jié)點(diǎn),那么對應(yīng)的分區(qū)節(jié)點(diǎn)標(biāo)識為00。也就是說,葉子節(jié)點(diǎn)00所代表的數(shù)據(jù)分區(qū)為該數(shù)據(jù)記錄應(yīng)當(dāng)被分配至的數(shù)據(jù)分區(qū)。圖4D示出了確定該數(shù)據(jù)記錄應(yīng)該插入的分區(qū)的二叉樹。
[0044]圖4E示出了基于二叉樹增加新的數(shù)據(jù)分區(qū)。當(dāng)某一分區(qū)節(jié)點(diǎn)上的工作負(fù)載達(dá)到了設(shè)置的閾值,為了分擔(dān)該分區(qū)節(jié)點(diǎn)上的工作負(fù)載,那么我們需要增加新分區(qū)節(jié)點(diǎn)。假如,分區(qū)節(jié)點(diǎn)10達(dá)到了設(shè)定的工作負(fù)載閾值,那么在分區(qū)二叉樹上增加左孩子010和右孩子110,然后將舊的分區(qū)節(jié)點(diǎn)標(biāo)識修改為010,新的分區(qū)節(jié)點(diǎn)標(biāo)識修改為110,并且將舊的分區(qū)節(jié)點(diǎn)上數(shù)據(jù)記錄的分區(qū)鍵的二進(jìn)制的后三位是110的數(shù)據(jù)記錄移動(dòng)到110分區(qū)。
[0045]圖4F示出了基于二叉樹合并數(shù)據(jù)分區(qū)(深色表示)。當(dāng)某一分區(qū)節(jié)點(diǎn)上的工作負(fù)載低于設(shè)置的閾值時(shí),為了節(jié)省資源,降低成本,我們需要減少分區(qū)節(jié)點(diǎn)。假如,分區(qū)節(jié)點(diǎn)011的工作負(fù)載低于閾值,那么將分區(qū)節(jié)點(diǎn)011上的數(shù)據(jù)移動(dòng)至分區(qū)節(jié)點(diǎn)111,并且修改分區(qū)節(jié)點(diǎn)111的標(biāo)識為11,最后刪除分區(qū)二叉樹上的節(jié)點(diǎn)011和111。
[0046]圖5示出了根據(jù)本發(fā)明一個(gè)實(shí)施例的用于數(shù)據(jù)處理的系統(tǒng)的框圖。圖5所示的系統(tǒng)在整體上由系統(tǒng)500表示,包括:獲取裝置501,被配置為獲取待處理數(shù)據(jù)的分區(qū)鍵值的二進(jìn)制編碼;匹配裝置502,被配置為根據(jù)所獲取的分區(qū)鍵值的二進(jìn)制編碼確定相應(yīng)的數(shù)據(jù)分區(qū),該相應(yīng)的數(shù)據(jù)分區(qū)對應(yīng)的二進(jìn)制編碼與所獲取的分區(qū)鍵值的二進(jìn)制編碼由后至前取相同位數(shù)的編碼相同;以及處理裝置503,被配置為根據(jù)所確定的相應(yīng)的數(shù)據(jù)分區(qū),處理所述待處理數(shù)據(jù)。應(yīng)當(dāng)理解,系統(tǒng)500中的裝置501-503分別對應(yīng)于圖2所示的方法中的步驟201-203,在此不再贅述。
[0047]本發(fā)明可以是系統(tǒng)、方法和/或計(jì)算機(jī)程序產(chǎn)品。計(jì)算機(jī)程序產(chǎn)品可以包括計(jì)算機(jī)可讀存儲介質(zhì),其上載有用于使處理器實(shí)現(xiàn)本發(fā)明的各個(gè)方面的計(jì)算機(jī)可讀程序指令。
[0048]計(jì)算機(jī)可讀存儲介質(zhì)可以是可以保持和存儲由指令執(zhí)行設(shè)備使用的指令的有形設(shè)備。計(jì)算機(jī)可讀存儲介質(zhì)例如可以是一一但不限于一一電存儲設(shè)備、磁存儲設(shè)備、光存儲設(shè)備、電磁存儲設(shè)備、半導(dǎo)體存儲設(shè)備或者上述的任意合適的組合。計(jì)算機(jī)可讀存儲介質(zhì)的更具體的例子(非窮舉的列表)包括:便攜式計(jì)算機(jī)盤、硬盤、隨機(jī)存取存儲器(RAM)、只讀存儲器(ROM)、可擦式可編程只讀存儲器(EPR0M或閃存)、靜態(tài)隨機(jī)存取存儲器(SRAM)、便攜式壓縮盤只讀存儲器(⑶-ROM)、數(shù)字多功能盤(DVD)、記憶棒、軟盤、機(jī)械編碼設(shè)備、例如其上存儲有指令的打孔卡或凹槽內(nèi)凸起結(jié)構(gòu)、以及上述的任意合適的組合。這里所使用的計(jì)算機(jī)可讀存儲介質(zhì)不被解釋為瞬時(shí)信號本身,諸如無線電波或者其他自由傳播的電磁波、通過波導(dǎo)或其他傳輸媒介傳播的電磁波(例如,通過光纖電纜的光脈沖)、或者通過電線傳輸?shù)碾娦盘枴?br>[0049]這里所描述的計(jì)算機(jī)可讀程序指令可以從計(jì)算機(jī)可讀存儲介質(zhì)下載到各個(gè)計(jì)算/處理設(shè)備,或者通過網(wǎng)絡(luò)、例如因特網(wǎng)、局域網(wǎng)、廣域網(wǎng)和/或無線網(wǎng)下載到外部計(jì)算機(jī)或外部存儲設(shè)備。網(wǎng)絡(luò)可以包括銅傳輸電纜、光纖傳輸、無線傳輸、路由器、防火墻、交換機(jī)、網(wǎng)關(guān)計(jì)算機(jī)和/或邊緣服務(wù)器。每個(gè)計(jì)算/處理設(shè)備中的網(wǎng)絡(luò)適配卡或者網(wǎng)絡(luò)接口從網(wǎng)絡(luò)接收計(jì)算機(jī)可讀程序指令,并轉(zhuǎn)發(fā)該計(jì)算機(jī)可讀程序指令,以供存儲在各個(gè)計(jì)算/處理設(shè)備中的計(jì)算機(jī)可讀存儲介質(zhì)中。
[0050]用于執(zhí)行本發(fā)明操作的計(jì)算機(jī)程序指令可以是匯編指令、指令集架構(gòu)(ISA)指令、機(jī)器指令、機(jī)器相關(guān)指令、微代碼、固件指令、狀態(tài)設(shè)置數(shù)據(jù)、或者以一種或多種編程語言的任意組合編寫的源代碼或目標(biāo)代碼,所述編程語言包括面向?qū)ο蟮木幊陶Z言一諸如Smalltalk、C++等,以及常規(guī)的過程式編程語目一諸如“C”語目或類似的編程語目。計(jì)算機(jī)可讀程序指令可以完全地在用戶計(jì)算機(jī)上執(zhí)行、部分地在用戶計(jì)算機(jī)上執(zhí)行、作為一個(gè)獨(dú)立的軟件包執(zhí)行、部分在用戶計(jì)算機(jī)上部分在遠(yuǎn)程計(jì)算機(jī)上執(zhí)行、或者完全在遠(yuǎn)程計(jì)
當(dāng)前第3頁1 2 3 4 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1
鄂伦春自治旗| 隆尧县| 连南| 鄂州市| 织金县| 阿拉尔市| 南丹县| 清丰县| 嘉黎县| 噶尔县| 长子县| 泗阳县| 茂名市| 霸州市| 云阳县| 大城县| 柞水县| 璧山县| 宁国市| 宜兴市| 丰镇市| SHOW| 安多县| 兴隆县| 安顺市| 长海县| 仁怀市| 香河县| 霍山县| 伊川县| 新兴县| 河东区| 尖扎县| 夏河县| 称多县| 启东市| 庆阳市| 山东省| 安塞县| 法库县| 昌乐县|