本申請(qǐng)要求在2015年12月21日向韓國(guó)知識(shí)產(chǎn)權(quán)局提交的申請(qǐng)?zhí)枮?0-2015-0182777的韓國(guó)專利申請(qǐng)的優(yōu)先權(quán),通過引用將該韓國(guó)專利申請(qǐng)的全部?jī)?nèi)容合并于此。
技術(shù)領(lǐng)域
本發(fā)明總體涉及數(shù)據(jù)處理系統(tǒng),并且更特別地,涉及一種用于更有效地管理多個(gè)索引數(shù)據(jù)的數(shù)據(jù)處理系統(tǒng)。
背景技術(shù):
計(jì)算機(jī)環(huán)境范例已經(jīng)變成可以在任意時(shí)間和任意地點(diǎn)使用的普適計(jì)算系統(tǒng)。由此,諸如移動(dòng)電話、數(shù)碼相機(jī)和筆記本電腦等便攜式電子裝置的使用已經(jīng)快速增加。便攜式電子裝置通常采用如下的存儲(chǔ)器系統(tǒng):該存儲(chǔ)器系統(tǒng)具有作為主數(shù)據(jù)存儲(chǔ)器裝置或輔助數(shù)據(jù)存儲(chǔ)器裝置使用的一個(gè)或多個(gè)半導(dǎo)體存儲(chǔ)器裝置。
由于半導(dǎo)體存儲(chǔ)器裝置沒有活動(dòng)部件,因此半導(dǎo)體存儲(chǔ)器裝置通常提供優(yōu)異的穩(wěn)定性、耐久性、高信息訪問速度和低功耗。半導(dǎo)體存儲(chǔ)器裝置的公知示例包括通用串行總線(USB)存儲(chǔ)器裝置、具有各種接口的存儲(chǔ)卡和固態(tài)驅(qū)動(dòng)器(SSD)。
技術(shù)實(shí)現(xiàn)要素:
各種實(shí)施例涉及能夠有效地存儲(chǔ)以平衡樹(B-樹)結(jié)構(gòu)管理的多個(gè)索引數(shù)據(jù)的數(shù)據(jù)處理系統(tǒng)及其操作方法。
在實(shí)施例中,數(shù)據(jù)處理系統(tǒng)可以包括:主機(jī),其適于通過平衡樹結(jié)構(gòu)管理多個(gè)數(shù)據(jù),在平衡樹結(jié)構(gòu)中,每個(gè)節(jié)點(diǎn)被設(shè)定為預(yù)定容量,數(shù)據(jù)的每個(gè)包含關(guān)于數(shù)據(jù)所位于的節(jié)點(diǎn)的信息來(lái)作為節(jié)點(diǎn)信息;以及存儲(chǔ)器系統(tǒng),其具有每個(gè)與預(yù)定容量對(duì)應(yīng)的多個(gè)物理存儲(chǔ)區(qū)域,并且所述存儲(chǔ)器系統(tǒng)適于基于在主機(jī)應(yīng)用的數(shù)據(jù)中的每一個(gè)數(shù)據(jù)中包含的節(jié)點(diǎn)信息來(lái)收集在兩個(gè)不同的新節(jié)點(diǎn)中包含的數(shù)據(jù),并且將所收集的數(shù)據(jù)存儲(chǔ)在多個(gè)物理存儲(chǔ)區(qū)域中的一個(gè)物理存儲(chǔ)區(qū)域中。
在非新節(jié)點(diǎn)的休止(rest)節(jié)點(diǎn)的情況下,存儲(chǔ)器系統(tǒng)可以將包含在休止節(jié)點(diǎn)中的數(shù)據(jù)存儲(chǔ)在多個(gè)物理存儲(chǔ)區(qū)域中的一個(gè)物理存儲(chǔ)區(qū)域中。
存儲(chǔ)器系統(tǒng)可以將僅特定值彼此不同的兩個(gè)物理地址分配到多個(gè)物理存儲(chǔ)區(qū)域中的一個(gè)物理存儲(chǔ)區(qū)域,然后存儲(chǔ)器系統(tǒng)可以將僅特定值彼此不同的兩個(gè)物理地址分別映射到表示兩個(gè)新節(jié)點(diǎn)的兩個(gè)不同的邏輯地址。
節(jié)點(diǎn)信息可以包括:識(shí)別(ID)信息,所述識(shí)別信息用于識(shí)別對(duì)應(yīng)的數(shù)據(jù)所位于的節(jié)點(diǎn);以及指示信息,所述指示信息表示數(shù)據(jù)所位于的節(jié)點(diǎn)是否為新節(jié)點(diǎn)。
當(dāng)在多個(gè)數(shù)據(jù)之中,在根據(jù)指示信息被分類的新節(jié)點(diǎn)中包含的數(shù)據(jù)被分類到包括第一值的ID信息的第一節(jié)點(diǎn)的數(shù)據(jù)和包括第二值的ID信息的第二節(jié)點(diǎn)的數(shù)據(jù)時(shí),存儲(chǔ)器系統(tǒng)可以將僅特定值彼此不同的兩個(gè)物理地址分別映射到表示第一節(jié)點(diǎn)和第二節(jié)點(diǎn)的兩個(gè)不同的邏輯地址。
當(dāng)在多個(gè)數(shù)據(jù)之中,在根據(jù)指示信息被分類的休止節(jié)點(diǎn)中包含的數(shù)據(jù)被分類到包括第三值的ID信息的第三節(jié)點(diǎn)的數(shù)據(jù)時(shí),存儲(chǔ)器系統(tǒng)可以將一個(gè)物理地址分配到多個(gè)物理存儲(chǔ)區(qū)域中的一個(gè)物理存儲(chǔ)區(qū)域,并且可以將所分配的物理地址映射到表示第三節(jié)點(diǎn)的一個(gè)邏輯地址。
在實(shí)施例中,數(shù)據(jù)處理系統(tǒng)可以包括:主機(jī),所述主機(jī)適于通過平衡樹結(jié)構(gòu)管理多個(gè)數(shù)據(jù),在平衡樹結(jié)構(gòu)中,每個(gè)節(jié)點(diǎn)被設(shè)定為第一容量,數(shù)據(jù)的每個(gè)包含關(guān)于數(shù)據(jù)所位于的節(jié)點(diǎn)的信息來(lái)作為節(jié)點(diǎn)信息;以及存儲(chǔ)器系統(tǒng),所述存儲(chǔ)器系統(tǒng)具有每個(gè)與為第一容量的一半的第二容量對(duì)應(yīng)的多個(gè)物理存儲(chǔ)區(qū)域,且所述存儲(chǔ)器系統(tǒng)適于基于在主機(jī)應(yīng)用的數(shù)據(jù)中的每一個(gè)數(shù)據(jù)中包含的節(jié)點(diǎn)信息來(lái)將在一個(gè)新節(jié)點(diǎn)中包含的數(shù)據(jù)存儲(chǔ)在多個(gè)物理存儲(chǔ)區(qū)域中的一個(gè)物理存儲(chǔ)區(qū)域中,并且將在一個(gè)休止節(jié)點(diǎn)中包含的數(shù)據(jù)存儲(chǔ)在多個(gè)物理存儲(chǔ)區(qū)域之中的兩個(gè)物理存儲(chǔ)區(qū)域中,所述休止節(jié)點(diǎn)表示不是新節(jié)點(diǎn)的節(jié)點(diǎn)。
節(jié)點(diǎn)信息可以包括:識(shí)別(ID)信息,所述識(shí)別信息用于識(shí)別對(duì)應(yīng)的數(shù)據(jù)所位于的節(jié)點(diǎn);以及指示信息,所述指示信息表示數(shù)據(jù)所位于的節(jié)點(diǎn)是否為新節(jié)點(diǎn)。
當(dāng)在多個(gè)數(shù)據(jù)之中,在根據(jù)指示信息被分類的新節(jié)點(diǎn)中包含的數(shù)據(jù)被分類成包括第一值的ID信息的第一節(jié)點(diǎn)的數(shù)據(jù)和包括第二值的ID信息的第二節(jié)點(diǎn)的數(shù)據(jù)時(shí),存儲(chǔ)器系統(tǒng)可以將與兩個(gè)不同的物理存儲(chǔ)區(qū)域?qū)?yīng)的兩個(gè)不同的物理地址分別映射到表示第一節(jié)點(diǎn)和第二節(jié)點(diǎn)的兩個(gè)不同的邏輯地址。
當(dāng)在多個(gè)數(shù)據(jù)之中,在根據(jù)旗標(biāo)信息被分類的休止節(jié)點(diǎn)中包含的數(shù)據(jù)被分類到包括第三值的ID信息的第三節(jié)點(diǎn)的數(shù)據(jù)時(shí),存儲(chǔ)器系統(tǒng)可以將與兩個(gè)不同的物理區(qū)域?qū)?yīng)的兩個(gè)不同的物理地址中的任意一個(gè)物理地址映射到表示第三節(jié)點(diǎn)的上半部分的邏輯地址并且可以將另一物理地址映射到表示第三節(jié)點(diǎn)的下半部分的邏輯地址。
在實(shí)施例中,提供了數(shù)據(jù)處理系統(tǒng)的操作方法,所述數(shù)據(jù)處理系統(tǒng)可以包括:主機(jī),所述主機(jī)適于通過平衡樹結(jié)構(gòu)管理多個(gè)數(shù)據(jù),在平衡樹結(jié)構(gòu)中,每個(gè)節(jié)點(diǎn)被設(shè)定為預(yù)定容量,數(shù)據(jù)的每個(gè)包含關(guān)于數(shù)據(jù)所位于的節(jié)點(diǎn)的信息來(lái)作為節(jié)點(diǎn)信息;以及存儲(chǔ)器系統(tǒng),所述存儲(chǔ)器系統(tǒng)具有每個(gè)與預(yù)定容量對(duì)應(yīng)的多個(gè)物理存儲(chǔ)區(qū)域。存儲(chǔ)器系統(tǒng)的操作可以包括:分離步驟,基于主機(jī)應(yīng)用的數(shù)據(jù)的每個(gè)中包含的節(jié)點(diǎn)信息,將多個(gè)數(shù)據(jù)分離成包含在新節(jié)點(diǎn)中的數(shù)據(jù)和包含在表示非新節(jié)點(diǎn)的節(jié)點(diǎn)的休止節(jié)點(diǎn)中的數(shù)據(jù);以及第一存儲(chǔ)步驟,在所述分離步驟之后,收集在兩個(gè)不同的新節(jié)點(diǎn)中包含的數(shù)據(jù)并且將所收集的數(shù)據(jù)存儲(chǔ)在多個(gè)物理存儲(chǔ)區(qū)域中的一個(gè)物理存儲(chǔ)區(qū)域中。
所述操作方法還可以包括在所述分離步驟之后,將在休止節(jié)點(diǎn)中包含的數(shù)據(jù)存儲(chǔ)在多個(gè)物理存儲(chǔ)區(qū)域中的一個(gè)物理存儲(chǔ)區(qū)域中的第二存儲(chǔ)步驟。
第一存儲(chǔ)步驟可以包括:將僅特定值彼此不同的兩個(gè)物理地址分配到多個(gè)物理存儲(chǔ)區(qū)域中的一個(gè)物理存儲(chǔ)區(qū)域;以及將僅特定值彼此不同的兩個(gè)物理地址分別映射到表示兩個(gè)新節(jié)點(diǎn)的兩個(gè)不同的邏輯地址。
節(jié)點(diǎn)信息可以包括:識(shí)別(ID)信息,所述識(shí)別信息用于識(shí)別對(duì)應(yīng)的數(shù)據(jù)所位于的節(jié)點(diǎn);以及指示信息,所述指示信息表示數(shù)據(jù)所位于的節(jié)點(diǎn)是否為新節(jié)點(diǎn)。
當(dāng)在分離步驟中參照指示信息被分類的新節(jié)點(diǎn)中包含的數(shù)據(jù)被分類成包含第一值的ID信息的第一節(jié)點(diǎn)的數(shù)據(jù)和包含第二值的ID信息的第二節(jié)點(diǎn)的數(shù)據(jù)時(shí),兩個(gè)物理地址的映射可以包括將僅特定值彼此不同的兩個(gè)物理地址分別映射到表示第一節(jié)點(diǎn)和第二節(jié)點(diǎn)的兩個(gè)不同的邏輯地址。
當(dāng)在分離步驟中參照指示信息被分類的休止節(jié)點(diǎn)中包含的數(shù)據(jù)被分類成包含第三值的ID信息的第三節(jié)點(diǎn)的數(shù)據(jù)時(shí),第二存儲(chǔ)步驟可以包括將一個(gè)物理地址分配到物理存儲(chǔ)區(qū)域中的一個(gè)物理存儲(chǔ)區(qū)域,以及將所分配的物理地址映射到表示第三節(jié)點(diǎn)的一個(gè)邏輯地址。
在實(shí)施例中,提供了一種數(shù)據(jù)處理系統(tǒng)的操作方法,所述數(shù)據(jù)處理系統(tǒng)可以包括:主機(jī),所述主機(jī)適于通過平衡樹結(jié)構(gòu)管理多個(gè)數(shù)據(jù),在所述平衡樹結(jié)構(gòu)中,每個(gè)節(jié)點(diǎn)被設(shè)定為第一容量,數(shù)據(jù)的每個(gè)包含關(guān)于數(shù)據(jù)所位于的節(jié)點(diǎn)的信息來(lái)作為節(jié)點(diǎn)信息;以及存儲(chǔ)器系統(tǒng),所述存儲(chǔ)器系統(tǒng)具有每個(gè)與為第一容量的一半的第二容量對(duì)應(yīng)的多個(gè)物理存儲(chǔ)區(qū)域。存儲(chǔ)器系統(tǒng)的操作可以包括:分離步驟,基于主機(jī)應(yīng)用的數(shù)據(jù)的每個(gè)中包含的節(jié)點(diǎn)信息,將多個(gè)數(shù)據(jù)分離成包含在新節(jié)點(diǎn)中的數(shù)據(jù)和包含在表示非新節(jié)點(diǎn)的節(jié)點(diǎn)的休止節(jié)點(diǎn)中的數(shù)據(jù);第一存儲(chǔ)步驟,在分離步驟之后,將在一個(gè)新節(jié)點(diǎn)中包含的數(shù)據(jù)存儲(chǔ)在多個(gè)物理存儲(chǔ)區(qū)域中的一個(gè)物理存儲(chǔ)區(qū)域中;以及第二存儲(chǔ)步驟,在分離步驟之后,將在一個(gè)休止節(jié)點(diǎn)中包含的數(shù)據(jù)存儲(chǔ)在多個(gè)物理存儲(chǔ)區(qū)域之中的兩個(gè)物理存儲(chǔ)區(qū)域中。
節(jié)點(diǎn)信息可以包括:識(shí)別(ID)信息,所述識(shí)別信息用于識(shí)別對(duì)應(yīng)的數(shù)據(jù)所位于的節(jié)點(diǎn);以及指示信息,所述指示信息表示數(shù)據(jù)所位于的節(jié)點(diǎn)是否為新節(jié)點(diǎn)。
當(dāng)在分離步驟中參照指示信息被分類的新節(jié)點(diǎn)中包含的數(shù)據(jù)被分類成包含第一值的ID信息的第一節(jié)點(diǎn)的數(shù)據(jù)和包含第二值的ID信息的第二節(jié)點(diǎn)的數(shù)據(jù)時(shí),第一存儲(chǔ)步驟可以包括將與兩個(gè)物理存儲(chǔ)區(qū)域?qū)?yīng)的兩個(gè)不同的物理地址分別映射到表示第一節(jié)點(diǎn)和第二節(jié)點(diǎn)的兩個(gè)不同的邏輯地址。
當(dāng)在分離步驟中參照旗標(biāo)信息被分類的休止節(jié)點(diǎn)中包含的數(shù)據(jù)被分類到包含第三值的ID信息的第三節(jié)點(diǎn)的數(shù)據(jù)時(shí),第二存儲(chǔ)步驟可以包括將與兩個(gè)不同的物理區(qū)域?qū)?yīng)的兩個(gè)不同的物理地址中的任意一個(gè)物理地址映射到表示第三節(jié)點(diǎn)的上半部分的邏輯地址,以及將另一物理地址映射到表示第三節(jié)點(diǎn)的下半部分的邏輯地址。
附圖說(shuō)明
圖1是示出了根據(jù)本發(fā)明的實(shí)施例的包括存儲(chǔ)器系統(tǒng)的數(shù)據(jù)處理系統(tǒng)的圖。
圖2是示出了在圖1中示出的存儲(chǔ)器系統(tǒng)中采用的存儲(chǔ)器裝置的示例的圖。
圖3是示出了根據(jù)本發(fā)明的實(shí)施例的可以在存儲(chǔ)器裝置中采用的存儲(chǔ)塊的示例的電路圖。
圖4至圖11是示出了根據(jù)本發(fā)明的各種實(shí)施例的可以在存儲(chǔ)器裝置中采用的存儲(chǔ)器裝置的示例的圖。
圖12A至圖12F示出了根據(jù)本發(fā)明的實(shí)施例的平衡樹(B-樹)結(jié)構(gòu)的示例。
圖13是示出了根據(jù)本發(fā)明的實(shí)施例的由數(shù)據(jù)處理系統(tǒng)中的主機(jī)以平衡樹(B-樹)結(jié)構(gòu)管理的多個(gè)索引數(shù)據(jù)的圖。
圖14是根據(jù)本發(fā)明的第一實(shí)施例的數(shù)據(jù)處理系統(tǒng)的圖。
圖15是示出了根據(jù)本發(fā)明的第一實(shí)施例的在數(shù)據(jù)處理系統(tǒng)中索引數(shù)據(jù)的邏輯地址和物理地址之間的映射的示例的圖。
圖16是示出了根據(jù)本發(fā)明的第一實(shí)施例的數(shù)據(jù)處理系統(tǒng)的操作的流程圖。
圖17是根據(jù)本發(fā)明的第二實(shí)施例的數(shù)據(jù)處理系統(tǒng)的圖。
圖18是示出了根據(jù)本發(fā)明的第二實(shí)施例的在數(shù)據(jù)處理系統(tǒng)中索引數(shù)據(jù)的邏輯地址和物理地址之間的映射的示例的圖。
圖19是示出了根據(jù)本發(fā)明的第二實(shí)施例的數(shù)據(jù)處理系統(tǒng)的操作的流程圖。
圖20是示出了根據(jù)本發(fā)明的實(shí)施例的數(shù)據(jù)處理系統(tǒng)的效果的圖。
具體實(shí)施方式
以下將參照附圖更詳細(xì)地說(shuō)明各種實(shí)施例。然而,可以以不同的方式實(shí)現(xiàn)本發(fā)明,并且本發(fā)明應(yīng)當(dāng)認(rèn)為不限于此處闡述的實(shí)施例。而是,提供這些實(shí)施例使得本公開將是全面和完整的,并且這些實(shí)施例將完全把本發(fā)明傳達(dá)給本領(lǐng)域技術(shù)人員。遍及本公開,在本發(fā)明的各種附圖和實(shí)施例中,相似的參考標(biāo)號(hào)指代相似的部件。
應(yīng)理解,盡管可能在此處使用術(shù)語(yǔ)“第一”、“第二”、“第三”等來(lái)說(shuō)明各個(gè)元件,但是這些元件不受這些術(shù)語(yǔ)的限制。使用這些術(shù)語(yǔ)來(lái)區(qū)分一個(gè)元件和另一元件。因而,在不背離本公開的精神和范圍的情況下,還可以將以下說(shuō)明的第一元件稱為第二元件或第三元件。
還應(yīng)理解,當(dāng)一個(gè)元件被稱為“連接到”或“聯(lián)接到”另一元件時(shí),其可以直接在另一元件上、直接連接到或聯(lián)接到另一元件,或者可以存在一個(gè)或多個(gè)中間元件。另外,還應(yīng)理解,當(dāng)元件被稱為在兩個(gè)元件“之間”時(shí),其可以是這兩個(gè)元件之間的僅有元件,或者在這兩個(gè)元件之間還可以存在一個(gè)或多個(gè)中間元件。
此處使用的術(shù)語(yǔ)僅用于說(shuō)明具體的實(shí)施例的目的而無(wú)意于限制本公開。如此處使用地,除非上下文明確指出,否則單數(shù)形式“一”和“一個(gè)”也意于包括復(fù)數(shù)形式。還應(yīng)理解,在本說(shuō)明書中使用的術(shù)語(yǔ)“包括”、“包括有”、“包含”和“包含有”具體表示所說(shuō)明的元件的存在而不排除存在或增加一個(gè)或多個(gè)其它元件。如此處使用地,術(shù)語(yǔ)“和/或”包含相關(guān)列出的項(xiàng)目中的一個(gè)或多個(gè)項(xiàng)目的任意和所有組合。
除非另有定義,否則此處使用的包含技術(shù)術(shù)語(yǔ)和科學(xué)術(shù)語(yǔ)的所有術(shù)語(yǔ)具有與本發(fā)明構(gòu)思所屬領(lǐng)域技術(shù)人員通常理解的含義相同的含義。還應(yīng)理解,諸如在通常使用的字典中定義的那些術(shù)語(yǔ)應(yīng)該被解釋成具有與它們?cè)谙嚓P(guān)領(lǐng)域的上下文中的含義一致的含義,并且除非在此處明確定義,否則不以理想化或過于正式的意義來(lái)解釋上述術(shù)語(yǔ)。
在以下的說(shuō)明中,闡述了很多具體的細(xì)節(jié),以便提供對(duì)本公開的透徹理解??梢栽诓痪哂羞@些具體細(xì)節(jié)的一部分或者全部的情況下實(shí)現(xiàn)本公開。在其它的示例中,沒有詳細(xì)地說(shuō)明公知的進(jìn)程結(jié)構(gòu)和/或進(jìn)程,以便不會(huì)不必要地模糊本公開。
在下文中,將參照附圖詳細(xì)地說(shuō)明本公開的多個(gè)實(shí)施例。
現(xiàn)在參照?qǐng)D1,根據(jù)本發(fā)明的實(shí)施例,提供數(shù)據(jù)處理系統(tǒng)100。數(shù)據(jù)處理系統(tǒng)100可以包括主機(jī)102和存儲(chǔ)器系統(tǒng)110。
主機(jī)102可以包括任何合適的電子裝置。例如,主機(jī)102可以包括諸如移動(dòng)電話、MP3播放器和膝上型計(jì)算機(jī)等的便攜式電子裝置。主機(jī)可以包括諸如臺(tái)式計(jì)算機(jī)、游戲機(jī)、TV、投影儀等的非便攜式電子裝置。
存儲(chǔ)器系統(tǒng)110可以響應(yīng)于來(lái)自主機(jī)102的請(qǐng)求存儲(chǔ)將被主機(jī)102訪問的數(shù)據(jù)。存儲(chǔ)器系統(tǒng)110可以作為主機(jī)102的主存儲(chǔ)器系統(tǒng)或輔助存儲(chǔ)器系統(tǒng)使用。根據(jù)主機(jī)接口的協(xié)議,存儲(chǔ)器系統(tǒng)110可以被實(shí)現(xiàn)為與主機(jī)102電聯(lián)接??梢允褂靡粋€(gè)或多個(gè)半導(dǎo)體存儲(chǔ)器裝置??梢允褂靡资源鎯?chǔ)器裝置或非易失性存儲(chǔ)器裝置。例如,可以利用固態(tài)驅(qū)動(dòng)器(SSD)、多媒體卡(MMC)、嵌入式MMC(eMMC)、縮小尺寸的MMC(RS-MMC)和微型MMC、安全數(shù)字(SD)卡、迷你SD和微型SD、通用串行總線(USB)存儲(chǔ)器裝置、通用閃速存儲(chǔ)(UFS)裝置、標(biāo)準(zhǔn)閃存(CF)卡、智能媒體(SM)卡和存儲(chǔ)棒等來(lái)實(shí)現(xiàn)存儲(chǔ)器系統(tǒng)110。
可以利用諸如動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(DRAM)、靜態(tài)隨機(jī)存取存儲(chǔ)器(SRAM)等易失性存儲(chǔ)器裝置來(lái)實(shí)現(xiàn)用于存儲(chǔ)器系統(tǒng)110的存儲(chǔ)裝置??蛇x地,用于存儲(chǔ)器系統(tǒng)110的存儲(chǔ)裝置可以實(shí)現(xiàn)為諸如只讀存儲(chǔ)器(ROM)、掩膜ROM(MROM)、可編程ROM(PROM)、可擦除可編程ROM(EPROM)、電可擦除可編程ROM(EEPROM)、鐵電隨機(jī)存取存儲(chǔ)器(FRAM)、相變RAM(PRAM)、磁阻RAM(MRAM)和電阻式RAM(RRAM)等的非易失性存儲(chǔ)器裝置。
存儲(chǔ)器系統(tǒng)110可以包括用于存儲(chǔ)數(shù)據(jù)的存儲(chǔ)器裝置150和用于控制數(shù)據(jù)在存儲(chǔ)器裝置150中的存儲(chǔ)的控制器130??梢酝ㄟ^主機(jī)102存取在存儲(chǔ)器裝置150中存儲(chǔ)的數(shù)據(jù)。
控制器130和存儲(chǔ)器裝置150可以集成在單個(gè)半導(dǎo)體裝置中。例如,控制器130和存儲(chǔ)器裝置150可以集成在被配置為固態(tài)驅(qū)動(dòng)器(SSD)的半導(dǎo)體裝置中。將存儲(chǔ)器系統(tǒng)110配置為SSD通??梢允沟弥鳈C(jī)102的操作速度顯著提升。
控制器130和存儲(chǔ)器裝置150可以被集成到配置為諸如以下的存儲(chǔ)卡的半導(dǎo)體裝置中:個(gè)人計(jì)算機(jī)存儲(chǔ)卡國(guó)際協(xié)會(huì)(PCMCIA)卡、標(biāo)準(zhǔn)閃存(CF)卡、智能媒體(SM)卡(SMC)、存儲(chǔ)棒、多媒體卡(MMC)、RS-MMC和微型-MMC、安全數(shù)字(SD)卡、迷你-SD、微型-SD和SDHC、通用閃速存儲(chǔ)(UFS)裝置等。
此外,例如,存儲(chǔ)器系統(tǒng)110可以是或包括計(jì)算機(jī)、超移動(dòng)PC(UMPC)、工作站、上網(wǎng)本、個(gè)人數(shù)字助理(PDA)、便攜式計(jì)算機(jī)、網(wǎng)絡(luò)書寫板、平板電腦、無(wú)線電話、移動(dòng)電話、智能電話、電子書、便攜式多媒體播放器(PMP)、便攜式游戲機(jī)、導(dǎo)航裝置、黑匣子、數(shù)字?jǐn)z像機(jī)、數(shù)字多媒體廣播(DMB)播放器、三維(3D)電視、智能電視、數(shù)字音頻記錄器、數(shù)字音頻播放器、數(shù)字圖片記錄器、數(shù)字圖片播放器、數(shù)字視頻記錄器、數(shù)字視頻播放器、配置數(shù)據(jù)中心的存儲(chǔ)器、能夠在無(wú)線環(huán)境下傳輸和接收信息的裝置、配置家庭網(wǎng)絡(luò)的各種電子裝置中的一種、配置計(jì)算機(jī)網(wǎng)絡(luò)的各種電子裝置中的一種、配置遠(yuǎn)程信息處理網(wǎng)絡(luò)的各種電子裝置中的一種、RFID裝置、配置計(jì)算系統(tǒng)的各種組成元件中的一種等。
存儲(chǔ)器裝置150可以存儲(chǔ)從主機(jī)102提供的數(shù)據(jù)。在讀取操作期間,存儲(chǔ)器裝置150可以將所存儲(chǔ)的數(shù)據(jù)提供到主機(jī)102??梢圆捎靡粋€(gè)或多個(gè)存儲(chǔ)器裝置150。一個(gè)或多個(gè)存儲(chǔ)器裝置150可以基本上相同。一個(gè)或多個(gè)存儲(chǔ)器裝置可以是不同的存儲(chǔ)器裝置。存儲(chǔ)器裝置150可以包括一個(gè)或多個(gè)存儲(chǔ)塊152、154和156。存儲(chǔ)塊152、154和156中的每個(gè)存儲(chǔ)塊可以包括多個(gè)頁(yè)面。頁(yè)面的每個(gè)可以包括電聯(lián)接到多個(gè)字線(WL)的多個(gè)存儲(chǔ)器單元。存儲(chǔ)器裝置150可以是即使當(dāng)電源中斷或關(guān)閉時(shí)能夠保留所存儲(chǔ)的數(shù)據(jù)的非易失性存儲(chǔ)器裝置。根據(jù)實(shí)施例,存儲(chǔ)器裝置可以是閃速存儲(chǔ)器。存儲(chǔ)器裝置可以是具有三維(3D)堆疊結(jié)構(gòu)的閃速存儲(chǔ)器裝置。稍后參照?qǐng)D2至圖11描述具有三維(3D)堆疊結(jié)構(gòu)的非易失性存儲(chǔ)器裝置150的示例。
控制器130可以控制存儲(chǔ)器裝置150的諸如讀取、寫入、編程和/或擦除操作的全部操作。通常,控制器130可以響應(yīng)于來(lái)自主機(jī)102的請(qǐng)求來(lái)控制存儲(chǔ)器裝置150。例如,控制器130可以響應(yīng)于來(lái)自主機(jī)102的讀取請(qǐng)求而將從存儲(chǔ)器裝置150讀取的數(shù)據(jù)提供到主機(jī)102?;蛘?,也作為示例,控制器可以響應(yīng)于寫入請(qǐng)求而將從主機(jī)102提供的數(shù)據(jù)存儲(chǔ)到存儲(chǔ)器裝置150中。
可以使用任意適合的控制器。例如,控制器130可以包括主機(jī)接口單元132、處理器134、錯(cuò)誤校正碼(ECC)單元138、電源管理單元(PMU)140、NAND閃存控制器(NFC)142和存儲(chǔ)器144。
主機(jī)接口單元132可以處理從主機(jī)102提供的指令和/或數(shù)據(jù)。主機(jī)接口單元132可以通過諸如通用串行總線(USB)、多媒體卡(MMC)、高速外圍組件互連(PCI-E)、串列SCSI(SAS)、串行高級(jí)技術(shù)附件(SATA)、并行高級(jí)技術(shù)附件(PATA)、小型計(jì)算機(jī)系統(tǒng)接口(SCSI)、增強(qiáng)型小型磁盤接口(ESDI)、電子集成驅(qū)動(dòng)器(IDE)等的各種接口協(xié)議中的至少一種與主機(jī)102通信。主機(jī)接口單元132可以包括適于與主機(jī)102以及當(dāng)可能需要時(shí)的控制器130的其它組件通信的任意合適的電路、系統(tǒng)或裝置。
ECC單元138可以檢測(cè)和校正在讀取操作期間從存儲(chǔ)器裝置150讀取的數(shù)據(jù)的錯(cuò)誤??梢圆捎酶鞣N檢測(cè)和校正技術(shù)。例如,如果通過ECC單元138檢測(cè)的錯(cuò)誤位的數(shù)量大于或等于可校正的錯(cuò)誤位的閾值數(shù)量,則ECC單元138可不校正錯(cuò)誤位并輸出指示校正錯(cuò)誤位失敗的錯(cuò)誤校正失敗信號(hào)。
ECC單元138可以基于任意合適的錯(cuò)誤校正方案來(lái)執(zhí)行錯(cuò)誤校正操作。例如,ECC單元138可以基于諸如例如低密度奇偶校驗(yàn)(LDPC)碼、博斯-查德胡里-霍昆格姆(Bose-Chaudhuri-Hocquenghem,BCH)碼、turbo碼、里德-所羅門(Reed-Solomon,RS)碼、卷積碼、遞歸系統(tǒng)碼(RSC)、網(wǎng)絡(luò)編碼調(diào)制(TCM)、分組編碼調(diào)制(BCM)等的編碼調(diào)制方案來(lái)執(zhí)行錯(cuò)誤校正操作。ECC單元138可以包括錯(cuò)誤檢測(cè)和校正操作所需要的任意合適的電路、系統(tǒng)或裝置。
PMU 140可以為控制器130提供和管理電力。例如,如可能需要的,PMU 140可以為控制器130的各個(gè)組件提供和管理電力。
NFC 142可以作為控制器130和存儲(chǔ)器裝置150之間的存儲(chǔ)器接口以使得控制器130響應(yīng)于來(lái)自主機(jī)102的請(qǐng)求而控制存儲(chǔ)器裝置150。例如,NFC 142可以產(chǎn)生用于存儲(chǔ)器裝置150的控制信號(hào)。例如,當(dāng)存儲(chǔ)器裝置150是閃速存儲(chǔ)器,尤其是NAND閃速存儲(chǔ)器時(shí),NFC可以在處理器134的控制下處理數(shù)據(jù)。
存儲(chǔ)器144可以作為存儲(chǔ)器系統(tǒng)110和控制器130的工作存儲(chǔ)器,并且存儲(chǔ)用于驅(qū)動(dòng)存儲(chǔ)器系統(tǒng)110和控制器130的數(shù)據(jù)。例如,當(dāng)控制器130控制存儲(chǔ)器裝置150的操作時(shí),存儲(chǔ)器144可以存儲(chǔ)控制器130和存儲(chǔ)器裝置150用于諸如讀取、寫入、編程和擦除操作的操作的數(shù)據(jù)。
存儲(chǔ)器144可以是或包括易失性存儲(chǔ)器。例如,存儲(chǔ)器144可以是或包括靜態(tài)隨機(jī)存取存儲(chǔ)器(SRAM)或動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(DRAM)。如上所述,存儲(chǔ)器144可以存儲(chǔ)主機(jī)102和存儲(chǔ)器裝置150用于讀取和/或?qū)懭氩僮鞯臄?shù)據(jù)。存儲(chǔ)器144可以是或包括程序存儲(chǔ)器、數(shù)據(jù)存儲(chǔ)器、寫入緩沖器、讀取緩沖器、映射緩沖器等。
處理器134可以控制存儲(chǔ)器系統(tǒng)110的一般操作。例如,處理器134可以響應(yīng)于來(lái)自主機(jī)102的寫入請(qǐng)求而控制存儲(chǔ)器裝置150的寫入操作。此外,例如,處理器134可以響應(yīng)于來(lái)自主機(jī)102的讀取請(qǐng)求而控制存儲(chǔ)器裝置150的讀取操作。處理器134可以驅(qū)動(dòng)也被稱為閃存轉(zhuǎn)換層(FTL)的固件,以用于控制存儲(chǔ)器系統(tǒng)110的一般操作??梢岳梦⑻幚砥?、中央處理單元(CPU)等來(lái)實(shí)現(xiàn)處理器134。可以使用任意合適的處理器。
例如,在處理器134中可以包括管理單元(未示出)以用于執(zhí)行存儲(chǔ)器裝置150的壞塊管理。因此,管理單元可以找到在存儲(chǔ)器裝置150中包含的壞存儲(chǔ)塊,即對(duì)于進(jìn)一步使用處于不滿意狀態(tài)的存儲(chǔ)塊,并且對(duì)壞存儲(chǔ)塊執(zhí)行壞塊管理操作。例如,當(dāng)采用諸如NAND閃速存儲(chǔ)器的閃速存儲(chǔ)器作為存儲(chǔ)器裝置150時(shí),由于NAND邏輯功能的固有特性使得在寫入操作期間可能發(fā)生編程失敗。在壞塊管理期間,編程失敗的存儲(chǔ)塊(例如,壞存儲(chǔ)塊)的數(shù)據(jù)可被編程到新的存儲(chǔ)塊中。由于編程失敗導(dǎo)致的壞塊可使存儲(chǔ)器裝置尤其是具有3D堆疊結(jié)構(gòu)的存儲(chǔ)器裝置的利用效率嚴(yán)重劣化,因而消極影響存儲(chǔ)器系統(tǒng)110的可靠性。
參照?qǐng)D2,存儲(chǔ)器裝置150可以包括多個(gè)存儲(chǔ)塊,例如第零塊至第(N-1)塊210至240,其中N是正整數(shù)。多個(gè)存儲(chǔ)塊210至240中的每個(gè)可以包括多個(gè)頁(yè)面,例如2M個(gè)頁(yè)面(2M頁(yè)面),其中M為正整數(shù)。多個(gè)頁(yè)面中的每個(gè)均可以包含被電聯(lián)接到多個(gè)字線的多個(gè)存儲(chǔ)器單元。應(yīng)注意,可以采用任意數(shù)量的合適的塊且每塊中可以采用任意數(shù)量的頁(yè)面。
存儲(chǔ)塊根據(jù)每個(gè)存儲(chǔ)器單元中可存儲(chǔ)的位的數(shù)量可以是單層單元(SLC)存儲(chǔ)塊和/或多層單元(MLC)存儲(chǔ)塊。SLC存儲(chǔ)塊可以包含利用每個(gè)能夠存儲(chǔ)1位數(shù)據(jù)的存儲(chǔ)器單元實(shí)現(xiàn)的多個(gè)頁(yè)面。MLC存儲(chǔ)塊可以包含利用每個(gè)能夠存儲(chǔ)多位數(shù)據(jù)例如2位或更多位數(shù)據(jù)的存儲(chǔ)器單元實(shí)現(xiàn)的多個(gè)頁(yè)面。包括利用每個(gè)能夠存儲(chǔ)3位數(shù)據(jù)的存儲(chǔ)器單元實(shí)現(xiàn)的多個(gè)頁(yè)面的MLC存儲(chǔ)塊可被采用且將被稱為三層單元(TLC)存儲(chǔ)塊。
多個(gè)存儲(chǔ)塊210至240中的每個(gè)可以在寫入操作期間存儲(chǔ)從主機(jī)裝置102提供的數(shù)據(jù),并且可以在讀取操作期間將所存儲(chǔ)的數(shù)據(jù)提供到主機(jī)102。
參照?qǐng)D3,存儲(chǔ)器裝置150的存儲(chǔ)塊152可以包括分別電聯(lián)接到位線BL0至BLm-1的多個(gè)單元串340。各單元串340可以包括至少一個(gè)漏極選擇晶體管DST和至少一個(gè)源極選擇晶體管SST。多個(gè)存儲(chǔ)器單元或多個(gè)存儲(chǔ)器單元晶體管MC0至MCn-1可以串聯(lián)地電聯(lián)接在選擇晶體管DST和SST之間。各個(gè)存儲(chǔ)器單元MC0至MCn-1可以由每個(gè)存儲(chǔ)多位數(shù)據(jù)信息的多層單元(MLC)組成。存儲(chǔ)器單元可以具有任意合適的結(jié)構(gòu)。
在圖3中,“DSL”表示漏極選擇線,“SSL”表示源極選擇線,“CSL”表示共源線。
作為示例,圖3示出了由NAND閃速存儲(chǔ)器單元配置的存儲(chǔ)塊152。然而,應(yīng)注意,存儲(chǔ)塊152不限于NAND閃速存儲(chǔ)器并且在其它的實(shí)施例中可以由NOR閃速存儲(chǔ)器、組合有至少兩種存儲(chǔ)器單元的混合型閃速存儲(chǔ)器或者具有內(nèi)置在存儲(chǔ)器芯片中的控制器的NAND閃速存儲(chǔ)器實(shí)現(xiàn)。此外,半導(dǎo)體裝置的操作特性不僅可以適用于其中電荷存儲(chǔ)層由導(dǎo)電浮柵配置的閃速存儲(chǔ)器裝置,而且適用于其中電荷存儲(chǔ)層由介電層配置的電荷捕獲閃存(CTF)。
還應(yīng)注意,存儲(chǔ)器裝置150不限于僅是閃速存儲(chǔ)器裝置。例如,存儲(chǔ)器裝置150可以是DRAM或SRAM裝置。
存儲(chǔ)器裝置150的電壓發(fā)生器310可以根據(jù)操作模式產(chǎn)生待供給到各個(gè)字線的字線電壓,例如編程電壓、讀取電壓或通過電壓。電壓發(fā)生器310可以生成待供給到體材料(bulk)例如存儲(chǔ)器單元形成在其中的阱區(qū)的電壓。電壓發(fā)生器310可以在控制電路(未示出)的控制下執(zhí)行電壓生成操作。電壓發(fā)生器310可以生成多個(gè)可變讀取電壓以生成多個(gè)讀取數(shù)據(jù)。電壓發(fā)生器310可以在控制電路的控制下選擇存儲(chǔ)塊或存儲(chǔ)器單元陣列的扇區(qū)中的一個(gè),選擇所選擇的存儲(chǔ)塊的字線中的一個(gè),并且將字線電壓提供到所選擇的字線和未選擇的字線。
存儲(chǔ)器裝置150的讀取/寫入電路320可以通過控制電路控制,并且可以根據(jù)操作模式而作為讀出放大器或?qū)懭腧?qū)動(dòng)器。在驗(yàn)證/正常讀取操作期間,讀取/寫入電路320可以作為用于從存儲(chǔ)器單元陣列讀取數(shù)據(jù)的讀出放大器。此外,在編程操作期間,讀取/寫入電路320可以作為用于根據(jù)待被存儲(chǔ)在存儲(chǔ)器單元列陣中的數(shù)據(jù)驅(qū)動(dòng)位線的寫入驅(qū)動(dòng)器。讀取/寫入電路320在編程操作期間可以從緩沖器(未示出)接收待被寫入存儲(chǔ)器單元陣列中的數(shù)據(jù),并且可以根據(jù)所輸入的數(shù)據(jù)驅(qū)動(dòng)位線。為此,讀取/寫入電路320可以包括分別與列(或位線)或者列對(duì)(或位線對(duì))對(duì)應(yīng)的多個(gè)頁(yè)面緩沖器322、324和326。頁(yè)面緩沖器322、324和326中的每個(gè)可以包括多個(gè)鎖存器(未示出)。
圖4是示出了根據(jù)本發(fā)明的實(shí)施例的存儲(chǔ)器裝置150的多個(gè)存儲(chǔ)塊152至156的示例的框圖。
如圖4所示,存儲(chǔ)器裝置150可以包括多個(gè)存儲(chǔ)塊BLK0至BLKN-1。存儲(chǔ)塊BLK0至BLKN-1中的每個(gè)可以3D結(jié)構(gòu)或豎直結(jié)構(gòu)實(shí)現(xiàn)。各個(gè)存儲(chǔ)塊BLK0至BLKN-1可以包括在第一方向至第三方向例如x軸方向、y軸方向和z軸方向上延伸的多種結(jié)構(gòu)。
各個(gè)存儲(chǔ)塊BLK0至BLKN-1可以包括在第二方向上延伸的多個(gè)NAND串NS(圖8)。可以在第一方向和第三方向上設(shè)置多個(gè)NAND串NS。各NAND串NS可以電聯(lián)接到位線BL、至少一個(gè)源極選擇線SSL、至少一個(gè)接地選擇線GSL、多個(gè)字線WL、至少一個(gè)虛擬字線DWL和共源線CSL。各個(gè)存儲(chǔ)塊BLK0至BLKN-1可以電聯(lián)接到多個(gè)位線BL、多個(gè)源極選擇線SSL、多個(gè)接地選擇線GSL、多個(gè)字線WL、多個(gè)虛擬字線DWL和多個(gè)共源線CSL。
圖5是圖4中示出的多個(gè)存儲(chǔ)塊BLK0至BLKN-1中的一個(gè)存儲(chǔ)塊BLKi的立體圖。圖6是圖5中示出的存儲(chǔ)塊BLKi沿線I-I'截取的剖視圖。
參照?qǐng)D5和圖6,存儲(chǔ)塊BLKi可以包括在第一方向至第三方向上延伸的結(jié)構(gòu)。
存儲(chǔ)塊可以包括襯底5111,襯底5111包含摻雜有第一類型雜質(zhì)的硅材料。例如,襯底5111可以包括摻雜有p型雜質(zhì)的硅材料。襯底5111可以是p型阱,例如袋(pocket)p阱。襯底5111可以進(jìn)一步包括圍繞p型阱的n型阱。盡管在本發(fā)明的實(shí)施例中,襯底5111被例示為p型硅,但是應(yīng)注意,襯底5111不限于p型硅。
在襯底5111上方可以設(shè)置在第一方向上延伸的多個(gè)摻雜區(qū)域5311至5314。摻雜區(qū)域在第三方向上以規(guī)定間隔隔開。多個(gè)摻雜區(qū)域5311至5314可以包含與在襯底5111中使用的雜質(zhì)的類型不同的第二類型雜質(zhì)。例如,多個(gè)摻雜區(qū)域5311至5314可以摻雜有n型雜質(zhì)。盡管在本發(fā)明的實(shí)施例中第一摻雜區(qū)域至第四摻雜區(qū)域5311至5314被例示為n型,但是應(yīng)注意它們不限于n型。
在第一摻雜區(qū)域5311和第二摻雜區(qū)域5312之間的襯底5111上方的區(qū)域中,在第一方向上延伸的多個(gè)介電材料區(qū)域5112可以在第二方向上分隔開規(guī)定間隔。還可以使介電材料區(qū)域5112與襯底5111在第二方向上分開預(yù)設(shè)距離。各介電材料區(qū)域5112可以在第二方向上彼此分開預(yù)設(shè)距離。介電材料5112可以包含諸如氧化硅的任意合適的介電材料。
在兩個(gè)連續(xù)的摻雜區(qū)域之間例如在摻雜區(qū)域5311和5312之間的襯底5111上方,多個(gè)柱狀物5113在第一方向上分隔開規(guī)定間隔。多個(gè)柱狀物5113在第二方向上延伸并且可以穿過介電材料區(qū)域5112使得它們可以與襯底5111電聯(lián)接。每個(gè)柱狀物5113可以包含一種或多種材料。例如,每個(gè)柱狀物5113可以包括內(nèi)層5115和外表面層5114。表面層5114可以包含摻雜有雜質(zhì)的摻雜硅材料。例如,表面層5114可以包含摻雜有與襯底5111相同的雜質(zhì)或相同類型的雜質(zhì)的硅材料。盡管在本發(fā)明的實(shí)施例中表面層5114被例示為包含p型硅,但表面層5114不限于p型硅,并且本領(lǐng)域技術(shù)人員可以容易地想到其它實(shí)施例,其中襯底5111和柱狀物5113的表面層5114可以摻雜有n型雜質(zhì)。
每個(gè)柱狀物5113的內(nèi)層5115可以由介電材料形成。內(nèi)層5115可以是或包含諸如氧化硅的介電材料。
在第一摻雜區(qū)域5311和第二摻雜區(qū)域5312之間的區(qū)域中,可以沿著介電材料區(qū)域5112、柱狀物5113和襯底5111的暴露表面設(shè)置介電層5116。介電層5116的厚度可以小于介電材料區(qū)域5112之間的距離的一半。換句話說(shuō),不同于介電材料5112和介電層5116的材料的區(qū)域可以設(shè)置在(i)介電材料區(qū)域5112的第一介電材料的底面下方的介電層5116和(ii)設(shè)置在介電材料區(qū)域5112的第二介電材料的頂面上方的介電材料5116之間。介電材料區(qū)域5112可以位于第一介電材料下方。
在諸如第一摻雜區(qū)域5311和第二摻雜區(qū)域5312之間的區(qū)域的連續(xù)的摻雜區(qū)域之間的區(qū)域中,可以在介電層5116的暴露表面上方設(shè)置多個(gè)導(dǎo)電材料區(qū)域5211至5291。在第一方向上延伸的多個(gè)導(dǎo)電材料區(qū)域可以與多個(gè)介電材料區(qū)域5112交錯(cuò)配置且在第二方向上分隔開規(guī)定間隔。介電層5116填充導(dǎo)電材料區(qū)域和介電材料區(qū)域5112之間的空間。因此,例如在第一方向上延伸的導(dǎo)電材料區(qū)域5211可以設(shè)置在與襯底5111相鄰的介電材料區(qū)域5112和襯底5111之間。特別地,在第一方向上延伸的導(dǎo)電材料區(qū)域5211可以設(shè)置在(i)布置在襯底5111上方的介電層5116和(ii)布置在與襯底5111相鄰的介電材料區(qū)域5112的底面下方的介電層5116之間。
在第一方向上延伸的導(dǎo)電材料區(qū)域5211至5291中的每一個(gè)導(dǎo)電材料區(qū)域可以設(shè)置在(i)布置在介電材料區(qū)域5112中的一個(gè)介電材料區(qū)域的頂面上方的介電層5116和(ii)布置在下一個(gè)介電材料區(qū)域5112的底面下方的介電層5116之間。在第一方向上延伸的導(dǎo)電材料區(qū)域5221至5281可以設(shè)置在介電材料區(qū)域5112之間。在第一方向上延伸的頂部導(dǎo)電材料區(qū)域5291可以設(shè)置在最上的介電材料5112上方。在第一方向上延伸的導(dǎo)電材料區(qū)域5211至5291可以由金屬材料制成或者包含金屬材料。在第一方向上延伸的導(dǎo)電材料區(qū)域5211至5291可以由諸如多晶硅的導(dǎo)電材料制成或者包含諸如多晶硅的導(dǎo)電材料。
在第二摻雜區(qū)域5312和第三摻雜區(qū)域5313之間的區(qū)域中,可以設(shè)置與在第一摻雜區(qū)域5311和第二摻雜區(qū)域5312之間的結(jié)構(gòu)相同的結(jié)構(gòu)。例如,在第二摻雜區(qū)域5312和第三摻雜區(qū)域5313之間的區(qū)域中,可以設(shè)置在第一方向上延伸的多個(gè)介電材料區(qū)域5112、在第一方向上順次設(shè)置且在第二方向上穿過多個(gè)介電材料區(qū)域5112的多個(gè)柱狀物5113、設(shè)置在多個(gè)介電材料區(qū)域5112和多個(gè)柱狀物5113的暴露表面上的介電層5116以及在第一方向上延伸的多個(gè)導(dǎo)電材料區(qū)域5212至5292。
在第三摻雜區(qū)域5313和第四摻雜區(qū)域5314之間的區(qū)域中,可以設(shè)置與在第一摻雜區(qū)域5311和第二摻雜區(qū)域5312之間的結(jié)構(gòu)相同的結(jié)構(gòu)。例如,在第三摻雜區(qū)域5313和第四摻雜區(qū)域5314之間的區(qū)域中,可以設(shè)置在第一方向上延伸的多個(gè)介電材料區(qū)域5112、在第一方向上順次設(shè)置且在第二方向上穿過多個(gè)介電材料區(qū)域5112的多個(gè)柱狀物5113、設(shè)置在多個(gè)介電材料區(qū)域5112和多個(gè)柱狀物5113的暴露表面上的介電層5116以及在第一方向上延伸的多個(gè)導(dǎo)電材料區(qū)域5213至5293。
可以在多個(gè)柱狀物5113上方分別設(shè)置漏極5320。漏極5320可以由摻雜有第二類型雜質(zhì)的硅材料制成。漏極5320可以由摻雜有n型雜質(zhì)的硅材料制成。盡管為了便于說(shuō)明,漏極5320被例示為包含n型硅,但是應(yīng)注意,漏極5320不限于n型硅。例如,每個(gè)漏極5320的寬度可以大于每個(gè)對(duì)應(yīng)的柱狀物5113的寬度。每個(gè)漏極5320可以焊盤形狀被設(shè)置在各對(duì)應(yīng)的柱狀物5113的頂面上方。
可以在漏極5320上方設(shè)置在第三方向上延伸的導(dǎo)電材料區(qū)域5331至5333。導(dǎo)電材料區(qū)域5331至5333中的每一個(gè)導(dǎo)電材料區(qū)域可以在第一方向上彼此具有預(yù)設(shè)的分離距離且延伸地布置在連續(xù)地設(shè)置在第三方向上的漏極5320上方。各個(gè)導(dǎo)電材料區(qū)域5331至5333可以與其下方的漏極5320電聯(lián)接。漏極5320和在第三方向上延伸的導(dǎo)電材料區(qū)域5331至5333可以通過接觸插塞電聯(lián)接。在第三方向上延伸的導(dǎo)電材料區(qū)域5331至5333可以由金屬材料制成。在第三方向上延伸的導(dǎo)電材料區(qū)域5331至5333可以由諸如多晶硅的導(dǎo)電材料制成。
在圖5和圖6中,各個(gè)柱狀物5113可以與介電層5116和在第一方向上延伸的導(dǎo)電材料區(qū)域5211至5291、5212至5292和5213至5293一起形成串。各個(gè)柱狀物5113可以與介電層5116和在第一方向上延伸的導(dǎo)電材料區(qū)域5211至5291、5212至5292和5213至5293一起形成NAND串NS。每個(gè)NAND串NS可以包括多個(gè)晶體管結(jié)構(gòu)TS。
現(xiàn)在參照?qǐng)D7,在圖6中示出的晶體管結(jié)構(gòu)TS中,介電層5116可以包括第一子介電層至第三子介電層5117、5118和5119。
柱狀物5113中的每一個(gè)柱狀物中的p型硅的表面層5114可以作為主體。與柱狀物5113相鄰的第一子介電層5117可以作為隧穿介電層或者可以包括熱氧化層。
第二子介電層5118可以作為電荷存儲(chǔ)層。第二子介電層5118可以作為電荷捕獲層并且可以包括氮化物層或者諸如氧化鋁層、氧化鉿層等的金屬氧化物層。
與導(dǎo)電材料5233相鄰的第三子介電層5119可以作為阻擋介電層。與在第一方向上延伸的導(dǎo)電材料5233相鄰的第三子介電層5119可以形成為單層或多層。第三子介電層5119可以為諸如氧化鋁層、氧化鉿層等的高-k介電層,該介電層的介電常數(shù)大于第一子介電層5117和第二子介電層5118的介電常數(shù)。
導(dǎo)電材料5233可以用作柵或控制柵。例如,柵或控制柵5233、阻擋介電層5119、電荷存儲(chǔ)層5118、隧穿介電層5117和主體5114可以形成晶體管或存儲(chǔ)器單元晶體管結(jié)構(gòu)。例如,第一子介電層至第三子介電層5117至5119可以形成氧化物-氮化物-氧化物(ONO)結(jié)構(gòu)。在實(shí)施例中,為了便于說(shuō)明,柱狀物5113的每一個(gè)柱狀物中的p型硅的表面層5114將被稱為在第二方向上的主體。
存儲(chǔ)塊BLKi可以包括多個(gè)柱狀物5113。例如,存儲(chǔ)塊BLKi可以包括多個(gè)NAND串NS。詳細(xì)地,存儲(chǔ)塊BLKi可以包括在第二方向上或者在與襯底5111垂直的方向上延伸的多個(gè)NAND串NS。
每個(gè)NAND串NS可以包括在第二方向上布置的多個(gè)晶體管結(jié)構(gòu)TS。每個(gè)NAND串NS的多個(gè)晶體管結(jié)構(gòu)TS中的至少一個(gè)晶體管結(jié)構(gòu)可以用作串源極晶體管SST。每個(gè)NAND串NS的多個(gè)晶體管結(jié)構(gòu)TS中的至少一個(gè)晶體管結(jié)構(gòu)可以用作接地選擇晶體管GST。
柵或控制柵可以對(duì)應(yīng)于在第一方向上延伸的導(dǎo)電材料區(qū)域5211至5291、5212至5292和5213至5293。例如,柵或控制柵可以在第一方向上延伸并且形成字線和包括至少一個(gè)源極選擇線SSL和至少一個(gè)接地選擇線GSL的至少兩個(gè)選擇線。
在第三方向上延伸的導(dǎo)電材料區(qū)域5331至5333可以電聯(lián)接到NAND串NS的一端。在第三方向上延伸的導(dǎo)電材料區(qū)域5331至5333可以用作位線BL。例如,在一個(gè)存儲(chǔ)塊BLKi中,多個(gè)NAND串NS可以電聯(lián)接到一個(gè)位線BL。
在第一方向上延伸的第二類型摻雜區(qū)域5311至5314可以設(shè)置到NAND串NS的另一端。在第一方向上延伸的第二類型摻雜區(qū)域5311至5314可以用作共源線CSL。
例如,存儲(chǔ)塊BLKi可以包括多個(gè)在與襯底5111垂直的方向上例如在第二方向上延伸的多個(gè)NAND串NS并且可以用作例如電荷捕獲型存儲(chǔ)器的NAND閃速存儲(chǔ)塊,其中多個(gè)NAND串NS電聯(lián)接到一個(gè)位線BL。
盡管在圖5至圖7中示出了在第一方向上延伸的導(dǎo)電材料區(qū)域5211至5291、5212至5292和5213至5293設(shè)置有九(9)層,但是應(yīng)注意,在第一方向上延伸的導(dǎo)電材料區(qū)域5211至5291、5212至5292和5213至5293不限于此。例如,在第一方向上延伸的導(dǎo)電材料區(qū)域可以設(shè)置有八(8)層、十六(16)層或任意多層。例如,在一個(gè)NAND串NS中,晶體管的數(shù)量可以為8、16或更多。
盡管在圖5至圖7中示出了三(3)個(gè)NAND串NS電聯(lián)接到一個(gè)位線BL,但是應(yīng)注意實(shí)施例不限于此。在存儲(chǔ)塊BLKi中,m個(gè)NAND串NS可以電聯(lián)接到一位線BL,m是正整數(shù)。在第一方向上延伸的導(dǎo)電材料區(qū)域5211至5291、5212至5292和5213至5293的數(shù)量和共源線5311至5314的數(shù)量可以隨著電聯(lián)接到一個(gè)位線BL的NAND串NS的數(shù)量變化。
此外,盡管圖5至圖7示出了三(3)個(gè)NAND串NS電聯(lián)接到在第一方向上延伸的一個(gè)導(dǎo)電材料,但是應(yīng)注意,實(shí)施例不限于此。例如,n個(gè)NAND串NS可以電聯(lián)接到在第一方向上延伸的一個(gè)導(dǎo)電材料,n是正整數(shù)。位線5331至5333的數(shù)量可以隨著電聯(lián)接到在第一方向上延伸的一個(gè)導(dǎo)電材料的NAND串NS的數(shù)量變化。
參照?qǐng)D8,在具有第一結(jié)構(gòu)的塊BLKi中,可以在第一位線BL1和共源線CSL之間設(shè)置多個(gè)NAND串NS11至NS31。第一位線BL1可以與圖5和圖6中的在第三方向上延伸的導(dǎo)電材料區(qū)域5331對(duì)應(yīng)??梢栽诘诙痪€BL2和共源線CSL之間設(shè)置NAND串NS12至NS32。第二位線BL2可以與圖5和圖6中的在第三方向上延伸的導(dǎo)電材料區(qū)域5332對(duì)應(yīng)??梢栽诘谌痪€BL3和共源線CSL之間設(shè)置NAND串NS13至NS33。第三位線BL3可以與圖5和圖6中的在第三方向上延伸的導(dǎo)電材料區(qū)域5333對(duì)應(yīng)。
每個(gè)NAND串NS的源極選擇晶體管SST可以電聯(lián)接到對(duì)應(yīng)的位線BL。每個(gè)NAND串NS的接地選擇晶體管GST可以電聯(lián)接到共源線CSL??梢栽诿總€(gè)NAND串NS的源極選擇晶體管SST和接地選擇晶體管GST之間設(shè)置存儲(chǔ)器單元MC1至MC6。
在本示例中,NAND串NS可以由行和列的單元定義。電聯(lián)接到一個(gè)位線的NAND串NS可以形成一列。電聯(lián)接到第一位線BL1的NAND串NS11至NS31可以與第一列對(duì)應(yīng)。電聯(lián)接到第二位線BL2的NAND串NS12至NS32可以與第二列對(duì)應(yīng)。電聯(lián)接到第三位線BL3的NAND串NS13至NS33可以與第三列對(duì)應(yīng)。電聯(lián)接到一個(gè)源極選擇線SSL的NAND串NS可以形成一行。電聯(lián)接到第一源極選擇線SSL1的NAND串NS11至NS13可以形成第一行。電聯(lián)接到第二源極選擇線SSL2的NAND串NS21至NS23可以形成第二行。電聯(lián)接到第三源極選擇線SSL3的NAND串NS31至NS33可以形成第三行。
在各NAND串NS中,可以定義高度。在各NAND串NS中,與接地選擇晶體管GST相鄰的存儲(chǔ)器單元MC1的高度可以具有例如值“1”。在各NAND串NS中,當(dāng)從襯底5111測(cè)量時(shí),存儲(chǔ)器單元的高度可以隨著存儲(chǔ)器單元靠近源極選擇晶體管SST而增大。例如,在每個(gè)NAND串NS中,與源極選擇晶體管SST相鄰的存儲(chǔ)器單元MC6的高度可以具有例如值“7”。
布置在同一行中的NAND串NS的源極選擇晶體管SST可以共享源極選擇線SSL。布置在不同行中的NAND串NS的源極選擇晶體管SST可以分別電聯(lián)接到不同的源極選擇線SSL1、SSL2和SSL3。
在同一行中的NAND串NS中處于同一高度的存儲(chǔ)器單元可共享字線WL。例如,在同一高度處,電聯(lián)接到處于不同行的NAND串NS的存儲(chǔ)器單元MC的字線WL可以彼此電聯(lián)接。在同一行的NAND串NS中處于同一高度的虛擬存儲(chǔ)器單元DMC可以共享虛擬字線DWL。例如,在同一高度或水平處,電聯(lián)接到處于不同行的NAND串NS的虛擬存儲(chǔ)器單元DMC的虛擬字線DWL可以彼此電聯(lián)接。
對(duì)于可以設(shè)置在第一方向上延伸的導(dǎo)電材料區(qū)域5211至5291、5212至5292和5213至5293的層中的每一層,位于同一水平或高度或?qū)拥淖志€WL或虛擬字線DWL可以彼此電聯(lián)接。在第一方向上延伸的導(dǎo)電材料區(qū)域5211至5291、5212至5292和5213至5293可以通過接觸部共同電聯(lián)接到上層。換句話說(shuō),處于同一行中的NAND串NS的接地選擇晶體管GST可以共享接地選擇線GSL。此外,處于不同行中的NAND串NS的接地選擇晶體管GST可以共享接地選擇線GSL。例如,NAND串NS11至NS13、NS21至NS23和NS31至NS33可以共同電聯(lián)接到接地選擇線GSL。
共源線CSL可以共同電聯(lián)接到NAND串NS。在襯底5111上的有源區(qū)域上,第一摻雜區(qū)域至第四摻雜區(qū)域5311至5314可以電聯(lián)接。第一摻雜區(qū)域至第四摻雜區(qū)域5311至5314可以通過接觸部共同電聯(lián)接到上層。
例如,如圖8所示,同一高度或水平的字線WL可以彼此電聯(lián)接。因此,當(dāng)選擇處于某一高度的字線WL時(shí),可以選擇電聯(lián)接到所選擇的字線WL的所有NAND串NS。處于不同行的NAND串NS可以電聯(lián)接到不同的源極選擇線SSL。因此,在電聯(lián)接到同一字線WL的NAND串NS之中,通過選擇源極選擇線SSL1至SSL3中的一個(gè)源極選擇線,處于未選擇行中的NAND串NS可以與位線BL1至BL3電隔離。換句話說(shuō),通過選擇源極選擇線SSL1至SSL3中的一個(gè)源極選擇線,可以選擇布置在與所選的源極線相同的行中的NAND串NS。此外,通過選擇位線BL1至BL3中的一個(gè)位線,可以選擇布置在與所選的位線相同的列中的NAND串NS。因此,可以僅選擇布置在與所選的源極線相同的行和與所選的位線相同的列中的NAND串NS。
在各NAND串NS中,可以設(shè)置虛擬存儲(chǔ)器單元DMC。在圖8中,例如,可以在每個(gè)NAND串NS中的第三存儲(chǔ)器單元MC3和第四存儲(chǔ)器單元MC4之間設(shè)置虛擬存儲(chǔ)器單元DMC。例如,可以在虛擬存儲(chǔ)器單元DMC和接地選擇晶體管GST之間設(shè)置第一存儲(chǔ)器單元至第三存儲(chǔ)器單元MC1至MC3??梢栽谔摂M存儲(chǔ)器單元DMC和源極選擇晶體管SST之間設(shè)置第四存儲(chǔ)器單元至第六存儲(chǔ)器單元MC4至MC6??梢酝ㄟ^虛擬存儲(chǔ)器單元DMC將每個(gè)NAND串NS的存儲(chǔ)器單元MC劃分成兩(2)個(gè)存儲(chǔ)器單元組。在所劃分的存儲(chǔ)器單元組中,與接地選擇晶體管GST相鄰的存儲(chǔ)器單元例如MC1至MC3可以被稱為下部存儲(chǔ)器單元組,與串選擇晶體管SST相鄰的剩余存儲(chǔ)器單元例如MC4至MC6可以被稱為上部存儲(chǔ)器單元組。
以下,將參照?qǐng)D9至圖11進(jìn)行詳細(xì)的說(shuō)明,圖9至圖11示出了根據(jù)利用與第一結(jié)構(gòu)不同的三維(3D)非易失性存儲(chǔ)器裝置實(shí)現(xiàn)的實(shí)施例的存儲(chǔ)器系統(tǒng)中的存儲(chǔ)器裝置。
圖9是示意性地示出了利用與以上參照?qǐng)D5至圖8說(shuō)明的第一結(jié)構(gòu)不同的三維(3D)非易失性存儲(chǔ)器裝置實(shí)現(xiàn)的存儲(chǔ)器裝置并且示出了圖4的多個(gè)存儲(chǔ)塊中的存儲(chǔ)塊BLKj的立體圖。圖10是示出了沿著圖9的線VII-VII'截取的存儲(chǔ)塊BLKj的剖視圖。
參照?qǐng)D9和圖10,存儲(chǔ)塊BLKj可以包括在第一方向上至第三方向上延伸的結(jié)構(gòu)并且可包括襯底6311。襯底6311可以包括摻雜有第一類型雜質(zhì)的硅材料。例如,襯底6311可以包括摻雜有p型雜質(zhì)的硅材料。襯底6311可以是p型阱,例如袋p阱。襯底6311可以進(jìn)一步包括圍繞p型阱的n型阱。盡管在所說(shuō)明的實(shí)施例中襯底6311被例示為p型硅,但是應(yīng)注意,襯底6311不限于p型硅。
在襯底6311上方設(shè)置在x軸方向和y軸方向上延伸的第一導(dǎo)電材料區(qū)域至第四導(dǎo)電材料區(qū)域6321至6324。第一導(dǎo)電材料區(qū)域6321至第四導(dǎo)電材料區(qū)域6324可以在z軸方向上分離預(yù)設(shè)的距離。
可以在襯底6311上方設(shè)置在x軸方向和y軸方向上延伸的第五導(dǎo)電材料區(qū)域至第八導(dǎo)電材料區(qū)域6325至6328。第五導(dǎo)電材料區(qū)域至第八導(dǎo)電材料區(qū)域6325至6328可以在z軸方向上分離預(yù)設(shè)的距離。第五導(dǎo)電材料區(qū)域至第八導(dǎo)電材料區(qū)域6325至6328可以與第一導(dǎo)電材料區(qū)域至第四導(dǎo)電材料區(qū)域6321至6324在y軸方向上分離。
可以設(shè)置穿過第一導(dǎo)電材料區(qū)域至第四導(dǎo)電材料區(qū)域6321至6324的多個(gè)下部柱狀物DP。各下部柱狀物DP可以在z軸方向上延伸。而且,可以設(shè)置穿過第五導(dǎo)電材料區(qū)域至第八導(dǎo)電材料區(qū)域6325至6328的多個(gè)上部柱狀物UP。各上部柱狀物UP可以在z軸方向上延伸。
下部柱狀物DP和上部柱狀物UP中的每一個(gè)可以包括內(nèi)部材料6361、中間層6362和表面層6363。中間層6362可以用作單元晶體管的溝道。表面層6363可以包括阻擋介電層、電荷存儲(chǔ)層和隧穿介電層。
下部柱狀物DP和上部柱狀物UP可以通過管柵PG彼此電聯(lián)接。管柵PG可以布置在襯底6311中。例如,管柵PG可以包括與下部柱狀物DP和上部柱狀物UP相同的材料。
可以在下部柱狀物DP上方設(shè)置在x軸方向和y軸方向上延伸的第二類型的摻雜材料6312。例如,第二類型的摻雜材料6312可以包括n型硅材料。第二類型的摻雜材料6312可以用作共源線CSL。
可以在上部柱狀物UP上方設(shè)置漏極6340。漏極6340可以包括n型硅材料??梢栽诼O6340上方設(shè)置在y軸方向上延伸的第一上部導(dǎo)電材料區(qū)域6351和第二上部導(dǎo)電材料區(qū)域6352。
第一上部導(dǎo)電材料區(qū)域6351和第二上部導(dǎo)電材料區(qū)域6352可以沿著x軸方向分隔開。第一上部導(dǎo)電材料區(qū)域6351和第二上部導(dǎo)電材料區(qū)域6352可以由金屬形成。第一上部導(dǎo)電材料區(qū)域6351和第二上部導(dǎo)電材料區(qū)域6352以及漏極6340可以通過接觸插塞彼此電聯(lián)接。第一上部導(dǎo)電材料區(qū)域6351和第二上部導(dǎo)電材料區(qū)域6352可以分別用作第一位線BL1和第二位線BL2。
第一導(dǎo)電材料6321可以用作源極選擇線SSL。第二導(dǎo)電材料6322可以用作第一虛擬字線DWL1。第三導(dǎo)電材料6323和第四導(dǎo)電材料6324可以分別用作第一主字線MWL1和第二主字線MWL2。第五導(dǎo)電材料6325和第六導(dǎo)電材料6326可以分別用作第三主字線MWL3和第四主字線MWL4。第七導(dǎo)電材料6327可以用作第二虛擬字線DWL2。第八導(dǎo)電材料6328可以用作漏極選擇線DSL。
下部柱狀物DP和與下部柱狀物DP相鄰的第一導(dǎo)電材料區(qū)域至第四導(dǎo)電材料區(qū)域6321至6324可以形成下部串。上部柱狀物UP和與上部柱狀物UP相鄰的第五導(dǎo)電材料區(qū)域至第八導(dǎo)電材料區(qū)域6325至6328可以形成上部串。下部串和上部串可以通過管柵PG彼此電聯(lián)接。下部串的一端可以電聯(lián)接到用作共源線CSL的第二類型的摻雜材料6312。上部串的一端可以通過漏極6340電聯(lián)接到對(duì)應(yīng)的位線。一個(gè)下部串和一個(gè)上部串可以形成在用作共源線CSL的摻雜材料6312和上部導(dǎo)電材料層6351和6352中的用作位線BL的對(duì)應(yīng)的一個(gè)上部導(dǎo)電材料層之間電聯(lián)接的一個(gè)單元串。
例如,下部串可以包括源極選擇晶體管SST、第一虛擬存儲(chǔ)器單元DMC1以及第一主存儲(chǔ)器單元MMC1和第二主存儲(chǔ)器單元MMC2。上部串可以包括第三主存儲(chǔ)器單元MMC3和第四主存儲(chǔ)器單元MMC4、第二虛擬存儲(chǔ)器單元DMC2以及漏極選擇晶體管DST。
在圖9和圖10中,上部串和下部串可以形成NAND串NS。NAND串NS可以包括多個(gè)晶體管結(jié)構(gòu)TS。由于以上參照?qǐng)D7詳細(xì)地說(shuō)明了在圖9和圖10中的NAND串NS中包括的晶體管結(jié)構(gòu),因此在此將省略對(duì)其的詳細(xì)說(shuō)明。
圖11是示出了具有以上參照?qǐng)D9和圖10說(shuō)明的第二結(jié)構(gòu)的存儲(chǔ)塊BLKj的等效電路的電路圖。為了方便,僅示出了第一串ST1和第二串ST2,它們?cè)诘诙Y(jié)構(gòu)的存儲(chǔ)塊BLKj中形成一對(duì)。
參照?qǐng)D11,在具有第二結(jié)構(gòu)的存儲(chǔ)塊BLKj中,可以定義多個(gè)對(duì)的形式設(shè)置多個(gè)單元串,其中每個(gè)單元串利用如上參照?qǐng)D9和圖10說(shuō)明的通過管柵PG電聯(lián)接的一個(gè)上部串和一個(gè)下部串實(shí)現(xiàn)。
例如,在具有第二結(jié)構(gòu)的存儲(chǔ)塊BLKj中,沿著第一溝道CH1(未示出)堆疊的存儲(chǔ)器單元CG0至CG31,例如至少一個(gè)源極選擇柵SSG1和至少一個(gè)漏極選擇柵DSG1可以形成第一串ST1,沿著第二溝道CH2(未示出)堆疊的存儲(chǔ)器單元CG0至CG31,例如至少一個(gè)源極選擇柵SSG2和至少一個(gè)漏極選擇柵DSG2可以形成第二串ST2。
第一串ST1和第二串ST2可以電聯(lián)接到同一漏極選擇線DSL和同一源極選擇線SSL。第一串ST1可以電聯(lián)接到第一位線BL1。第二串ST2可以電聯(lián)接到第二位線BL2。
盡管圖11示出了第一串ST1和第二串ST2電聯(lián)接到同一漏極選擇線DSL和同一源極選擇線SSL,但是可以想到第一串ST1和第二串ST2可以電聯(lián)接到同一源極選擇線SSL和同一位線BL,第一串ST1可以電聯(lián)接到第一漏極選擇線DSL1,第二串ST2可以電聯(lián)接到第二漏極選擇線DSL2。此外,可以想到,第一串ST1和第二串ST2可以電聯(lián)接到同一漏極選擇線DSL和同一位線BL,第一串ST1可以電聯(lián)接到第一源極選擇線SSL1,第二串ST2可以電聯(lián)接到第二源極選擇線SSL2。
<平衡樹(B-樹)結(jié)構(gòu)>
以下將說(shuō)明管理索引數(shù)據(jù)的操作。
索引數(shù)據(jù)可以被定義為用于訪問用戶數(shù)據(jù)的內(nèi)容所需要的信息。
因此,圖1的主機(jī)102可以通過大小相對(duì)小的索引數(shù)據(jù)訪問大小相對(duì)大的用戶數(shù)據(jù)。
例如,為了主機(jī)102快速地訪問期望的用戶數(shù)據(jù),重要的是快速地找到與用戶數(shù)據(jù)對(duì)應(yīng)的索引數(shù)據(jù)。因而,主機(jī)102可以樹結(jié)構(gòu)管理索引數(shù)據(jù)。
例如,當(dāng)主機(jī)102以平衡樹(B-樹)結(jié)構(gòu)管理多個(gè)索引數(shù)據(jù)時(shí),主機(jī)102可以在等量時(shí)間內(nèi)訪問多個(gè)索引數(shù)據(jù)之中的任意數(shù)據(jù)。因而,B-樹結(jié)構(gòu)被頻繁地用于管理多個(gè)索引數(shù)據(jù)。
圖12A和圖12F示出了根據(jù)本發(fā)明的實(shí)施例的用于在數(shù)據(jù)處理系統(tǒng)100中管理多個(gè)索引數(shù)據(jù)所采用的B-樹結(jié)構(gòu)的示例。
B-樹結(jié)構(gòu)可以如下定義。
第一,多個(gè)節(jié)點(diǎn)可以被配置成具有樹結(jié)構(gòu),一個(gè)節(jié)點(diǎn)可以包括一個(gè)至H個(gè)索引數(shù)據(jù),其中H是等于或大于二的整數(shù)。
第二,在多個(gè)節(jié)點(diǎn)之中的不是葉節(jié)點(diǎn)的節(jié)點(diǎn)中的每個(gè)可以包括數(shù)量范圍從H/2至H+1的子節(jié)點(diǎn),葉節(jié)點(diǎn)被設(shè)定到最深的樹層并且沒有子節(jié)點(diǎn),在對(duì)應(yīng)的節(jié)點(diǎn)中包括的索引數(shù)據(jù)的值可以與通過劃分在兩個(gè)或更多個(gè)數(shù)據(jù)節(jié)點(diǎn)中包括的索引數(shù)據(jù)的值而得到的值對(duì)應(yīng)。
第三,在多個(gè)節(jié)點(diǎn)之中的被設(shè)定到最淺的樹層且沒有母節(jié)點(diǎn)的根節(jié)點(diǎn)可以具有兩個(gè)或更多個(gè)子節(jié)點(diǎn)。
第四,所有葉節(jié)點(diǎn)可以具有相同的樹層。
參照?qǐng)D12A,如1210所表示的,首先可以輸入值為4的索引數(shù)據(jù),接下來(lái)按照記載的順序采用順次的方式輸入值為6的索引數(shù)據(jù)、值為8的索引數(shù)據(jù)和值為18的索引數(shù)據(jù)。也就是,圖12A示出了輸入總共四個(gè)數(shù)據(jù)4、6、8和18的狀態(tài)。
采用這種方式,如1210所表示的索引數(shù)據(jù)的輸入可以形成如1215表示的B-樹結(jié)構(gòu)。
具體地,當(dāng)輸入值為4的第一索引數(shù)據(jù)時(shí),如1215所表示的,可以將第一索引數(shù)據(jù)存儲(chǔ)在作為根節(jié)點(diǎn)ROOT的第零節(jié)點(diǎn)NODE<0>中。此時(shí),盡管第零節(jié)點(diǎn)NODE<0>是新產(chǎn)生的節(jié)點(diǎn),但是第零節(jié)點(diǎn)NODE<0>沒有被分類到新節(jié)點(diǎn)中,這是因?yàn)榈诹愎?jié)點(diǎn)NODE<0>是根節(jié)點(diǎn)ROOT。
然后,可以輸入值為6的第二索引數(shù)據(jù)并且將其存儲(chǔ)在作為根節(jié)點(diǎn)的第零節(jié)點(diǎn)NODE<0>中。
采用這種方式,由于兩個(gè)索引數(shù)據(jù)4和6可以被存儲(chǔ)在作為根節(jié)點(diǎn)ROOT的一個(gè)節(jié)點(diǎn)或第零節(jié)點(diǎn)NODE<0>中直到兩個(gè)索引數(shù)據(jù)被輸入,因此不存在子節(jié)點(diǎn)。這是因?yàn)閳D12A中示出的B-樹在一個(gè)節(jié)點(diǎn)中最多存儲(chǔ)兩個(gè)數(shù)據(jù)。當(dāng)在一個(gè)節(jié)點(diǎn)中可以存儲(chǔ)大于兩個(gè)數(shù)據(jù)的數(shù)據(jù)時(shí),直到在根節(jié)點(diǎn)中存儲(chǔ)了該更大數(shù)量的數(shù)據(jù),才存在子節(jié)點(diǎn)。
然后,當(dāng)值為8的第三索引數(shù)據(jù)被輸入時(shí),已經(jīng)被存儲(chǔ)在根節(jié)點(diǎn)中的數(shù)據(jù)基于其值而可以變成具有兩個(gè)子節(jié)點(diǎn)的結(jié)構(gòu),這是因?yàn)楦?jié)點(diǎn)沒有空間存儲(chǔ)第三索引數(shù)據(jù)。
也就是,與嘗試被存儲(chǔ)在根節(jié)點(diǎn)ROOT中的索引數(shù)據(jù)4、6和8之中的中間值對(duì)應(yīng)的值為6的索引數(shù)據(jù)可以被存儲(chǔ)在根節(jié)點(diǎn)ROOT中?;诖鎯?chǔ)在根節(jié)點(diǎn)ROOT中的值為6的索引數(shù)據(jù),可以在第一節(jié)點(diǎn)NODE<1>中存儲(chǔ)值為4的索引數(shù)據(jù),可以在第二節(jié)點(diǎn)NODE<2>中存儲(chǔ)值為8的索引數(shù)據(jù)。此時(shí),由于第一節(jié)點(diǎn)NODE<1>和第二節(jié)點(diǎn)NODE<2>是子節(jié)點(diǎn)并且是新產(chǎn)生的節(jié)點(diǎn),所以第一節(jié)點(diǎn)NODE<1>和第二節(jié)點(diǎn)NODE<2>被分類到新節(jié)點(diǎn)NEW中。
然后,可以輸入值為18的第四索引數(shù)據(jù)并將其存儲(chǔ)在第二節(jié)點(diǎn)NODE<2>中。采用這種方式,當(dāng)在第二節(jié)點(diǎn)NODE<2>中另外存儲(chǔ)了值為18的索引數(shù)據(jù)時(shí),第二節(jié)點(diǎn)NODE<2>不被分類到新節(jié)點(diǎn)NEW中,而是被分類到休止節(jié)點(diǎn)REST中。
根據(jù)圖12B的實(shí)施例,如1220表示的,在圖12A中輸入的索引數(shù)據(jù)4、6、8和18之后可以輸入值為20的第五索引數(shù)據(jù),然后可以輸入值為22的第六索引數(shù)據(jù)。
采用這種方式,如1220表示的索引數(shù)據(jù)的輸入可以形成如1225表示的B-樹結(jié)構(gòu)。
具體地,當(dāng)如1225表示地輸入值為20的第五索引數(shù)據(jù)時(shí),可以嘗試將已經(jīng)存儲(chǔ)在第二節(jié)點(diǎn)NODE<2>中的數(shù)據(jù)移動(dòng)到作為第二節(jié)點(diǎn)NODE<2>的母節(jié)點(diǎn)的根節(jié)點(diǎn)ROOT,這是因?yàn)榈诙?jié)點(diǎn)NODE<2>沒有空間來(lái)存儲(chǔ)第五索引數(shù)據(jù)。此時(shí),由于根節(jié)點(diǎn)ROOT具有空間來(lái)存儲(chǔ)第五索引數(shù)據(jù),因此已經(jīng)存儲(chǔ)在第二節(jié)點(diǎn)NODE<2>中的數(shù)據(jù)可以移動(dòng)到根節(jié)點(diǎn)ROOT,并且基于所移動(dòng)數(shù)據(jù)的值,B-樹結(jié)構(gòu)可以變成具有兩個(gè)子節(jié)點(diǎn)的結(jié)構(gòu)。
也就是,與嘗試存儲(chǔ)在第二節(jié)點(diǎn)NODE<2>中的索引數(shù)據(jù)8、18和20之中的中間值對(duì)應(yīng)的值為18的索引數(shù)據(jù)可以移動(dòng)和存儲(chǔ)在根節(jié)點(diǎn)ROOT中?;诖鎯?chǔ)在根節(jié)點(diǎn)ROOT中的值為18的索引數(shù)據(jù),可以在第二節(jié)點(diǎn)NODE<2>中存儲(chǔ)值為8的索引數(shù)據(jù),并且可以在第三節(jié)點(diǎn)NODE<3>中存儲(chǔ)值為20的索引數(shù)據(jù)。此時(shí),由于第三節(jié)點(diǎn)NODE<3>是子節(jié)點(diǎn)并且是新產(chǎn)生的節(jié)點(diǎn),所以第三節(jié)點(diǎn)NODE<3>可以被分類到新節(jié)點(diǎn)NEW中。此外,由于如圖12A所示第二節(jié)點(diǎn)NODE<2>已經(jīng)被分類到休止節(jié)點(diǎn)REST中,因此即使在圖12B中,第二節(jié)點(diǎn)NODE<2>也可以繼續(xù)維持第二節(jié)點(diǎn)NODE<2>被分類到休止節(jié)點(diǎn)REST中的狀態(tài)。
然后,可以輸入值為22的第六索引數(shù)據(jù)并且將其存儲(chǔ)在第三節(jié)點(diǎn)NODE<3>中。采用這種方式,由于在第三節(jié)點(diǎn)NODE<3>中另外存儲(chǔ)了值為22的索引數(shù)據(jù),第三節(jié)點(diǎn)NODE<3>不被分類到新節(jié)點(diǎn)NEW中,而是被分類到休止節(jié)點(diǎn)REST中。
根據(jù)圖12C的實(shí)施例,如1230所表示的,在圖12A和圖12B中輸入的索引數(shù)據(jù)4、6、8、18、20和22之后可以輸入值為24的第七索引數(shù)據(jù)。
采用這種方式,由1230表示的索引數(shù)據(jù)的輸入可以形成由1235表示的B-樹結(jié)構(gòu)。
具體地,當(dāng)如1235所表示地輸入值為24的第七索引數(shù)據(jù)時(shí),可以嘗試將已經(jīng)存儲(chǔ)在第三節(jié)點(diǎn)NODE<3>中的數(shù)據(jù)移動(dòng)到根節(jié)點(diǎn)ROOT,這是因?yàn)榈谌?jié)點(diǎn)NODE<3>沒有空間存儲(chǔ)第七索引數(shù)據(jù)。此時(shí),由于根節(jié)點(diǎn)ROOT沒有空間存儲(chǔ)第七索引數(shù)據(jù),因此可以形成新的根節(jié)點(diǎn),同時(shí)已經(jīng)存儲(chǔ)在根節(jié)點(diǎn)ROOT中的數(shù)據(jù)移動(dòng)到高一級(jí)的層,并且可以將B-樹結(jié)構(gòu)變成在新形成的根節(jié)點(diǎn)周圍具有六個(gè)子節(jié)點(diǎn)的結(jié)構(gòu)。
也就是,盡管與嘗試在第三節(jié)點(diǎn)NODE<3>中存儲(chǔ)的索引數(shù)據(jù)20、22和24之中的中間值對(duì)應(yīng)的值為22的索引數(shù)據(jù)被嘗試存儲(chǔ)在作為其母節(jié)點(diǎn)的根節(jié)點(diǎn)ROOT中,但是值為22的索引數(shù)據(jù)不能存儲(chǔ)在根節(jié)點(diǎn)ROOT中,這是因?yàn)楦?jié)點(diǎn)ROOT沒有空間。因而,與嘗試在根節(jié)點(diǎn)ROOT中存儲(chǔ)的索引數(shù)據(jù)6、18和22之中的中間值對(duì)應(yīng)的值為18的索引數(shù)據(jù)可以被移動(dòng)到高一級(jí)的層并且被設(shè)定到新的根節(jié)點(diǎn)ROOT。此時(shí),基于存儲(chǔ)在新的根節(jié)點(diǎn)ROOT中的索引數(shù)據(jù)18,已經(jīng)存儲(chǔ)在先前根節(jié)點(diǎn)ROOT中的索引數(shù)據(jù)6和22可以分別存儲(chǔ)在新的第一節(jié)點(diǎn)NODE<1>和新的第二節(jié)點(diǎn)NODE<2>中。
此外,已經(jīng)存儲(chǔ)在作為在先前根節(jié)點(diǎn)ROOT中的值為6的索引數(shù)據(jù)的子節(jié)點(diǎn)的先前第一節(jié)點(diǎn)NODE<1>和先前第二節(jié)點(diǎn)NODE<2>中的索引數(shù)據(jù)4和8可以移動(dòng)并分別存儲(chǔ)在新的第三節(jié)點(diǎn)NODE<3>和新的第四節(jié)點(diǎn)NODE<4>中,該新的第三節(jié)點(diǎn)NODE<3>和新的第四節(jié)點(diǎn)NODE<4>被新設(shè)定成值為6的索引數(shù)據(jù)被存儲(chǔ)在其中的第一節(jié)點(diǎn)NODE<1>的子節(jié)點(diǎn)。
此外,由于已經(jīng)存儲(chǔ)在先前第三節(jié)點(diǎn)NODE<3>中且嘗試移動(dòng)并存儲(chǔ)在先前根節(jié)點(diǎn)ROOT中的值為22的索引數(shù)據(jù)被存儲(chǔ)在新的第二節(jié)點(diǎn)NODE<2>中,因此基于新的第二節(jié)點(diǎn)NODE<2>,已經(jīng)被存儲(chǔ)在先前第三節(jié)點(diǎn)NODE<3>中的值為20的索引數(shù)據(jù)和已經(jīng)嘗試存儲(chǔ)在先前第三節(jié)點(diǎn)NODE<3>中的值為24的索引數(shù)據(jù)可以被分別存儲(chǔ)在新的第五節(jié)點(diǎn)NODE<5>和新的第六節(jié)點(diǎn)NODE<6>中。
如上所述,在圖12C中示出的B-樹結(jié)構(gòu)中的根節(jié)點(diǎn)ROOT下的所有子節(jié)點(diǎn)可以分類到新節(jié)點(diǎn)NEW中,這是因?yàn)楦?jié)點(diǎn)ROOT是新設(shè)定的。
根據(jù)圖12D的實(shí)施例,如1240所表示的,在圖12A、圖12B和圖12C中輸入的索引數(shù)據(jù)4、6、8、18、20、22和24之后可以輸入值為26的第八索引數(shù)據(jù)。
采用這種方式,由1240表示的索引數(shù)據(jù)的輸入可以形成由1245表示的B-樹結(jié)構(gòu)。
具體地,當(dāng)如1245所表示地輸入值為26的第八索引數(shù)據(jù)時(shí),第八索引數(shù)據(jù)可以存儲(chǔ)在第六節(jié)點(diǎn)NODE<6>中,這是因?yàn)榈诹?jié)點(diǎn)NODE<6>有空間來(lái)存儲(chǔ)第八索引數(shù)據(jù)。由于在第六節(jié)點(diǎn)NODE<6>中另外存儲(chǔ)了值為26的索引數(shù)據(jù),第六節(jié)點(diǎn)NODE<6>不被分類到新節(jié)點(diǎn)NEW中,而是被分類到休止節(jié)點(diǎn)REST中。
根據(jù)圖12E的實(shí)施例,如1250所表示的,在圖12A至圖12D中已經(jīng)輸入的索引數(shù)據(jù)4、6、8、18、20、22、24和26之后可以輸入值為28的第九索引數(shù)據(jù)。
采用這種方式,由1250表示的索引數(shù)據(jù)的輸入可以具有如符號(hào)1255表示的B-樹結(jié)構(gòu)。
具體地,當(dāng)如1255表示地輸入值為28的第九索引數(shù)據(jù)時(shí),已經(jīng)存儲(chǔ)在第六節(jié)點(diǎn)NODE<6>中的數(shù)據(jù)可以嘗試移動(dòng)到作為第六節(jié)點(diǎn)NODE<6>的母節(jié)點(diǎn)的第二節(jié)點(diǎn)NODE<2>,這是因?yàn)榈诹?jié)點(diǎn)NODE<6>沒有空間來(lái)存儲(chǔ)第九索引數(shù)據(jù)。此時(shí),由于第二節(jié)點(diǎn)NODE<2>有空間來(lái)存儲(chǔ)第八索引數(shù)據(jù),因此已經(jīng)存儲(chǔ)在第六節(jié)點(diǎn)NODE<6>中的數(shù)據(jù)可以移動(dòng)到第二節(jié)點(diǎn)NODE<2>,并且基于所移動(dòng)的數(shù)據(jù)的值可以將B-樹結(jié)構(gòu)變成具有兩個(gè)子節(jié)點(diǎn)的結(jié)構(gòu)。
也就是,與嘗試存儲(chǔ)在第六節(jié)點(diǎn)NODE<6>中的索引數(shù)據(jù)24、26和28之中的中間值對(duì)應(yīng)的值為26的索引數(shù)據(jù)可以移動(dòng)并存儲(chǔ)在第二節(jié)點(diǎn)NODE<2>中?;谠诘诙?jié)點(diǎn)NODE<2>中存儲(chǔ)的索引數(shù)據(jù)26,值為24的索引數(shù)據(jù)可以存儲(chǔ)在第六節(jié)點(diǎn)NODE<6>中,并且值為28的索引數(shù)據(jù)可以存儲(chǔ)在第七節(jié)點(diǎn)NODE<7>中。此時(shí),由于第七節(jié)點(diǎn)NODE<7>是子節(jié)點(diǎn)且是新產(chǎn)生的節(jié)點(diǎn),因此第七節(jié)點(diǎn)NODE<7>可以被分類到新節(jié)點(diǎn)NEW中。此外,由于如圖12D所示,第六節(jié)點(diǎn)NODE<6>已經(jīng)被分類到休止節(jié)點(diǎn)REST中,因此即使在圖12E中,第六節(jié)點(diǎn)NODE<6>也可以繼續(xù)維持第六節(jié)點(diǎn)NODE<6>被分類到休止節(jié)點(diǎn)REST的狀態(tài)。由于在第二節(jié)點(diǎn)NODE<2>中另外存儲(chǔ)了值為26的索引數(shù)據(jù),第二節(jié)點(diǎn)NODE<2>不被分類到新節(jié)點(diǎn)NEW中,而是被分類到休止節(jié)點(diǎn)REST中。
根據(jù)圖12F的實(shí)施例,如1260所表示的,在圖12A至圖12E中輸入的索引數(shù)據(jù)4、6、8、18、20、22、24、26和28之后可以輸入值為30的第十索引數(shù)據(jù)。
采用這種方式,如1260表示的索引數(shù)據(jù)的輸入可以具有如1270表示的B-樹結(jié)構(gòu)。
具體地,當(dāng)如1270表示地輸入值為30的第十索引數(shù)據(jù)時(shí),第十索引數(shù)據(jù)可以存儲(chǔ)在第七節(jié)點(diǎn)NODE<7>中,這是因?yàn)榈谄吖?jié)點(diǎn)NODE<7>有空間來(lái)存儲(chǔ)第十索引數(shù)據(jù)。由于在第七節(jié)點(diǎn)NODE<7>中另外存儲(chǔ)了值為30的索引數(shù)據(jù),第七節(jié)點(diǎn)NODE<7>不被分類到新節(jié)點(diǎn)NEW中,而是被分類到休止節(jié)點(diǎn)REST中。
如參照?qǐng)D12A至圖12F描述的,只要節(jié)點(diǎn)不是根節(jié)點(diǎn)ROOT,則在B-樹結(jié)構(gòu)中包含的所有節(jié)點(diǎn)可以包含在新節(jié)點(diǎn)NEW或休止節(jié)點(diǎn)REST中。
此時(shí),新節(jié)點(diǎn)NEW可以表示在改變索引數(shù)據(jù)的算術(shù)運(yùn)算期間新形成節(jié)點(diǎn)的狀態(tài)并且具有僅在節(jié)點(diǎn)的整個(gè)容量的一半中存儲(chǔ)有效數(shù)據(jù)的特性。
具體地,根據(jù)圖12A的實(shí)施例,在第一節(jié)點(diǎn)NODE<1>和第二節(jié)點(diǎn)NODE<2>被分類到新節(jié)點(diǎn)NEW的時(shí)間點(diǎn),在第一節(jié)點(diǎn)NODE<1>和第二節(jié)點(diǎn)NODE<2>中的每個(gè)中可以最多存儲(chǔ)兩個(gè)索引數(shù)據(jù),但是可以在第一節(jié)點(diǎn)NODE<1>和第二節(jié)點(diǎn)NODE<2>中的每一個(gè)節(jié)點(diǎn)中存儲(chǔ)僅一個(gè)索引數(shù)據(jù)或索引數(shù)據(jù)4或8,以便維持B-樹結(jié)構(gòu)。此外,在值為18的索引數(shù)據(jù)被添加到第二節(jié)點(diǎn)NODE<2>的時(shí)間點(diǎn),第二節(jié)點(diǎn)NODE<2>可以被轉(zhuǎn)換成休止節(jié)點(diǎn)REST。此時(shí),由于沒有數(shù)據(jù)添加到第一節(jié)點(diǎn)NODE<1>,因此第一節(jié)點(diǎn)NODE<1>可以被繼續(xù)地分類到新節(jié)點(diǎn)NEW中。
根據(jù)圖12B的實(shí)施例,在第三節(jié)點(diǎn)NODE<3>被分類到新節(jié)點(diǎn)NEW中的時(shí)間點(diǎn),在第三節(jié)點(diǎn)NODE<3>中可以最多存儲(chǔ)兩個(gè)索引數(shù)據(jù),但是在第三節(jié)點(diǎn)NODE<3>中可以存儲(chǔ)僅一個(gè)索引數(shù)據(jù)或者索引數(shù)據(jù)20,以便維持B-樹結(jié)構(gòu)。此外,即使隨著在圖12B中形成了第三節(jié)點(diǎn)NODE<3>而僅剩余一半數(shù)據(jù)的狀態(tài)下,在圖12A中已經(jīng)被分類到休止節(jié)點(diǎn)REST中的第二節(jié)點(diǎn)NODE<2>仍可以被繼續(xù)地分類到休止節(jié)點(diǎn)REST中。然后,在值為22的索引數(shù)據(jù)被添加到第三節(jié)點(diǎn)NODE<3>的時(shí)間點(diǎn),第三節(jié)點(diǎn)NODE<3>可以轉(zhuǎn)換成休止節(jié)點(diǎn)REST。此時(shí),由于沒有數(shù)據(jù)被添加到第一節(jié)點(diǎn)NODE<1>,因此第一節(jié)點(diǎn)NODE<1>可以被繼續(xù)地分類到新節(jié)點(diǎn)NEW中。
此外,當(dāng)圖12B中示出的B-樹結(jié)構(gòu)變成圖12C中示出的B-樹結(jié)構(gòu)時(shí),可以新定義根節(jié)點(diǎn)ROOT。因而,根節(jié)點(diǎn)ROOT下的大多數(shù)節(jié)點(diǎn)可以被分類到新節(jié)點(diǎn)NEW中。也就是,盡管在第一節(jié)點(diǎn)至第六節(jié)點(diǎn)NODE<1:6>被分類到新節(jié)點(diǎn)NEW的時(shí)間點(diǎn),第一節(jié)點(diǎn)至第六節(jié)點(diǎn)NODE<1:6>中的每一個(gè)節(jié)點(diǎn)中可以最多存儲(chǔ)兩個(gè)索引數(shù)據(jù),但是可以在第一節(jié)點(diǎn)至第六節(jié)點(diǎn)NODE<1:6>中的每一個(gè)節(jié)點(diǎn)中存儲(chǔ)僅一個(gè)索引數(shù)據(jù)或值為4、6、8、20、22或24的索引數(shù)據(jù),以便維持B-樹結(jié)構(gòu)。
此外,在圖12D中,在值為26的索引數(shù)據(jù)被添加到第六節(jié)點(diǎn)NODE<6>的時(shí)間點(diǎn),第六節(jié)點(diǎn)NODE<6>可以轉(zhuǎn)換成休止節(jié)點(diǎn)REST。此時(shí),由于沒有數(shù)據(jù)被添加到第一節(jié)點(diǎn)至第五節(jié)點(diǎn)NODE<1:5>,所以第一節(jié)點(diǎn)至第五節(jié)點(diǎn)NODE<1:5>可以繼續(xù)地被分類到新節(jié)點(diǎn)NEW中。
根據(jù)圖12E的實(shí)施例,在第七節(jié)點(diǎn)NODE<7>被分類到新節(jié)點(diǎn)NEW的時(shí)間點(diǎn),在第七節(jié)點(diǎn)NODE<7>中可以最多存儲(chǔ)兩個(gè)索引數(shù)據(jù),但是在第七節(jié)點(diǎn)NODE<7>中可以存儲(chǔ)僅一個(gè)索引數(shù)據(jù)或者索引數(shù)據(jù)28,以便維持B-樹結(jié)構(gòu)。此外,在圖12D中已經(jīng)被分類到休止節(jié)點(diǎn)REST中的第六節(jié)點(diǎn)NODE<6>即使隨著在圖12E中形成了第七節(jié)點(diǎn)NODE<7>而僅剩余一半數(shù)據(jù)的狀態(tài)下仍可以被繼續(xù)地分類到休止節(jié)點(diǎn)REST中。此外,在值為26的索引數(shù)據(jù)被添加到第二節(jié)點(diǎn)NODE<2>的時(shí)間點(diǎn),第二節(jié)點(diǎn)NODE<2>可以轉(zhuǎn)換成休止節(jié)點(diǎn)REST。此時(shí),由于沒有數(shù)據(jù)被添加到第一節(jié)點(diǎn)NODE<1>以及第三節(jié)點(diǎn)至第六節(jié)點(diǎn)NODE<3:6>,因此第一節(jié)點(diǎn)NODE<1>以及第三節(jié)點(diǎn)至第六節(jié)點(diǎn)NODE<3:6>可以被繼續(xù)地分類到新節(jié)點(diǎn)NEW中。
根據(jù)圖12F的實(shí)施例,在值為30的索引數(shù)據(jù)被添加到第七節(jié)點(diǎn)NODE<7>的時(shí)間點(diǎn),第七節(jié)點(diǎn)NODE<7>可以轉(zhuǎn)換成休止節(jié)點(diǎn)REST。此外,即使在圖12F中數(shù)據(jù)被添加到第七節(jié)點(diǎn)NODE<7>的時(shí)間點(diǎn),在圖12E中已經(jīng)被分類到休止節(jié)點(diǎn)REST的第二節(jié)點(diǎn)NODE<2>和第六節(jié)點(diǎn)NODE<6>也可以被繼續(xù)地分類到休止節(jié)點(diǎn)REST中。此時(shí),由于沒有數(shù)據(jù)被添加到第一節(jié)點(diǎn)NODE<1>以及第三節(jié)點(diǎn)至第六節(jié)點(diǎn)NODE<3:6>,因此第一節(jié)點(diǎn)NODE<1>以及第三節(jié)點(diǎn)至第六節(jié)點(diǎn)NODE<3:6>可以被繼續(xù)地分類到新節(jié)點(diǎn)NEW中。
當(dāng)在B-樹結(jié)構(gòu)中節(jié)點(diǎn)被分類到休止節(jié)點(diǎn)REST時(shí),不可能確定僅在節(jié)點(diǎn)的內(nèi)部存儲(chǔ)空間的一半中還是在節(jié)點(diǎn)的所有內(nèi)部存儲(chǔ)空間中存儲(chǔ)了有效數(shù)據(jù)。然而,當(dāng)節(jié)點(diǎn)被分類到新節(jié)點(diǎn)NEW時(shí),可以確定僅在節(jié)點(diǎn)的內(nèi)部存儲(chǔ)空間的一半中存儲(chǔ)了有效數(shù)據(jù)。
圖13是根據(jù)本發(fā)明的實(shí)施例的由數(shù)據(jù)處理系統(tǒng)中的主機(jī)以平衡樹(B-樹)結(jié)構(gòu)管理的多個(gè)索引數(shù)據(jù)的簡(jiǎn)圖。
<第一實(shí)施例>
通過參照?qǐng)D1中示出的數(shù)據(jù)處理系統(tǒng)100的配置,圖14示出了根據(jù)本發(fā)明的第一實(shí)施例的用于執(zhí)行管理索引數(shù)據(jù)的操作的數(shù)據(jù)處理系統(tǒng)100的配置。也就是,根據(jù)本發(fā)明的第一實(shí)施例,數(shù)據(jù)處理系統(tǒng)100可以包括主機(jī)102和存儲(chǔ)器系統(tǒng)110。存儲(chǔ)器系統(tǒng)110可以包含控制器130和非易失性存儲(chǔ)器裝置150。
參照?qǐng)D13和圖14,在數(shù)據(jù)處理系統(tǒng)100中通過主機(jī)102以B-樹結(jié)構(gòu)管理的多個(gè)索引數(shù)據(jù)INDEX_DA<1:N>[+ND]中的每一個(gè)索引數(shù)據(jù)可以根據(jù)該索引數(shù)據(jù)位于其中的節(jié)點(diǎn)的狀態(tài)而以不同的形式被存儲(chǔ)。
具體地,通過主機(jī)102以B-樹結(jié)構(gòu)管理的索引數(shù)據(jù)INDEX_DA<1:N>[+ND]的每一個(gè)索引數(shù)據(jù)可以包含關(guān)于索引數(shù)據(jù)位于其中的節(jié)點(diǎn)的節(jié)點(diǎn)信息[+ND]。此時(shí),通過主機(jī)102管理的B-樹結(jié)構(gòu)的每個(gè)節(jié)點(diǎn)可以設(shè)定成節(jié)點(diǎn)具有預(yù)定容量的狀態(tài)。
存儲(chǔ)器系統(tǒng)110可以具有被劃分成多個(gè)物理存儲(chǔ)區(qū)域P0、P1、P2、P3、P4、P5、P6……的內(nèi)部物理存儲(chǔ)空間,各物理存儲(chǔ)區(qū)域?qū)?yīng)于預(yù)定的容量。也就是,在存儲(chǔ)器系統(tǒng)110中包括的存儲(chǔ)器裝置150的存儲(chǔ)空間可以被劃分成多個(gè)物理存儲(chǔ)區(qū)域P0、P1、P2、P3、P4、P5、P6……,各物理存儲(chǔ)區(qū)域被設(shè)定成預(yù)定的容量。
用于參考,當(dāng)假設(shè)預(yù)定容量為2時(shí),則在圖12A至圖12F中示出的B-樹結(jié)構(gòu)中包含的節(jié)點(diǎn)中的每一個(gè)節(jié)點(diǎn)可以存儲(chǔ)兩個(gè)索引數(shù)據(jù)。根據(jù)設(shè)計(jì)者的選擇,預(yù)定容量可以被設(shè)定為大于2的數(shù)。此外,預(yù)定容量可以被設(shè)定成在存儲(chǔ)器系統(tǒng)110中包括的存儲(chǔ)器裝置150中通過一次寫入操作而可以被寫入的數(shù)據(jù)的最大數(shù)量。例如,當(dāng)存儲(chǔ)器裝置150是非易失性存儲(chǔ)器裝置時(shí),預(yù)定容量可以與通過一次寫入操作而可以被寫入的頁(yè)面的最大數(shù)量。
圖13和圖14示出了假設(shè)預(yù)定容量為4的情況下,B-樹結(jié)構(gòu)的每個(gè)節(jié)點(diǎn)中存儲(chǔ)最多四個(gè)索引數(shù)據(jù)的示例。也就是,如圖14所示,通過存儲(chǔ)器系統(tǒng)110管理的物理存儲(chǔ)區(qū)域P0、P1、P2、P3、P4、P5、P6……中的每一個(gè)物理存儲(chǔ)區(qū)域可以存儲(chǔ)最多四個(gè)索引數(shù)據(jù)。此外,如圖13所示,在通過主機(jī)102管理的B-樹結(jié)構(gòu)中包含的節(jié)點(diǎn)NODE<0:8>中的每一個(gè)節(jié)點(diǎn)可以包含最多四個(gè)數(shù)據(jù)。
因而,在圖13和圖14中示出的數(shù)據(jù)處理系統(tǒng)100中,在通過主機(jī)102管理的B-樹結(jié)構(gòu)中包含的節(jié)點(diǎn)NODE<0:8>中的每一個(gè)節(jié)點(diǎn)中可以存儲(chǔ)的索引數(shù)據(jù)的最大數(shù)量等于在通過存儲(chǔ)器系統(tǒng)110管理的物理存儲(chǔ)區(qū)域P0、P1、P2、P3、P4、P5、P6……中的每一個(gè)物理存儲(chǔ)區(qū)域中可以存儲(chǔ)的索引數(shù)據(jù)的最大數(shù)量。
以下將更詳細(xì)地說(shuō)明根據(jù)本發(fā)明的第一實(shí)施例的存儲(chǔ)器系統(tǒng)110的操作。
首先,存儲(chǔ)器系統(tǒng)110可以檢查主機(jī)102應(yīng)用的索引數(shù)據(jù)INDEX_DA<1:N>[+ND]中的每一個(gè)索引數(shù)據(jù)的節(jié)點(diǎn)信息[+ND]并且確定索引數(shù)據(jù)INDEX_DA<1:N>[+ND]的每個(gè)被包含在新節(jié)點(diǎn)NEW和休止節(jié)點(diǎn)REST之間的哪個(gè)節(jié)點(diǎn)中(1410)。
例如,在通過主機(jī)102管理的多個(gè)節(jié)點(diǎn)NODE<0:8>之中,第零節(jié)點(diǎn)NODE<0>、第三節(jié)點(diǎn)NODE<3>、第五節(jié)點(diǎn)NODE<5>、第六節(jié)點(diǎn)NODE<6>和第七節(jié)點(diǎn)NODE<7>可以被分類到休止節(jié)點(diǎn)REST中。因而,在被從主機(jī)102傳輸?shù)酱鎯?chǔ)器系統(tǒng)的多個(gè)索引數(shù)據(jù)INDEX_DA<1:N>[+ND]之中的包含在第零節(jié)點(diǎn)NODE<0>、第三節(jié)點(diǎn)NODE<3>、第五節(jié)點(diǎn)NODE<5>、第六節(jié)點(diǎn)NODE<6>和第七節(jié)點(diǎn)NODE<7>中的索引數(shù)據(jù)的每個(gè)可以含有表示包含索引數(shù)據(jù)的對(duì)應(yīng)節(jié)點(diǎn)被包含在休止節(jié)點(diǎn)REST中的節(jié)點(diǎn)信息[+ND]。
另一方面,在通過主機(jī)102管理的多個(gè)節(jié)點(diǎn)NODE<0:8>之中,第一節(jié)點(diǎn)NODE<1>、第二節(jié)點(diǎn)NODE<2>、第四節(jié)點(diǎn)NODE<4>和第八節(jié)點(diǎn)NODE<8>可以被分類到新節(jié)點(diǎn)NEW中。因而,在被從主機(jī)102傳輸?shù)酱鎯?chǔ)器系統(tǒng)110的多個(gè)索引數(shù)據(jù)INDEX_DA<1:N>[+ND]之中的包含在第一節(jié)點(diǎn)NODE<1>、第二節(jié)點(diǎn)NODE<2>、第四節(jié)點(diǎn)NODE<4>和第八節(jié)點(diǎn)NODE<8>中的索引數(shù)據(jù)的每個(gè)可以含有表示包含索引數(shù)據(jù)的對(duì)應(yīng)節(jié)點(diǎn)被包含在新節(jié)點(diǎn)NEW中的節(jié)點(diǎn)信息[+ND]。
如此,當(dāng)存儲(chǔ)器系統(tǒng)110檢查主機(jī)102應(yīng)用的索引數(shù)據(jù)INDEX_DA<1:N>[+ND]的每個(gè)的節(jié)點(diǎn)信息[+ND]時(shí),存儲(chǔ)器系統(tǒng)110可以識(shí)別對(duì)應(yīng)的索引數(shù)據(jù)被包含在哪個(gè)節(jié)點(diǎn)中。
當(dāng)在主機(jī)102應(yīng)用的多個(gè)索引數(shù)據(jù)INDEX_DA<1:N>[+ND]之中檢查到兩個(gè)不同的索引數(shù)據(jù)為新節(jié)點(diǎn)NEW時(shí),存儲(chǔ)器系統(tǒng)110可以收集被分類到新節(jié)點(diǎn)NEW中的兩個(gè)不同的索引數(shù)據(jù)并且將所收集的索引數(shù)據(jù)存儲(chǔ)在一個(gè)物理存儲(chǔ)區(qū)域P5或P6中(1420)。
被分類到新節(jié)點(diǎn)NEW中的兩個(gè)索引數(shù)據(jù)可以存儲(chǔ)在一個(gè)物理存儲(chǔ)區(qū)域P5或P6中的原因在于:如參照?qǐng)D12C至圖12F說(shuō)明的,當(dāng)索引數(shù)據(jù)被分類到新節(jié)點(diǎn)NEW中時(shí),僅使用預(yù)定容量的一半,該預(yù)定容量對(duì)應(yīng)于可以在以B-樹結(jié)構(gòu)管理的節(jié)點(diǎn)中的每一個(gè)節(jié)點(diǎn)中存儲(chǔ)的索引數(shù)據(jù)的最大數(shù)量。
也就是,如圖13所示,在主機(jī)102管理的B-樹結(jié)構(gòu)中被分類到新節(jié)點(diǎn)NEW中的第一節(jié)點(diǎn)NODE<1>、第二節(jié)點(diǎn)NODE<2>、第四節(jié)點(diǎn)NODE<4>和第八節(jié)點(diǎn)NODE<8>可以如下方式進(jìn)行管理:僅將包含與可以存儲(chǔ)在各節(jié)點(diǎn)NODE<0:8>中的索引數(shù)據(jù)的最大數(shù)量對(duì)應(yīng)的四個(gè)索引數(shù)據(jù)之中的兩個(gè)索引數(shù)據(jù)的空間設(shè)定為有效空間,剩余的空間被設(shè)定為空的空間。
在傳統(tǒng)的方法中,當(dāng)在通過主機(jī)102管理的B-樹結(jié)構(gòu)中包含的節(jié)點(diǎn)NODE<0:8>的每個(gè)占據(jù)了存儲(chǔ)器系統(tǒng)110中的一個(gè)物理存儲(chǔ)區(qū)域P0、P1、P2、P3、P4、P5、P6或……時(shí),即使僅節(jié)點(diǎn)的存儲(chǔ)空間的一半包含有效的索引數(shù)據(jù),被分類到新節(jié)點(diǎn)NEW中的節(jié)點(diǎn)NODE<1、2、4、8>的每個(gè)應(yīng)該使用一個(gè)物理存儲(chǔ)區(qū)域P0、P1、P2、P3、P4、P5、P6或……的整個(gè)部分。
然而,如圖14所示,根據(jù)本發(fā)明的第一實(shí)施例的存儲(chǔ)器系統(tǒng)110可以收集被分類到新節(jié)點(diǎn)NEW中的節(jié)點(diǎn)NODE<1、2、4、8>之中的兩個(gè)節(jié)點(diǎn)NODE<1、2>/NODE<4、8>,并且將兩個(gè)節(jié)點(diǎn)存儲(chǔ)在一個(gè)物理存儲(chǔ)區(qū)域P5或P6中。因而,其中存儲(chǔ)被分類到新節(jié)點(diǎn)NEW中的索引數(shù)據(jù)的物理存儲(chǔ)區(qū)域P5或P6可以被與在各節(jié)點(diǎn)中可以存儲(chǔ)的最大數(shù)量的索引數(shù)據(jù)對(duì)應(yīng)的四個(gè)數(shù)據(jù)完全填充。
由于存儲(chǔ)器系統(tǒng)110識(shí)別出與兩個(gè)節(jié)點(diǎn)NODE<1、2>/NODE<4、8>對(duì)應(yīng)的數(shù)據(jù)被存儲(chǔ)在被分類到新節(jié)點(diǎn)NEW中的索引數(shù)據(jù)存儲(chǔ)在其中的物理存儲(chǔ)區(qū)域P5或P6中,因此即使當(dāng)索引數(shù)據(jù)將來(lái)被更新到休止節(jié)點(diǎn)REST中時(shí),存儲(chǔ)器系統(tǒng)110也可以沒有任何問題地管理被分類到新節(jié)點(diǎn)NEW中的索引數(shù)據(jù)。
當(dāng)主機(jī)102應(yīng)用的多個(gè)索引數(shù)據(jù)INDEX_DA<1:N>[+ND]之中檢查到索引數(shù)據(jù)為休止節(jié)點(diǎn)REST時(shí),存儲(chǔ)器系統(tǒng)110可以將被分類到休止節(jié)點(diǎn)REST中的一個(gè)索引數(shù)據(jù)存儲(chǔ)在一個(gè)物理存儲(chǔ)區(qū)域P0、P1、P2、P3或P4中(1430)。
如此,當(dāng)被分類到休止節(jié)點(diǎn)REST中的一個(gè)索引數(shù)據(jù)被存儲(chǔ)在一個(gè)物理存儲(chǔ)區(qū)域P0、P1、P2、P3或P4時(shí),可以采用與傳統(tǒng)方法相同的方式來(lái)存儲(chǔ)索引數(shù)據(jù)。
例如,如圖13和圖14所示,在通過主機(jī)102管理的B-樹結(jié)構(gòu)中被分類到休止節(jié)點(diǎn)REST中的第零節(jié)點(diǎn)NODE<0>、第三節(jié)點(diǎn)NODE<3>、第五節(jié)點(diǎn)NODE<5>和第六節(jié)點(diǎn)NODE<6>中所包含的索引數(shù)據(jù)可以被分別存儲(chǔ)在被包含在存儲(chǔ)器系統(tǒng)110中的多個(gè)物理存儲(chǔ)區(qū)域P0、P1、P2、P3、P4、P5、P6……之中的第零物理存儲(chǔ)區(qū)域至第四物理存儲(chǔ)區(qū)域P<0:4>中。
圖15示出了在圖13和圖14中示出的數(shù)據(jù)處理系統(tǒng)100中包含在新節(jié)點(diǎn)NEW中的索引數(shù)據(jù)的邏輯地址和物理地址的映射方法不同于包含在休止節(jié)點(diǎn)REST中的索引數(shù)據(jù)的邏輯地址-物理地址的映射方法。
在圖15中示出的表中,節(jié)點(diǎn)NODE<0:8>的每個(gè)可以由“邏輯地址”表示。
具體地,表示各個(gè)索引數(shù)據(jù)INDEX_DA<1:N>[+ND]的邏輯地址可以具有不同的值。然而,在圖15中,不管在節(jié)點(diǎn)NODE<0:8>的每個(gè)節(jié)點(diǎn)中包含的索引數(shù)據(jù)的數(shù)量,可以給予節(jié)點(diǎn)NODE<0:8>中的每一個(gè)節(jié)點(diǎn)一個(gè)邏輯地址。
例如,參照?qǐng)D13和圖14,第三節(jié)點(diǎn)NODE<3>可以包含三個(gè)索引數(shù)據(jù)。此時(shí),在第三節(jié)點(diǎn)NODE<3>中包含的三個(gè)索引數(shù)據(jù)中的每一個(gè)索引數(shù)據(jù)可以具有不同的邏輯地址。然而,在圖15中示出的表中,由于三個(gè)索引數(shù)據(jù)共同具有其中該三個(gè)索引數(shù)據(jù)被包含在第三節(jié)點(diǎn)NODE<3>中的共性,因此可以使該三個(gè)索引數(shù)據(jù)結(jié)合并且作為一個(gè)表值寫入。
在圖15中示出的表中,可以僅選擇性地寫入用于識(shí)別物理存儲(chǔ)區(qū)域的值和特定值作為“物理地址”。此后,用于識(shí)別物理存儲(chǔ)區(qū)域的值將被稱為物理存儲(chǔ)區(qū)域識(shí)別值。
首先,分別表示多個(gè)物理存儲(chǔ)區(qū)域P0、P1、P2、P3、P4、P5、P6……的物理地址可以具有不同的值。
例如,在多個(gè)物理存儲(chǔ)區(qū)域P0、P1、P2、P3、P4、P5、P6……之中,表示第零物理存儲(chǔ)區(qū)域P0的物理地址值可以被設(shè)定為0,表示第一物理存儲(chǔ)區(qū)域P1的物理地址值可以被設(shè)定為1,表示第二物理存儲(chǔ)區(qū)域P2的物理地址值可以被設(shè)定為2,表示第三物理存儲(chǔ)區(qū)域P3的物理地址值可以被設(shè)定為3,表示第四物理存儲(chǔ)區(qū)域P4的物理地址值可以被設(shè)定為4,表示第五物理存儲(chǔ)區(qū)域P5的物理地址值可以被設(shè)定為5,表示第六物理存儲(chǔ)區(qū)域P6的物理地址值可以被設(shè)定為6,表示第七物理存儲(chǔ)區(qū)域P7的物理地址值可以被設(shè)定為7,表示第八物理存儲(chǔ)區(qū)域P8的物理地址值可以被設(shè)定為8。采用這種方式,表示各個(gè)物理存儲(chǔ)區(qū)域P0、P1、P2、P3、P4、P5、P6……的物理地址可以具有不同的值。
此時(shí),盡管在圖15中沒有詳細(xì)地示出,但是除了用于識(shí)別多個(gè)物理存儲(chǔ)區(qū)域P0、P1、P2、P3、P4、P5、P6……的值以外,“物理地址”可以包含沒有具體定義其用途的值,例如,當(dāng)假設(shè)“物理地址”包括32位時(shí),32位中的一位或兩位可以在沒有具體定義其用途的狀態(tài)下被管理。
通過使用在“物理地址”中沒有具體定義其用途的特定值,根據(jù)本發(fā)明的第一實(shí)施例的存儲(chǔ)器系統(tǒng)110可以將被分類到新節(jié)點(diǎn)NEW中的兩個(gè)節(jié)點(diǎn)NODE<1、2>/NODE<4、8>連接到物理存儲(chǔ)區(qū)域P0、P1、P2、P3、P4、P5、P6或……。
為了該操作,存儲(chǔ)器系統(tǒng)110可以將僅其特定值彼此不同的兩個(gè)物理地址分配到物理存儲(chǔ)區(qū)域P0、P1、P2、P3、P4、P5、P6或……,并且將僅其特定值彼此不同的兩個(gè)物理地址映射到表示被分類到新節(jié)點(diǎn)NEW中的兩個(gè)節(jié)點(diǎn)NODE<1、2>/NODE<4、8>的兩個(gè)不同的邏輯地址。
例如,如圖15所示,表示在被分類到新節(jié)點(diǎn)NEW中的第一節(jié)點(diǎn)NODE<1>中包含的數(shù)據(jù)的邏輯地址可以具有物理存儲(chǔ)區(qū)域識(shí)別值5和特定值0。此外,表示在被分類到新節(jié)點(diǎn)NEW中的第二節(jié)點(diǎn)NODE<2>中包含的數(shù)據(jù)的邏輯地址可以具有物理存儲(chǔ)區(qū)域識(shí)別值5和特定值1。如此,被分類到新節(jié)點(diǎn)NEW中的第一節(jié)點(diǎn)NODE<1>和第二節(jié)點(diǎn)NODE<2>可以具有相同的物理存儲(chǔ)區(qū)域識(shí)別值5,但是具有不同的特定值0和1。因而,被分類到新節(jié)點(diǎn)NEW中的第一節(jié)點(diǎn)NODE<1>和第二節(jié)點(diǎn)NODE<2>可以存儲(chǔ)在存儲(chǔ)器系統(tǒng)110的一個(gè)物理存儲(chǔ)區(qū)域P5中,而各個(gè)節(jié)點(diǎn)的值可以通過特定值進(jìn)行區(qū)別。
類似地,表示在被分類到新節(jié)點(diǎn)NEW中的第四節(jié)點(diǎn)NODE<4>中包含的數(shù)據(jù)的邏輯地址可以具有物理存儲(chǔ)區(qū)域識(shí)別值6和特定值0。此外,表示在被分類到新節(jié)點(diǎn)NEW中的第八節(jié)點(diǎn)NODE<8>中包含的數(shù)據(jù)的邏輯地址可以具有物理存儲(chǔ)區(qū)域識(shí)別值6和特定值1。如此,被分類到新節(jié)點(diǎn)NEW中的第四節(jié)點(diǎn)NODE<4>和第八節(jié)點(diǎn)NODE<8>可以具有相同的物理存儲(chǔ)區(qū)域識(shí)別值6,但是可具有不同的特定值0和1。因而,被分類到新節(jié)點(diǎn)NEW中的第四節(jié)點(diǎn)NODE<4>和第八節(jié)點(diǎn)NODE<8>可以存儲(chǔ)在存儲(chǔ)器系統(tǒng)110的一個(gè)物理存儲(chǔ)區(qū)域P6中,而各個(gè)節(jié)點(diǎn)的值可以通過它們的特定值進(jìn)行區(qū)別。
此時(shí),以下將更詳細(xì)地說(shuō)明用于將僅其特定值彼此不同的兩個(gè)物理地址映射到表示被分類到新節(jié)點(diǎn)NEW中的兩個(gè)節(jié)點(diǎn)NODE<1、2>/NODE<4、8>的兩個(gè)不同的物理地址的方法。
主機(jī)102應(yīng)用的索引數(shù)據(jù)INDEX_DA<1:N>[+ND]中的每一個(gè)索引數(shù)據(jù)中包含的節(jié)點(diǎn)信息[+ND]可以包含用于識(shí)別對(duì)應(yīng)的索引數(shù)據(jù)所位于的節(jié)點(diǎn)的識(shí)別(ID)信息和表示索引數(shù)據(jù)所位于的節(jié)點(diǎn)是包含在新節(jié)點(diǎn)NEW中還是休止節(jié)點(diǎn)REST中的指示信息(例如,旗標(biāo))。
在多個(gè)索引數(shù)據(jù)INDEX_DA<1:N>[+ND]之中,在索引數(shù)據(jù)根據(jù)節(jié)點(diǎn)信息[+ND]具有與第一節(jié)點(diǎn)NODE<1>對(duì)應(yīng)的ID值同時(shí)包含被分類到新節(jié)點(diǎn)NEW中的旗標(biāo)值的情況下,表示對(duì)應(yīng)的索引數(shù)據(jù)的邏輯地址可以被映射到特定值為0且物理存儲(chǔ)區(qū)域識(shí)別值為5的物理地址。
在多個(gè)索引數(shù)據(jù)INDEX_DA<1:N>[+ND]之中,在索引數(shù)據(jù)根據(jù)節(jié)點(diǎn)信息[+ND]具有與第二節(jié)點(diǎn)NODE<2>對(duì)應(yīng)的ID值同時(shí)包含被分類到新節(jié)點(diǎn)NEW中的旗標(biāo)值的情況下,表示對(duì)應(yīng)的索引數(shù)據(jù)的邏輯地址可以被映射到特定值為1且物理存儲(chǔ)區(qū)域識(shí)別值為5的物理地址。
通過上述過程,被分類到新節(jié)點(diǎn)NEW中的第一節(jié)點(diǎn)NODE<1>和第二節(jié)點(diǎn)NODE<2>中包含的索引數(shù)據(jù)可以被映射到具有相同的物理存儲(chǔ)區(qū)域識(shí)別值5同時(shí)具有不同的特定值0和1的兩個(gè)物理地址。因而,如圖14所示,在被分類到新節(jié)點(diǎn)NEW中的第一節(jié)點(diǎn)NODE<1>和第二節(jié)點(diǎn)NODE<2>中包含的索引數(shù)據(jù)可以一起被存儲(chǔ)在第五物理存儲(chǔ)區(qū)域P5中。
類似地,在多個(gè)索引數(shù)據(jù)INDEX_DA<1:N>[+ND]之中,在索引數(shù)據(jù)根據(jù)節(jié)點(diǎn)信息[+ND]具有與第四節(jié)點(diǎn)NODE<4>對(duì)應(yīng)的ID值同時(shí)包含被分類到新節(jié)點(diǎn)NEW中的旗標(biāo)值的情況下,表示對(duì)應(yīng)的索引數(shù)據(jù)的邏輯地址可以被映射到特定值為0且物理存儲(chǔ)區(qū)域識(shí)別值為6的物理地址。
在多個(gè)索引數(shù)據(jù)INDEX_DA<1:N>[+ND]之中,在索引數(shù)據(jù)根據(jù)節(jié)點(diǎn)信息[+ND]具有與第八節(jié)點(diǎn)NODE<8>對(duì)應(yīng)的ID值同時(shí)包含被分類到新節(jié)點(diǎn)NEW中的旗標(biāo)值的情況下,表示對(duì)應(yīng)的索引數(shù)據(jù)的邏輯地址可以被映射到特定值為1且物理存儲(chǔ)區(qū)域識(shí)別值為6的物理地址。
通過上述過程,被分類到新節(jié)點(diǎn)NEW中的第四節(jié)點(diǎn)NODE<4>和第八節(jié)點(diǎn)NODE<8>中包含的索引數(shù)據(jù)可以被映射到具有相同的物理存儲(chǔ)區(qū)域識(shí)別值6同時(shí)具有不同的特定值0和1的兩個(gè)物理地址。因而,如圖14所示,在被分類到新節(jié)點(diǎn)NEW中的第四節(jié)點(diǎn)NODE<4>和第八節(jié)點(diǎn)NODE<8>中包含的索引數(shù)據(jù)可以一起被存儲(chǔ)在第六物理存儲(chǔ)區(qū)域P6中。
在根據(jù)本發(fā)明的第一實(shí)施例的存儲(chǔ)器系統(tǒng)110中,被分類到休止節(jié)點(diǎn)REST中的節(jié)點(diǎn)NODE<0、3、5、6、7>可以不使用在“物理地址”中沒有具體限定其用途的特定值。也就是,可以將映射到表示包含在被分類到休止節(jié)點(diǎn)REST中的節(jié)點(diǎn)NODE<0、3、5、6、7>中的數(shù)據(jù)的邏輯地址的物理地址設(shè)定在物理地址具有僅一個(gè)特定值的狀態(tài)下。
具體地,如上所述,主機(jī)102應(yīng)用的索引數(shù)據(jù)INDEX_DA<1:N>[+ND]中的每一個(gè)索引數(shù)據(jù)中包含的節(jié)點(diǎn)信息[+ND]可以包含用于識(shí)別對(duì)應(yīng)的索引數(shù)據(jù)所位于的節(jié)點(diǎn)的ID信息(未示出)和表示索引數(shù)據(jù)所位于的節(jié)點(diǎn)是包含在新節(jié)點(diǎn)NEW中還是休止節(jié)點(diǎn)REST中的旗標(biāo)信息(未示出)。
在多個(gè)索引數(shù)據(jù)INDEX_DA<1:N>[+ND]之中,在索引數(shù)據(jù)根據(jù)節(jié)點(diǎn)信息[+ND]具有與第零節(jié)點(diǎn)NODE<0>對(duì)應(yīng)的ID值同時(shí)包含被分類到休止節(jié)點(diǎn)REST中的旗標(biāo)值的情況下,表示對(duì)應(yīng)的索引數(shù)據(jù)的邏輯地址可以被映射到物理存儲(chǔ)區(qū)域識(shí)別值為0且特定值為0的物理地址。此時(shí),特定值為1且物理存儲(chǔ)區(qū)域識(shí)別值為0的物理地址可以被設(shè)定為不被映射到表示任意其它節(jié)點(diǎn)的邏輯地址。因而,如圖14所示,包含在被分類到休止節(jié)點(diǎn)REST中的第零節(jié)點(diǎn)NODE<0>中的索引數(shù)據(jù)可以單獨(dú)存儲(chǔ)在第零物理存儲(chǔ)區(qū)域P0中。
在多個(gè)索引數(shù)據(jù)INDEX_DA<1:N>[+ND]之中,在索引數(shù)據(jù)根據(jù)節(jié)點(diǎn)信息[+ND]具有與第三節(jié)點(diǎn)NODE<3>對(duì)應(yīng)的ID值同時(shí)包含被分類到休止節(jié)點(diǎn)REST中的旗標(biāo)值的情況下,表示對(duì)應(yīng)的索引數(shù)據(jù)的邏輯地址可以被映射到物理存儲(chǔ)區(qū)域識(shí)別值為1且特定值為0的物理地址。此時(shí),物理存儲(chǔ)區(qū)域識(shí)別值為1且特定值為1的物理地址可以被設(shè)定為不被映射到表示任意其它節(jié)點(diǎn)的邏輯地址。因而,如圖14所示,包含在被分類到休止節(jié)點(diǎn)REST中的第三節(jié)點(diǎn)NODE<3>中的索引數(shù)據(jù)可以單獨(dú)存儲(chǔ)在第一物理存儲(chǔ)區(qū)域P1中。
在多個(gè)索引數(shù)據(jù)INDEX_DA<1:N>[+ND]之中,在索引數(shù)據(jù)根據(jù)節(jié)點(diǎn)信息[+ND]具有與第五節(jié)點(diǎn)NODE<5>對(duì)應(yīng)的ID值同時(shí)包含被分類到休止節(jié)點(diǎn)REST中的旗標(biāo)值的情況下,表示對(duì)應(yīng)的索引數(shù)據(jù)的邏輯地址可以被映射到物理存儲(chǔ)區(qū)域識(shí)別值為2且特定值為0的物理地址。此時(shí),物理存儲(chǔ)區(qū)域識(shí)別值為2且特定值為1的物理地址可以被設(shè)定為不被映射到表示任意其它節(jié)點(diǎn)的邏輯地址。因而,如圖14所示,包含在被分類到休止節(jié)點(diǎn)REST中的第五節(jié)點(diǎn)NODE<5>中的索引數(shù)據(jù)可以單獨(dú)存儲(chǔ)在第二物理存儲(chǔ)區(qū)域P2中。
在多個(gè)索引數(shù)據(jù)INDEX_DA<1:N>[+ND]之中,在索引數(shù)據(jù)根據(jù)節(jié)點(diǎn)信息[+ND]具有與第六節(jié)點(diǎn)NODE<6>對(duì)應(yīng)的ID值同時(shí)包含被分類到休止節(jié)點(diǎn)REST中的旗標(biāo)值的情況下,表示對(duì)應(yīng)的索引數(shù)據(jù)的邏輯地址可以被映射到物理存儲(chǔ)區(qū)域識(shí)別值為3且特定值為0的物理地址。此時(shí),物理存儲(chǔ)區(qū)域識(shí)別值為3且特定值為1的物理地址可以被設(shè)定為不被映射到表示任意其它節(jié)點(diǎn)的邏輯地址。因而,如圖14所示,包含在被分類到休止節(jié)點(diǎn)REST中的第六節(jié)點(diǎn)NODE<6>中的索引數(shù)據(jù)可以單獨(dú)存儲(chǔ)在第三物理存儲(chǔ)區(qū)域P3中。
在多個(gè)索引數(shù)據(jù)INDEX_DA<1:N>[+ND]之中,在索引數(shù)據(jù)根據(jù)節(jié)點(diǎn)信息[+ND]具有與第七節(jié)點(diǎn)NODE<7>對(duì)應(yīng)的ID值同時(shí)包含被分類到休止節(jié)點(diǎn)REST中的旗標(biāo)值的情況下,表示對(duì)應(yīng)的索引數(shù)據(jù)的邏輯地址可以被映射到物理存儲(chǔ)區(qū)域識(shí)別值為4且特定值為0的物理地址。此時(shí),物理存儲(chǔ)區(qū)域識(shí)別值為4且特定值為1的物理地址可以被設(shè)定為不被映射到表示任意其它節(jié)點(diǎn)的邏輯地址。因而,如圖14所示,包含在被分類到休止節(jié)點(diǎn)REST中的第七節(jié)點(diǎn)NODE<7>中的索引數(shù)據(jù)可以單獨(dú)存儲(chǔ)在第四物理存儲(chǔ)區(qū)域P4中。
圖16是示出了根據(jù)本發(fā)明的第一實(shí)施例的數(shù)據(jù)處理系統(tǒng)的操作的流程圖。
圖16示出了根據(jù)本發(fā)明的第一實(shí)施例的存儲(chǔ)器系統(tǒng)110存儲(chǔ)多個(gè)索引數(shù)據(jù)INDEX_DA<1:N>[+ND]的序列。
具體地,在步驟S10中,存儲(chǔ)器系統(tǒng)110可以檢查在主機(jī)102應(yīng)用的索引數(shù)據(jù)INDEX_DA<1:N>[+ND]中的每一個(gè)索引數(shù)據(jù)中包含的節(jié)點(diǎn)信息[+ND],并且確定是被分類到新節(jié)點(diǎn)NEW中的索引數(shù)據(jù)被輸入還是被分類到休止節(jié)點(diǎn)REST中的索引數(shù)據(jù)被輸入。
此時(shí),當(dāng)從主機(jī)102輸入的多個(gè)索引數(shù)據(jù)INDEX_DA<1:N>[+ND]是被分類到新節(jié)點(diǎn)NEW中的索引數(shù)據(jù)時(shí),在步驟S20中,存儲(chǔ)器系統(tǒng)110可以檢查在存儲(chǔ)器系統(tǒng)110中管理的多個(gè)物理存儲(chǔ)區(qū)域P0、P1、P2、P3、P4、P5、P6……之中是否存在僅其一半被使用的物理存儲(chǔ)區(qū)域。也就是,存儲(chǔ)器系統(tǒng)110可以檢查在存儲(chǔ)器系統(tǒng)110中管理的多個(gè)物理存儲(chǔ)區(qū)域P0、P1、P2、P3、P4、P5、P6……之中是否存在由于被分類到新節(jié)點(diǎn)NEW中的索引數(shù)據(jù)被先前地存儲(chǔ)在其中而使得僅其一半被使用的物理存儲(chǔ)區(qū)域。
當(dāng)在多個(gè)物理存儲(chǔ)區(qū)域P0、P1、P2、P3、P4、P5、P6……之中存在僅其一半被使用的物理存儲(chǔ)區(qū)域時(shí),在步驟S50中,存儲(chǔ)器系統(tǒng)110可以使用對(duì)應(yīng)的物理存儲(chǔ)區(qū)域的另一半來(lái)存儲(chǔ)在步驟S10中被輸入的、分類到新節(jié)點(diǎn)NEW中的索引數(shù)據(jù)。
另一方面,當(dāng)在多個(gè)物理存儲(chǔ)區(qū)域P0、P1、P2、P3、P4、P5、P6……之中不存在僅其一半被使用的物理存儲(chǔ)區(qū)域時(shí),在步驟S30中,存儲(chǔ)器系統(tǒng)110可以在多個(gè)物理存儲(chǔ)區(qū)域P0、P1、P2、P3、P4、P5、P6……之中選擇一個(gè)完全空的物理存儲(chǔ)區(qū)域并且使用所選的物理存儲(chǔ)區(qū)域的一半來(lái)存儲(chǔ)在步驟S10中輸入的、分類到新節(jié)點(diǎn)NEW中的索引數(shù)據(jù)。
此外,當(dāng)從主機(jī)102輸入的多個(gè)索引數(shù)據(jù)INDEX_DA<1:N>[+ND]是被分類到休止節(jié)點(diǎn)REST中的索引數(shù)據(jù)時(shí),在步驟S40中,存儲(chǔ)器系統(tǒng)110可以在多個(gè)物理存儲(chǔ)區(qū)域P0、P1、P2、P3、P4、P5、P6……之中選擇一個(gè)完全空的物理存儲(chǔ)區(qū)域并且使用所選的物理存儲(chǔ)區(qū)域的整個(gè)部分來(lái)存儲(chǔ)在步驟S10中輸入的、分類到休止節(jié)點(diǎn)REST中的索引數(shù)據(jù)。
通過存儲(chǔ)在步驟S10中輸入的、被分類到休止節(jié)點(diǎn)REST或新節(jié)點(diǎn)NEW中的索引數(shù)據(jù)的操作S30、S40或S50,在步驟S60中,存儲(chǔ)器系統(tǒng)110可以更新地址映射表。
如上所述,當(dāng)以B-樹結(jié)構(gòu)管理的多個(gè)索引數(shù)據(jù)之中被分類到休止節(jié)點(diǎn)REST中的索引數(shù)據(jù)被存儲(chǔ)在物理空間中時(shí),根據(jù)本發(fā)明的第一實(shí)施例的數(shù)據(jù)處理系統(tǒng)可以將包含在一個(gè)休止節(jié)點(diǎn)REST中的索引數(shù)據(jù)存儲(chǔ)在一個(gè)物理存儲(chǔ)區(qū)域中。然而,當(dāng)被分類到新節(jié)點(diǎn)NEW中的索引數(shù)據(jù)被存儲(chǔ)在物理空間時(shí),數(shù)據(jù)處理系統(tǒng)可以收集在兩個(gè)新節(jié)點(diǎn)NEW中包含的索引數(shù)據(jù)并且將所收集的索引數(shù)據(jù)存儲(chǔ)在一個(gè)物理存儲(chǔ)區(qū)域中。
因而,如下面圖20所示,根據(jù)本發(fā)明的第一實(shí)施例的存儲(chǔ)器系統(tǒng)中被占據(jù)來(lái)存儲(chǔ)分類到新節(jié)點(diǎn)NEW中的索引數(shù)據(jù)的物理空間(新節(jié)點(diǎn)區(qū)域)可以減小到傳統(tǒng)的存儲(chǔ)器系統(tǒng)的物理空間的一半(30%→15%)。
<第二實(shí)施例>
通過參照?qǐng)D1中示出的數(shù)據(jù)處理系統(tǒng)100的配置,圖17示出了根據(jù)本發(fā)明的第二實(shí)施例的用于執(zhí)行管理索引數(shù)據(jù)的操作的數(shù)據(jù)處理系統(tǒng)100的配置。也就是,根據(jù)本發(fā)明的第二實(shí)施例的數(shù)據(jù)處理系統(tǒng)100可以包括主機(jī)102和存儲(chǔ)器系統(tǒng)110。存儲(chǔ)器系統(tǒng)110可以包括控制器130和非易失性存儲(chǔ)器裝置150。
圖18是示出了在根據(jù)本發(fā)明的第二實(shí)施例的數(shù)據(jù)處理系統(tǒng)中用于索引數(shù)據(jù)的邏輯地址和物理地址之間的映射的示例的圖。
圖17和圖18示出了根據(jù)對(duì)應(yīng)的索引數(shù)據(jù)所位于的節(jié)點(diǎn)的狀態(tài)而采用不同的形式存儲(chǔ)在根據(jù)本發(fā)明的第二實(shí)施例的數(shù)據(jù)處理系統(tǒng)100中由主機(jī)102以B-樹結(jié)構(gòu)管理的索引數(shù)據(jù)INDEX_DA<1:N>[+ND]的每個(gè)。
具體地,由主機(jī)102以B-樹結(jié)構(gòu)管理的索引數(shù)據(jù)INDEX_DA<1:N>[+ND]的每個(gè)可以包含關(guān)于索引數(shù)據(jù)所位于的節(jié)點(diǎn)的節(jié)點(diǎn)信息[+ND]。此時(shí),由主機(jī)102管理的B-樹結(jié)構(gòu)的各節(jié)點(diǎn)可以被設(shè)定為節(jié)點(diǎn)具有第一容量的狀態(tài)。
存儲(chǔ)器系統(tǒng)110可以具有被劃分成每個(gè)與第二容量對(duì)應(yīng)的多個(gè)物理存儲(chǔ)區(qū)域P0、P1、P2、P3、P4、P5、P6、P7、P8、P9、P10、P11、P12、P13……的內(nèi)部物理存儲(chǔ)空間。也就是,包含在存儲(chǔ)器系統(tǒng)110中的存儲(chǔ)器裝置150的存儲(chǔ)空間可以被劃分成每個(gè)被設(shè)定為第二容量的多個(gè)物理存儲(chǔ)區(qū)域P0、P1、P2、P3、P4、P5、P6、P7、P8、P9、P10、P11、P12、P13……。
此時(shí),第一容量可以為第二容量的兩倍。
當(dāng)假設(shè)第一容量為2時(shí),如圖12A至12F所示,包含在B-樹結(jié)構(gòu)中的節(jié)點(diǎn)中的每一個(gè)節(jié)點(diǎn)可以存儲(chǔ)兩個(gè)索引數(shù)據(jù)。此時(shí),第二容量可以被設(shè)定為1。然而,根據(jù)設(shè)計(jì)者的選擇,第一容量還可以被設(shè)定為大于2的數(shù)值。
此外,第二容量可以被設(shè)定為可以通過一次寫入操作被寫入在存儲(chǔ)器系統(tǒng)110中包括的存儲(chǔ)器裝置150中的數(shù)據(jù)的最大容量。例如,當(dāng)存儲(chǔ)器裝置150為非易失性存儲(chǔ)器裝置時(shí),第二容量可以與可以通過一次寫入操作被寫入的頁(yè)面的最大容量對(duì)應(yīng)。
因而,可以使用兩個(gè)物理存儲(chǔ)區(qū)域來(lái)存儲(chǔ)在B-樹結(jié)構(gòu)中包含的多個(gè)節(jié)點(diǎn)NODE<0:8>之中的一個(gè)節(jié)點(diǎn)中包含的索引數(shù)據(jù)。
圖17和圖18示出了假設(shè)第一容量為4的情況下在B-樹結(jié)構(gòu)的各節(jié)點(diǎn)中存儲(chǔ)最多四個(gè)索引數(shù)據(jù)的示例。此時(shí),第二容量可以被設(shè)定為2。
因而,如圖17所示,由存儲(chǔ)器系統(tǒng)110管理的物理存儲(chǔ)區(qū)域P0、P1、P2、P3、P4、P5、P6、P7、P8、P9、P10、P11、P12、P13……中的每一個(gè)物理存儲(chǔ)區(qū)域可以存儲(chǔ)最多兩個(gè)索引數(shù)據(jù)。
此外,如圖18所示,由主機(jī)102管理的B-樹結(jié)構(gòu)中包含的節(jié)點(diǎn)NODE<0:8>中的每一個(gè)節(jié)點(diǎn)可以包含最多四個(gè)數(shù)據(jù)。
因而,在圖17和圖18中示出的數(shù)據(jù)處理系統(tǒng)100中,可以存儲(chǔ)在由主機(jī)102管理的B-樹結(jié)構(gòu)中包含的節(jié)點(diǎn)NODE<0:8>中的每一個(gè)節(jié)點(diǎn)中的索引數(shù)據(jù)的最大數(shù)量可以為可以存儲(chǔ)在由存儲(chǔ)器系統(tǒng)110管理的物理存儲(chǔ)區(qū)域P0、P1、P2、P3、P4、P5、P6、P7、P8、P9、P10、P11、P12、P13……中的每一個(gè)物理存儲(chǔ)區(qū)域中的索引數(shù)據(jù)的最大數(shù)量的兩倍。
因此,由主機(jī)102管理的B-樹結(jié)構(gòu)中包含的節(jié)點(diǎn)NODE<0:8>中的每一個(gè)節(jié)點(diǎn)可以被設(shè)定成與多個(gè)物理存儲(chǔ)區(qū)域P0、P1、P2、P3、P4、P5、P6、P7、P8、P9、P10、P11、P12、P13……之中的兩個(gè)物理存儲(chǔ)區(qū)域?qū)?yīng)。例如,在B-樹結(jié)構(gòu)中包含的多個(gè)節(jié)點(diǎn)NODE<0:8>之中的第零節(jié)點(diǎn)NODE<0>可以被設(shè)定成與多個(gè)物理存儲(chǔ)區(qū)域P0、P1、P2、P3、P4、P5、P6、P7、P8、P9、P10、P11、P12、P13……之中的第零物理存儲(chǔ)區(qū)域P0和第一物理存儲(chǔ)區(qū)域P1對(duì)應(yīng),并且第三節(jié)點(diǎn)NODE<3>可以被設(shè)定成與多個(gè)物理存儲(chǔ)區(qū)域P0、P1、P2、P3、P4、P5、P6、P7、P8、P9、P10、P11、P12、P13……之中的第二物理存儲(chǔ)區(qū)域P2和第三物理存儲(chǔ)區(qū)域P3對(duì)應(yīng)。
以下將更詳細(xì)地說(shuō)明根據(jù)本發(fā)明的第二實(shí)施例的存儲(chǔ)器系統(tǒng)110的操作。
首先,存儲(chǔ)器系統(tǒng)110可以檢查主機(jī)102應(yīng)用的索引數(shù)據(jù)INDEX_DA<1:N>[+ND]中每一個(gè)索引數(shù)據(jù)的節(jié)點(diǎn)信息[+ND]并且確定索引數(shù)據(jù)INDEX_DA<1:N>[+ND]的每個(gè)被包含在新節(jié)點(diǎn)NEW和休止節(jié)點(diǎn)REST之間的哪個(gè)節(jié)點(diǎn)中。
例如,在由主機(jī)102管理的多個(gè)節(jié)點(diǎn)NODE<0:8>之中,第零節(jié)點(diǎn)NODE<0>、第三節(jié)點(diǎn)NODE<3>、第五節(jié)點(diǎn)NODE<5>、第六節(jié)點(diǎn)NODE<6>和第七節(jié)點(diǎn)NODE<7>可以被分類到休止節(jié)點(diǎn)REST中。因而,在從主機(jī)102傳輸?shù)酱鎯?chǔ)器系統(tǒng)的多個(gè)索引數(shù)據(jù)INDEX_DA<1:N>[+ND]之中的被包含在第零節(jié)點(diǎn)NODE<0>、第三節(jié)點(diǎn)NODE<3>、第五節(jié)點(diǎn)NODE<5>、第六節(jié)點(diǎn)NODE<6>和第七節(jié)點(diǎn)NODE<7>中的索引數(shù)據(jù)的每個(gè)可以含有節(jié)點(diǎn)信息[+ND],該節(jié)點(diǎn)信息[+ND]表示包括對(duì)應(yīng)的索引數(shù)據(jù)的節(jié)點(diǎn)被包含在休止節(jié)點(diǎn)REST中。
另一方面,在由主機(jī)102管理的多個(gè)節(jié)點(diǎn)NODE<0:8>之中,第一節(jié)點(diǎn)NODE<1>、第二節(jié)點(diǎn)NODE<2>、第四節(jié)點(diǎn)NODE<4>和第八節(jié)點(diǎn)NODE<8>可以被分類到新節(jié)點(diǎn)NEW中。因而,在從主機(jī)102傳輸?shù)酱鎯?chǔ)器系統(tǒng)110的多個(gè)索引數(shù)據(jù)INDEX_DA<1:N>[+ND]之中的被包含在第一節(jié)點(diǎn)NODE<1>、第二節(jié)點(diǎn)NODE<2>、第四節(jié)點(diǎn)NODE<4>和第八節(jié)點(diǎn)NODE<8>中的索引數(shù)據(jù)的每個(gè)可以包含節(jié)點(diǎn)信息[+ND],該節(jié)點(diǎn)信息[+ND]表示包含對(duì)應(yīng)的索引數(shù)據(jù)的節(jié)點(diǎn)被包含在新節(jié)點(diǎn)NEW中。
如此,當(dāng)存儲(chǔ)器系統(tǒng)110檢查主機(jī)102應(yīng)用的索引數(shù)據(jù)INDEX_DA<1:N>[+ND]中的每一個(gè)的節(jié)點(diǎn)信息[+ND]時(shí),存儲(chǔ)器系統(tǒng)110可以識(shí)別對(duì)應(yīng)的索引數(shù)據(jù)被包含在哪個(gè)節(jié)點(diǎn)中。
此外,當(dāng)在主機(jī)102應(yīng)用的多個(gè)索引數(shù)據(jù)INDEX_DA<1:N>[+ND]之中檢查到索引數(shù)據(jù)為休止節(jié)點(diǎn)REST時(shí),存儲(chǔ)器系統(tǒng)110可以將被分類到休止節(jié)點(diǎn)REST中的一個(gè)索引數(shù)據(jù)存儲(chǔ)在兩個(gè)物理存儲(chǔ)區(qū)域P0、P1/P2、P3/P4、P5/P6、P7/P8、P9中(1730)。
如此,在被分類到休止節(jié)點(diǎn)REST中的一個(gè)索引數(shù)據(jù)被存儲(chǔ)在兩個(gè)物理存儲(chǔ)區(qū)域P0、P1/P2、P3/P4、P5/P6、P7/P8、P9中時(shí),可采用與傳統(tǒng)的方法同樣的方式存儲(chǔ)索引數(shù)據(jù)。
例如,如圖17和圖18所示,在主機(jī)102中管理的B-樹結(jié)構(gòu)中被分類到休止節(jié)點(diǎn)REST中的第零節(jié)點(diǎn)NODE<0>中所包含的索引數(shù)據(jù)可以存儲(chǔ)在多個(gè)物理存儲(chǔ)區(qū)域P0、P1、P2、P3、P4、P5、P6、P7、P8、P9、P10、P11、P12、P13……之中的第零物理存儲(chǔ)區(qū)域P0和第一物理存儲(chǔ)區(qū)域P1中。
在主機(jī)102中管理的B-樹結(jié)構(gòu)中被分類到休止節(jié)點(diǎn)REST中的第三節(jié)點(diǎn)NODE<3>中所包含的索引數(shù)據(jù)可以存儲(chǔ)在多個(gè)物理存儲(chǔ)區(qū)域P0、P1、P2、P3、P4、P5、P6、P7、P8、P9、P10、P11、P12、P13……之中的第二物理存儲(chǔ)區(qū)域P2和第三物理存儲(chǔ)區(qū)域P3中。
在主機(jī)102中管理的B-樹結(jié)構(gòu)中被分類到休止節(jié)點(diǎn)REST中的第五節(jié)點(diǎn)NODE<5>中所包含的索引數(shù)據(jù)可以存儲(chǔ)在多個(gè)物理存儲(chǔ)區(qū)域P0、P1、P2、P3、P4、P5、P6、P7、P8、P9、P10、P11、P12、P13……之中的第四物理存儲(chǔ)區(qū)域P4和第五物理存儲(chǔ)區(qū)域P5中。
在主機(jī)102中管理的B-樹結(jié)構(gòu)中被分類到休止節(jié)點(diǎn)REST中的第六節(jié)點(diǎn)NODE<6>中所包含的索引數(shù)據(jù)可以存儲(chǔ)在多個(gè)物理存儲(chǔ)區(qū)域P0、P1、P2、P3、P4、P5、P6、P7、P8、P9、P10、P11、P12、P13……之中的第六物理存儲(chǔ)區(qū)域P6和第七物理存儲(chǔ)區(qū)域P7中。
在主機(jī)102中管理的B-樹結(jié)構(gòu)中被分類到休止節(jié)點(diǎn)REST中的第七節(jié)點(diǎn)NODE<7>中所包含的索引數(shù)據(jù)可以存儲(chǔ)在多個(gè)物理存儲(chǔ)區(qū)域P0、P1、P2、P3、P4、P5、P6、P7、P8、P9、P10、P11、P12、P13……之中的第八物理存儲(chǔ)區(qū)域P8和第九物理存儲(chǔ)區(qū)域P9中。
當(dāng)在主機(jī)102應(yīng)用的多個(gè)索引數(shù)據(jù)INDEX_DA<1:N>[+ND]之中檢查到索引數(shù)據(jù)為新節(jié)點(diǎn)NEW時(shí),存儲(chǔ)器系統(tǒng)110可以將被分類到新節(jié)點(diǎn)NEW中的一個(gè)索引數(shù)據(jù)存儲(chǔ)在一個(gè)物理存儲(chǔ)區(qū)域P10、P11、P12或P13(1720)。
被分類到新節(jié)點(diǎn)NEW中的一個(gè)索引數(shù)據(jù)可以存儲(chǔ)在一個(gè)物理存儲(chǔ)區(qū)域P10、P11、P12或P13中的原因在于:如參照?qǐng)D12A至圖12F所說(shuō)明的,當(dāng)索引數(shù)據(jù)被分類到新節(jié)點(diǎn)NEW中時(shí),僅使用了第一容量的一半,第一容量對(duì)應(yīng)于可以存儲(chǔ)在以B-樹結(jié)構(gòu)管理的節(jié)點(diǎn)中的每一個(gè)節(jié)點(diǎn)中的索引數(shù)據(jù)的最大數(shù)量。換句話說(shuō),也就是因?yàn)楸环诸惖叫鹿?jié)點(diǎn)NEW中的索引數(shù)據(jù)的數(shù)量始終與第二尺寸對(duì)應(yīng)。
也就是,如圖13所示,可以采用如下的方式管理在由主機(jī)102管理的B-樹結(jié)構(gòu)中被分類到新節(jié)點(diǎn)NEW中的第一節(jié)點(diǎn)NODE<1>、第二節(jié)點(diǎn)NODE<2>、第四節(jié)點(diǎn)NODE<4>和第八節(jié)點(diǎn)NODE<8>:僅包括與可以存儲(chǔ)在節(jié)點(diǎn)NODE<0:8>中的每一個(gè)節(jié)點(diǎn)中的最大數(shù)量的索引數(shù)據(jù)對(duì)應(yīng)的四個(gè)索引數(shù)據(jù)之中的兩個(gè)索引數(shù)據(jù)的空間作為有效空間被管理,并且剩余的空間作為空的空間被管理。
因而,在傳統(tǒng)的方法中,當(dāng)由主機(jī)102管理的B-樹結(jié)構(gòu)中包含的節(jié)點(diǎn)NODE<0:8>中的每一個(gè)節(jié)點(diǎn)占據(jù)存儲(chǔ)器系統(tǒng)110中的兩個(gè)物理存儲(chǔ)區(qū)域P0、P1/P2、P3/P4、P5/P6、P7/P8、P9時(shí),即使僅節(jié)點(diǎn)的存儲(chǔ)空間中的一半包含有效索引數(shù)據(jù),分類到新節(jié)點(diǎn)NEW中的節(jié)點(diǎn)NODE<1、2、4、8>的每個(gè)也應(yīng)該使用全部?jī)蓚€(gè)物理存儲(chǔ)區(qū)域。
然而,當(dāng)節(jié)點(diǎn)NODE<1、2、4、8>被分類到新節(jié)點(diǎn)NEW中時(shí),如圖17所示,根據(jù)本發(fā)明的第二實(shí)施例的存儲(chǔ)器系統(tǒng)110可以將一個(gè)節(jié)點(diǎn)NODE<1、2、4、8>存儲(chǔ)在一個(gè)物理存儲(chǔ)區(qū)域P10、P11、P12或P13中。因而,其中如圖17所示地存儲(chǔ)被分類到新節(jié)點(diǎn)NEW中的索引數(shù)據(jù)的物理存儲(chǔ)區(qū)域P10、P11、P12或P13可以被與可以存儲(chǔ)在其中的索引數(shù)據(jù)的最大數(shù)量對(duì)應(yīng)的兩個(gè)數(shù)據(jù)完全填充。
由于存儲(chǔ)器系統(tǒng)110識(shí)別出被分類到新節(jié)點(diǎn)NEW中的索引數(shù)據(jù)僅存儲(chǔ)在一個(gè)物理存儲(chǔ)區(qū)域P10、P11、P12或P13中,因此即使索引數(shù)據(jù)將來(lái)被更新到休止節(jié)點(diǎn)REST中,存儲(chǔ)器系統(tǒng)110也可以在沒有任何問題的情況下管理被分類到新節(jié)點(diǎn)NEW中的索引數(shù)據(jù)。
圖18示出了在圖17和圖18中示出的數(shù)據(jù)處理系統(tǒng)100中新節(jié)點(diǎn)NEW中包含的索引數(shù)據(jù)的邏輯地址和物理地址的映射方法不同于包含在休止節(jié)點(diǎn)REST中的索引數(shù)據(jù)的邏輯地址-物理地址的映射方法。
在圖18示出的表中,可以由“邏輯地址”表示節(jié)點(diǎn)NODE<0:8>的每一個(gè)節(jié)點(diǎn)。
具體地,表示各個(gè)索引數(shù)據(jù)INDEX_DA<1:N>[+ND]的邏輯地址可以具有不同的值。然而,在圖15B中,不管在節(jié)點(diǎn)NODE<0:8>中的每一個(gè)節(jié)點(diǎn)中包含的索引數(shù)據(jù)的數(shù)量,可以給予節(jié)點(diǎn)NODE<0:8>中的每一個(gè)節(jié)點(diǎn)一個(gè)邏輯地址。
例如,參照?qǐng)D17和圖18,第三節(jié)點(diǎn)NODE<3>可以包含三個(gè)索引數(shù)據(jù)。此時(shí),在第三節(jié)點(diǎn)NODE<3>中包含的三個(gè)索引數(shù)據(jù)中的每一個(gè)索引數(shù)據(jù)可以具有不同的邏輯地址。然而,在圖18中示出的表中,由于三個(gè)索引數(shù)據(jù)共同具有其中該三個(gè)索引數(shù)據(jù)被包含在第三節(jié)點(diǎn)NODE<3>中的共性,因此可以使該三個(gè)索引數(shù)據(jù)結(jié)合并且作為一個(gè)表值寫入。
在圖18中示出的表中,“物理地址”可以僅包含物理存儲(chǔ)區(qū)域識(shí)別值。
分別表示多個(gè)物理存儲(chǔ)區(qū)域P0、P1、P2、P3、P4、P5、P6……的物理地址可以具有不同的值。
例如,在多個(gè)物理存儲(chǔ)區(qū)域P0、P1、P2、P3、P4、P5、P6……之中,表示第零物理存儲(chǔ)區(qū)域P0的物理地址值可以被設(shè)定為0,表示第一物理存儲(chǔ)區(qū)域P1的物理地址值可以被設(shè)定為1,表示第二物理存儲(chǔ)區(qū)域P2的物理地址值可以被設(shè)定為2,表示第三物理存儲(chǔ)區(qū)域P3的物理地址值可以被設(shè)定為3,表示第四物理存儲(chǔ)區(qū)域P4的物理地址值可以被設(shè)定為4,表示第五物理存儲(chǔ)區(qū)域P5的物理地址值可以被設(shè)定為5,表示第六物理存儲(chǔ)區(qū)域P6的物理地址值可以被設(shè)定為6,表示第七物理存儲(chǔ)區(qū)域P7的物理地址值可以被設(shè)定為7,表示第八物理存儲(chǔ)區(qū)域P8的物理地址值可以被設(shè)定為8。采用這種方式,表示各個(gè)物理存儲(chǔ)區(qū)域P0、P1、P2、P3、P4、P5、P6……的物理地址可以具有不同的值。
根據(jù)本發(fā)明的第二實(shí)施例的存儲(chǔ)器系統(tǒng)110可以將被分類到新節(jié)點(diǎn)NEW中的節(jié)點(diǎn)NODE<1、2、4或8>映射到物理存儲(chǔ)區(qū)域P10、P11、P12或P13。
因而,表示在被分類到新節(jié)點(diǎn)NEW中的第一節(jié)點(diǎn)NODE<1>中包括的數(shù)據(jù)的邏輯地址可以具有值為10的物理存儲(chǔ)區(qū)域識(shí)別值。
此外,表示在被分類到新節(jié)點(diǎn)NEW中的第二節(jié)點(diǎn)NODE<2>中包括的數(shù)據(jù)的邏輯地址可以具有值為11的物理存儲(chǔ)區(qū)域識(shí)別值。
此外,表示在被分類到新節(jié)點(diǎn)NEW中的第四節(jié)點(diǎn)NODE<4>中包括的數(shù)據(jù)的邏輯地址可以具有值為12的物理存儲(chǔ)區(qū)域識(shí)別值。
此外,表示在被分類到新節(jié)點(diǎn)NEW中的第八節(jié)點(diǎn)NODE<8>中包括的數(shù)據(jù)的邏輯地址可以具有值為13的物理存儲(chǔ)區(qū)域識(shí)別值。
此時(shí),可以如下更詳細(xì)地說(shuō)明將表示被分類到新節(jié)點(diǎn)NEW中的一個(gè)節(jié)點(diǎn)NODE<1、2、4或8>的邏輯地址映射到物理地址的方法。
首先,主機(jī)102應(yīng)用的索引數(shù)據(jù)INDEX_DA<1:N>[+ND]中的每一個(gè)索引數(shù)據(jù)中包含的節(jié)點(diǎn)信息[+ND]可以包含用于識(shí)別對(duì)應(yīng)的索引數(shù)據(jù)所位于的節(jié)點(diǎn)的ID信息(未示出)和表示索引數(shù)據(jù)所位于的節(jié)點(diǎn)是包含在新節(jié)點(diǎn)NEW中還是包含在休止節(jié)點(diǎn)REST中的旗標(biāo)信息(未示出)。
在多個(gè)索引數(shù)據(jù)INDEX_DA<1:N>[+ND]之中,在索引數(shù)據(jù)根據(jù)節(jié)點(diǎn)信息[+ND]具有與第一節(jié)點(diǎn)NODE<1>對(duì)應(yīng)的ID值同時(shí)包含被分類到新節(jié)點(diǎn)NEW中的旗標(biāo)值的情況下,表示對(duì)應(yīng)的索引數(shù)據(jù)的邏輯地址可以被映射到物理存儲(chǔ)區(qū)域識(shí)別值為10的物理地址。
在多個(gè)索引數(shù)據(jù)INDEX_DA<1:N>[+ND]之中,在索引數(shù)據(jù)根據(jù)節(jié)點(diǎn)信息[+ND]具有與第二節(jié)點(diǎn)NODE<2>對(duì)應(yīng)的ID值同時(shí)包含被分類到新節(jié)點(diǎn)NEW中的旗標(biāo)值的情況下,表示對(duì)應(yīng)的索引數(shù)據(jù)的邏輯地址可以被映射到物理存儲(chǔ)區(qū)域識(shí)別值為11的物理地址。
在多個(gè)索引數(shù)據(jù)INDEX_DA<1:N>[+ND]之中,在索引數(shù)據(jù)根據(jù)節(jié)點(diǎn)信息[+ND]具有與第四節(jié)點(diǎn)NODE<4>對(duì)應(yīng)的ID值同時(shí)包含被分類到新節(jié)點(diǎn)NEW中的旗標(biāo)值的情況下,表示對(duì)應(yīng)的索引數(shù)據(jù)的邏輯地址可以被映射到物理存儲(chǔ)區(qū)域識(shí)別值為12的物理地址。
在多個(gè)索引數(shù)據(jù)INDEX_DA<1:N>[+ND]之中,在索引數(shù)據(jù)根據(jù)節(jié)點(diǎn)信息[+ND]具有與第八節(jié)點(diǎn)NODE<8>對(duì)應(yīng)的ID值同時(shí)包含被分類到新節(jié)點(diǎn)NEW中的旗標(biāo)值的情況下,表示對(duì)應(yīng)的索引數(shù)據(jù)的邏輯地址可以被映射到物理存儲(chǔ)區(qū)域識(shí)別值為13的物理地址。
被分類到休止節(jié)點(diǎn)REST中的節(jié)點(diǎn)NODE<0、3、5、6、7>中的每一個(gè)節(jié)點(diǎn)可以被映射到兩個(gè)物理存儲(chǔ)區(qū)域P0、P1/P2、P3/P4、P5/P6、P7/P8、P9。
因而,表示在被分類到休止節(jié)點(diǎn)REST中的第零節(jié)點(diǎn)NODE<0>中包含的索引數(shù)據(jù)的邏輯地址可以具有0和1兩個(gè)值作為物理存儲(chǔ)區(qū)域識(shí)別值。
此外,表示在被分類到休止節(jié)點(diǎn)REST中的第三節(jié)點(diǎn)NODE<3>中包含的索引數(shù)據(jù)的邏輯地址可以具有2和3兩個(gè)值作為物理存儲(chǔ)區(qū)域識(shí)別值。
此外,表示在被分類到休止節(jié)點(diǎn)REST中的第五節(jié)點(diǎn)NODE<5>中包含的索引數(shù)據(jù)的邏輯地址可以具有4和5兩個(gè)值作為物理存儲(chǔ)區(qū)域識(shí)別值。
此外,表示在被分類到休止節(jié)點(diǎn)REST中的第六節(jié)點(diǎn)NODE<6>中包含的索引數(shù)據(jù)的邏輯地址可以具有6和7兩個(gè)值作為物理存儲(chǔ)區(qū)域識(shí)別值。
此外,表示在被分類到休止節(jié)點(diǎn)REST中的第七節(jié)點(diǎn)NODE<7>中包含的索引數(shù)據(jù)的邏輯地址可以具有8和9兩個(gè)值作為物理存儲(chǔ)區(qū)域識(shí)別值。
此時(shí),可以如下更詳細(xì)地說(shuō)明將表示被分類到休止節(jié)點(diǎn)REST中的一個(gè)節(jié)點(diǎn)NODE<0、3、5、6、7>的邏輯地址映射到兩個(gè)物理地址的方法。
具體地,如上所述,主機(jī)102應(yīng)用的索引數(shù)據(jù)INDEX_DA<1:N>[+ND]中的每一個(gè)索引數(shù)據(jù)中包含的節(jié)點(diǎn)信息[+ND]可以包含用于識(shí)別對(duì)應(yīng)的索引數(shù)據(jù)所位于的節(jié)點(diǎn)的ID信息(未示出)和表示索引數(shù)據(jù)所位于的節(jié)點(diǎn)是包含在新節(jié)點(diǎn)NEW中還是包含在休止節(jié)點(diǎn)REST中的旗標(biāo)信息(未示出)。
在多個(gè)索引數(shù)據(jù)INDEX_DA<1:N>[+ND]之中,在索引數(shù)據(jù)根據(jù)節(jié)點(diǎn)信息[+ND]具有與第零節(jié)點(diǎn)NODE<0>對(duì)應(yīng)的ID值同時(shí)包含被分類到休止節(jié)點(diǎn)REST中的旗標(biāo)值的情況下,物理存儲(chǔ)區(qū)域識(shí)別值為0的物理地址可以被映射到表示對(duì)應(yīng)的索引數(shù)據(jù)的上半部分的邏輯地址,物理存儲(chǔ)區(qū)域識(shí)別值為1的物理地址可以被映射到表示對(duì)應(yīng)的索引數(shù)據(jù)的下半部分的邏輯地址。因而,如圖17所示,在被分類到休止節(jié)點(diǎn)REST中的第零節(jié)點(diǎn)NODE<0>中包含的索引數(shù)據(jù)可以被劃分且存儲(chǔ)在第零物理存儲(chǔ)區(qū)域P0和第一物理存儲(chǔ)區(qū)域P1中。
在多個(gè)索引數(shù)據(jù)INDEX_DA<1:N>[+ND]之中,在索引數(shù)據(jù)根據(jù)節(jié)點(diǎn)信息[+ND]具有與第三節(jié)點(diǎn)NODE<3>對(duì)應(yīng)的ID值同時(shí)包含被分類到休止節(jié)點(diǎn)REST中的旗標(biāo)值的情況下,物理存儲(chǔ)區(qū)域識(shí)別值為2的物理地址可以被映射到表示對(duì)應(yīng)的索引數(shù)據(jù)的上半部分的邏輯地址,物理存儲(chǔ)區(qū)域識(shí)別值為3的物理地址可以被映射到表示對(duì)應(yīng)的索引數(shù)據(jù)的下半部分的邏輯地址。因而,如圖17所示,在被分類到休止節(jié)點(diǎn)REST中的第三節(jié)點(diǎn)NODE<3>中包含的索引數(shù)據(jù)可以被劃分且存儲(chǔ)在第二物理存儲(chǔ)區(qū)域P2和第三物理存儲(chǔ)區(qū)域P3中。
在多個(gè)索引數(shù)據(jù)INDEX_DA<1:N>[+ND]之中,在索引數(shù)據(jù)根據(jù)節(jié)點(diǎn)信息[+ND]具有與第五節(jié)點(diǎn)NODE<5>對(duì)應(yīng)的ID值同時(shí)包含被分類到休止節(jié)點(diǎn)REST中的旗標(biāo)值的情況下,物理存儲(chǔ)區(qū)域識(shí)別值為4的物理地址可以被映射到表示對(duì)應(yīng)的索引數(shù)據(jù)的上半部分的邏輯地址,物理存儲(chǔ)區(qū)域識(shí)別值為5的物理地址可以被映射到表示對(duì)應(yīng)的索引數(shù)據(jù)的下半部分的邏輯地址。因而,如圖17所示,在被分類到休止節(jié)點(diǎn)REST中的第五節(jié)點(diǎn)NODE<5>中包含的索引數(shù)據(jù)可以被劃分且存儲(chǔ)在第四物理存儲(chǔ)區(qū)域P4和第五物理存儲(chǔ)區(qū)域P5中。
在多個(gè)索引數(shù)據(jù)INDEX_DA<1:N>[+ND]之中,在索引數(shù)據(jù)根據(jù)節(jié)點(diǎn)信息[+ND]具有與第六節(jié)點(diǎn)NODE<6>對(duì)應(yīng)的ID值同時(shí)包含被分類到休止節(jié)點(diǎn)REST中的旗標(biāo)值的情況下,物理存儲(chǔ)區(qū)域識(shí)別值為6的物理地址可以被映射到表示對(duì)應(yīng)的索引數(shù)據(jù)的上半部分的邏輯地址,物理存儲(chǔ)區(qū)域識(shí)別值為7的物理地址可以被映射到表示對(duì)應(yīng)的索引數(shù)據(jù)的下半部分的邏輯地址。因而,如圖17所示,在被分類到休止節(jié)點(diǎn)REST中的第六節(jié)點(diǎn)NODE<6>中包含的索引數(shù)據(jù)可以被劃分且存儲(chǔ)在第六物理存儲(chǔ)區(qū)域P6和第七物理存儲(chǔ)區(qū)域P7中。
在多個(gè)索引數(shù)據(jù)INDEX_DA<1:N>[+ND]之中,在索引數(shù)據(jù)根據(jù)節(jié)點(diǎn)信息[+ND]具有與第七節(jié)點(diǎn)NODE<7>對(duì)應(yīng)的ID值同時(shí)包含被分類到休止節(jié)點(diǎn)REST中的旗標(biāo)值的情況下,物理存儲(chǔ)區(qū)域識(shí)別值為8的物理地址可以被映射到表示對(duì)應(yīng)的索引數(shù)據(jù)的上半部分的邏輯地址,物理存儲(chǔ)區(qū)域識(shí)別值為9的物理地址可以被映射到表示對(duì)應(yīng)的索引數(shù)據(jù)的下半部分的邏輯地址。因而,如圖17所示,在被分類到休止節(jié)點(diǎn)REST中的第七節(jié)點(diǎn)NODE<7>中包含的索引數(shù)據(jù)可以被劃分且存儲(chǔ)在第八物理存儲(chǔ)區(qū)域P8和第九物理存儲(chǔ)區(qū)域P9中。
圖19是示出了根據(jù)本發(fā)明的第二實(shí)施例的數(shù)據(jù)處理系統(tǒng)的操作的流程圖。
圖19示出了存儲(chǔ)器系統(tǒng)110存儲(chǔ)多個(gè)索引數(shù)據(jù)INDEX_DA<1:N>[+ND]的序列。
具體地,在步驟S110中,存儲(chǔ)器系統(tǒng)110可以檢查在主機(jī)102應(yīng)用的索引數(shù)據(jù)INDEX_DA<1:N>[+ND]中的每一個(gè)索引數(shù)據(jù)中包含的節(jié)點(diǎn)信息[+ND],并且確定是輸入被分類到新節(jié)點(diǎn)NEW中的索引數(shù)據(jù)還是輸入被分類到休止節(jié)點(diǎn)REST中的索引數(shù)據(jù)。
此時(shí),當(dāng)從主機(jī)102輸入的多個(gè)索引數(shù)據(jù)INDEX_DA<1:N>[+ND]是被分類到新節(jié)點(diǎn)NEW中的索引數(shù)據(jù)時(shí),在步驟S120中,存儲(chǔ)器系統(tǒng)110可以在多個(gè)物理存儲(chǔ)區(qū)域P0、P1、P2、P3、P4、P5、P6、P7、P8、P9、P10、P11、P12、P13……之中選擇完全空的物理存儲(chǔ)區(qū)域并且使用所有被選擇的物理存儲(chǔ)區(qū)域存儲(chǔ)在步驟S110中輸入的被分類到新節(jié)點(diǎn)NEW中的索引數(shù)據(jù)。
然后,當(dāng)從主機(jī)102輸入的多個(gè)索引數(shù)據(jù)INDEX_DA<1:N>[+ND]是被分類到休止節(jié)點(diǎn)REST中的索引數(shù)據(jù)時(shí),在步驟S130中,存儲(chǔ)器系統(tǒng)110可以在多個(gè)物理存儲(chǔ)區(qū)域P0、P1、P2、P3、P4、P5、P6、P7、P8、P9、P10、P11、P12、P13……之中選擇完全空的兩個(gè)物理存儲(chǔ)區(qū)域P0、P1/P2、P3/P4、P5/P6、P7/P8、P9并且使用所有被選擇的物理存儲(chǔ)區(qū)域存儲(chǔ)在步驟S110中輸入的被分類到休止節(jié)點(diǎn)REST中的索引數(shù)據(jù)。
通過存儲(chǔ)在步驟S110中輸入的被分類到休止節(jié)點(diǎn)REST或新節(jié)點(diǎn)NEW中的索引數(shù)據(jù)的操作S120或S130,在步驟S140中,存儲(chǔ)器系統(tǒng)110可以更新地址映射表。
如上所述,當(dāng)在以B-樹結(jié)構(gòu)管理的多個(gè)索引數(shù)據(jù)之中被分類到休止節(jié)點(diǎn)REST中的索引數(shù)據(jù)被存儲(chǔ)在物理空間中時(shí),根據(jù)本發(fā)明的第二實(shí)施例的數(shù)據(jù)處理系統(tǒng)可以將包含在一個(gè)休止節(jié)點(diǎn)REST中的索引數(shù)據(jù)存儲(chǔ)在兩個(gè)物理存儲(chǔ)區(qū)域中。然而,當(dāng)被分類到新節(jié)點(diǎn)NEW中的索引數(shù)據(jù)被存儲(chǔ)在物理空間中時(shí),數(shù)據(jù)處理系統(tǒng)可以將包含在一個(gè)新節(jié)點(diǎn)NEW中的索引數(shù)據(jù)存儲(chǔ)在一個(gè)物理存儲(chǔ)區(qū)域中。
因而,如圖20所示,在根據(jù)本發(fā)明的第二實(shí)施例的存儲(chǔ)器系統(tǒng)中被占據(jù)來(lái)存儲(chǔ)分類到的新節(jié)點(diǎn)NEW中的索引數(shù)據(jù)的物理空間(新節(jié)點(diǎn)區(qū)域)可以減小到傳統(tǒng)的存儲(chǔ)器系統(tǒng)中的物理空間的一半(30%→15%)。
根據(jù)本發(fā)明的實(shí)施例,數(shù)據(jù)處理系統(tǒng)及其操作方法可以不同地控制用于將多個(gè)索引數(shù)據(jù)之中的包含在新節(jié)點(diǎn)中的索引數(shù)據(jù)存儲(chǔ)到物理空間中的方法和用于將包含在休止節(jié)點(diǎn)而非新節(jié)點(diǎn)中的索引數(shù)據(jù)存儲(chǔ)到物理空間中的方法。
因而,數(shù)據(jù)處理系統(tǒng)及其操作方法可以使由數(shù)據(jù)占據(jù)的物理空間的容量最小化。
盡管為了說(shuō)明的目的已經(jīng)說(shuō)明了各種實(shí)施例,但是對(duì)于本領(lǐng)域技術(shù)人員顯而易見的是,可以在不背離如權(quán)利要求書中限定的本發(fā)明的精神和/或范圍的情況下進(jìn)行各種變更和變型。