這篇文章將為大家詳細(xì)講解有關(guān)PostgreSQL中BRIN索引指的是什么,文章內(nèi)容質(zhì)量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關(guān)知識有一定的了解。
創(chuàng)新互聯(lián)專注于海北州網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗(yàn)。 熱誠為您提供海北州營銷型網(wǎng)站建設(shè),海北州網(wǎng)站制作、海北州網(wǎng)頁設(shè)計、海北州網(wǎng)站官網(wǎng)定制、微信平臺小程序開發(fā)服務(wù),打造海北州網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供海北州網(wǎng)站排名全網(wǎng)營銷落地服務(wù)。
眾所周知,PostgreSQL 各種插件的數(shù)據(jù)量和他無底洞的功能豐富性,被使用者所嘆服。而PostgreSQL 有一種索引,BRIN 肯能使用的人不是很多,或許你也可能第一次聽說這個索引的名字。相比 GIST ,GIN 這樣的索引類型,BRIN 的名聲可能稍有差距。那今天我們就來看看 BRIN 到底能做什么,為什么而生。
我們先創(chuàng)建一個表
插入一些數(shù)據(jù) (當(dāng)然這些數(shù)據(jù)是針對Brin 索引的數(shù)據(jù))
我們通過下面的查詢來看一下在沒有索引的情況下查詢時間類型的數(shù)據(jù)會怎樣。
從下圖我們可以對比出,添加索引后和全表掃描之間的cost 差距
從上圖可以看出,添加索引后,查詢的速度提高了,但我們的關(guān)鍵點(diǎn)不在這里,我們是要比較,BTREE 索引 和 BRIN 索引之間的不同點(diǎn)。
我們在同樣的表的同樣的字段創(chuàng)建,不一樣類型的索引。通過圖形中我們可以看出創(chuàng)建兩種索引的時間是不一樣的,brin 索引的速度比 BTREE 索引要快大約不到 12倍。
我們在對比一下兩種索引的尺寸,看完下圖,我估計你的嘴應(yīng)該不會閉上,或許還會發(fā)出點(diǎn)聲音。的確 BRIN 索引的尺寸是超小的,當(dāng)然也是有原因的。
我們繼續(xù),那這樣小的索引,對比BTREE 索引,到底查詢的效率是不是可以滿足要求呢?
我們可以看出,在默認(rèn)的情況下,系統(tǒng)會默認(rèn)使用 BTREE 索引,在兩種索引都存在的情況下。
對比 BRIN 索引,雖然BRIN 索引比BTREE 索引慢了 些許毫秒,但對比索引所占用的空間比,BTREE 占用 129MB 而 BRIN 占用 56KB 你就能體會,你第二次長大的嘴,BRIN 索引真的很厲害。
說完上面那些,我們的談?wù)?,到底BRIN 索引是怎么做到的,大幅度降低索引的存儲空間,并且還保證超高的索引查詢中的查詢率。
原因,BRIN 索引是一種有損索引,這個索引的簡稱 Block Range Index, 而BRIN 索引產(chǎn)生的主要原因也是為了一些 “超級大表的索引”,試想一下,你有一張6億條記錄的表,很可能你的索引就是幾個G ,而這樣的索引在查詢中,其實(shí)隨著數(shù)據(jù)量的增大,性能是線性下降的。
而BRIN 所以存儲的數(shù)據(jù)并不是普通索引那樣的 BTREE 的數(shù)據(jù),而是存儲元祖數(shù)據(jù),以及相關(guān)數(shù)據(jù)的頁面信息,通過這些信息,大大減少了存儲數(shù)據(jù)的空間,而在判斷數(shù)據(jù)是否符合條件的情況下,則比BTREE 索引要付出更多的過濾和對比的過程,但相對他超高的性價比,對于大表, 有序型的數(shù)據(jù)的索引的建立,BRIN 索引是值得被考慮和使用的。
當(dāng)然如果有人問,這里面BRIN 索引是否牽扯類似壓縮比率這樣的事情
pages_per_range ,如果你將每頁的范圍調(diào)整過大,則損失就會越大,所以我們也可以在 “壓縮” 和 準(zhǔn)確度,之間做一個平衡。
最后我們來回顧一下,使用BRIN 索引的主要場景和目的
1 大表的索引性能問題
2 表中索引的數(shù)據(jù)在表中的字段最好是順序型的,例如日期,或者某些可以順序化的場景(其實(shí)時序數(shù)據(jù)庫就符合這樣的類型)
3 對索引占用空間敏感的場景。
關(guān)于PostgreSQL中BRIN索引指的是什么就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學(xué)到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
分享名稱:PostgreSQL中BRIN索引指的是什么
文章網(wǎng)址:http://jinyejixie.com/article4/ggspoe.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供外貿(mào)建站、App設(shè)計、微信小程序、電子商務(wù)、網(wǎng)站設(shè)計公司、網(wǎng)站建設(shè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)