優(yōu)點(diǎn):B+ 樹的信息全部存放在葉子節(jié)點(diǎn)中 , 非葉子節(jié)點(diǎn)用來(lái)做索引 , 且葉子節(jié)點(diǎn)中有一個(gè)指針指向下一個(gè)葉子節(jié)點(diǎn) , 這樣做的目的是為了提高區(qū)間訪問(wèn)的性能 。而正是這個(gè)特性決定了 B+ 樹更適合用來(lái)存儲(chǔ)外部數(shù)據(jù) 。
散列索引1. 散列文件組織在散列的描述中 , 用散列桶來(lái)表示可以存放存儲(chǔ)一條或多條記錄的一個(gè)存儲(chǔ)單位 , 通常一個(gè)桶就是一個(gè)磁盤塊 。通過(guò)散列函數(shù)計(jì)算搜索碼值的散列值 , 并根據(jù)散列值來(lái)決定包含該搜索碼值的記錄該存儲(chǔ)在哪個(gè)桶中 。
散列文件的操作有:
查找:設(shè)帶查找記錄的搜索碼值為 Ki , 通過(guò)計(jì)算 h(Ki) 獲取存儲(chǔ)該記錄的桶地址 , 然后到相應(yīng)的桶中搜尋此記錄 , 如果桶中沒(méi)有找到 , 且存在溢出桶 , 還需要繼續(xù)到溢出桶中尋找 。插入:插入一條搜索碼值為 Ki 的記錄 , 通過(guò)計(jì)算 h(Ki) 獲得存儲(chǔ)該記錄的桶地址 , 然后就將該記錄存入相應(yīng)的桶(或溢出桶)中 。刪除:待刪除記錄的搜索碼值為 Ki , 通過(guò)計(jì)算 h(Ki) 獲得存儲(chǔ)該記錄的桶地址 , 然后到相應(yīng)的桶(或溢出桶)中搜尋此記錄并刪除它 。溢出桶:如果一條記錄必須插入桶 b 中 , 而桶 b 已滿 , 系統(tǒng)會(huì)為桶 b 提供一個(gè)溢出桶 , 并將此記錄插入到這溢出桶中 。所有溢出桶用一個(gè)連接鏈表連接在一起 , 形成溢出鏈 。
閉散列:溢出鏈的散列結(jié)構(gòu) 。
開散列:另一種接近溢出的方式 , 它的桶的數(shù)量是固定的 , 當(dāng)一個(gè)桶滿了 , 系統(tǒng)將記錄插入到其他桶去 , 選擇其他同的策略有:
使用下一個(gè)未滿的桶 , 該策略稱為線性探查法;用進(jìn)一步計(jì)算散列函數(shù)的方法 。2. 散列索引散列索引將搜索碼值及其相應(yīng)的文件記錄(或文件塊)指針組織成一個(gè)散列索引項(xiàng) 。散列索引的構(gòu)建方法:
將散列函數(shù)作用于一條文件記錄的搜索碼值 , 以確定該文件記錄所對(duì)應(yīng)的散列索引項(xiàng)的散列桶 。將由該搜索碼值以及相應(yīng)文件記錄(或文件塊)指針組成的散列索引項(xiàng)存入散列桶(或溢出桶)中 。散列索引只能是一種輔助索引結(jié)構(gòu) 。
散列是非聚簇索引 , 故只能做輔助索引 。散列是稠密索引 , 如果其是聚簇索引的話 , 那么就成為了主索引了 。散列索引特點(diǎn):散列其實(shí)就是一種不通過(guò)值的比較 , 而通過(guò)值的含義來(lái)確定存儲(chǔ)位置的方法 , 他是為有效地實(shí)現(xiàn)等值查詢而設(shè)計(jì)的 。不幸的是 , 基于散列技術(shù)不支持范圍檢索 , 而基于 B+ 樹的索引技術(shù)能有效地支持范圍檢索 。但是 , 散列技術(shù)在等值連接等操作是很有用的 , 尤其是在索引嵌套循環(huán)連接方法中 。
以上關(guān)于本文的內(nèi)容,僅作參考!溫馨提示:如遇健康、疾病相關(guān)的問(wèn)題,請(qǐng)您及時(shí)就醫(yī)或請(qǐng)專業(yè)人士給予相關(guān)指導(dǎo)!
「愛(ài)刨根生活網(wǎng)」www.malaban59.cn小編還為您精選了以下內(nèi)容,希望對(duì)您有所幫助:- 集“五?!庇蛛p叒叕來(lái)了!今年教你玩點(diǎn)不一樣的! 福字圖片
- redis支持的5種類型 redis支持的數(shù)據(jù)類型有哪些
- 檢測(cè)水表是否漏水的3種方式 如何看水表是否漏水
- 清理c盤最簡(jiǎn)單的方法 服務(wù)器c盤滿了怎么清理
- 免費(fèi)分享這4種請(qǐng)求方式 jquery發(fā)送ajax請(qǐng)求的方法有哪些
- 網(wǎng)絡(luò)基礎(chǔ)知識(shí)詳細(xì)介紹 以太網(wǎng)和局域網(wǎng)的區(qū)別
- 蛋白質(zhì)對(duì)人體的重要性 蛋白質(zhì)是什么
- 一個(gè)愛(ài)心是什么意思 愛(ài)心是什么什么
- 從毛澤東的啟蒙運(yùn)動(dòng)思想看中華民族
- 校秋季運(yùn)動(dòng)會(huì)
