現有的外存體系是ddr記憶體+磁碟二級儲存結構。磁碟的優點是廉價,在存放大資料背景下的海量資料時擴充容量的代價容易承受。
但是,資料管理的其他操作就有些蛋疼了,很多基本的操作都發現無法避免乙個瓶頸:內外存間的通訊(jeffrey scott vitter)
基於快閃儲存器的高速外存(ssd)沒有隨機i/o,這對很多enn(exact nearest neighbor)搜尋方法是福音。典型的,va-file, fnn等一眾將遍歷作為演算法搜尋框架的方法會收益。這些方法在通過近似計算留下候選集後需要載入原始向量(資料點)精煉出enn,當候選集內的點往往不是連續的,於是形成了隨機i/o,這也成為了其一大短板。現在這一短板沒了,weber在98年的觀點又一次煥發出威力:高維空間中任何基於聚類的方法其效能都將衰減到不如線性掃瞄。
不過,沒有了對隨機i/o的擔憂不代表沒有了對i/o的擔憂。沒有了醒目的隨機i/o,新體系下的高維索引在解決enn的時候考量的各項效能的反而都變得無法忽視,主要有以下幾個:載入的候選點的個數、載入的其他資料的規模、昂貴計算的次數(主要是距離度量)、其他輔助量的計算量(例如,adaptive distance bound, hb中的lower bound計算)。
除此之外,可能還會加上記憶體開銷。
從這個角度,va-file如果放在外存,整個va-file載入進入記憶體也會伴有一定量的i/o,而聚類的一些方法索引結構體量很小,並且要載入的資料都是隨需(計算出要載入的下乙個聚類)載入的。並且聚類的方法並沒有損失什麼(原本外存技術的提高也不應對演算法產生***)只不過也沒有得到太多的促進而已。聚類方法本身的優勢依舊存在,例如hb中自適應的邊界相對於其他邊界的優勢。
現在,定義高維和大規模,綜合審視enn搜尋方法的表現是否已經盡如人意?可以做乙個綜述的評價。不顧答案應該不太積極。
進一步提公升enn搜尋演算法效能的著手點在**?
實用的高速高轉降檔技術
在跑高速或緊急情況下,我們經常要強制降檔,要怎麼做才會更平順呢,舉個例子 如 6檔130km 大概3000rpm 要降到5檔 130km 3500rpm 1.稍微松一點油門同時踩離合器 此時引擎轉速因空檔而立即公升,最好公升到3500左右 右腳要很敏感 此時的速比變化會讓發動機與變速器產生一定的轉速...
高效能 高可用的分布式架構體系
在2b企業服務 雲計算 移動網際網路領域,專業的雲平台服務裡,分布式技術為支撐平台正常運作關鍵性技術。從商業利潤和運維成本角度出發,千方百計榨乾伺服器的每一分效能很大程度上影響著 的商業價值,因此對效能的追求,成為分布式架構體系中極為重要的考量指標 從使用者角度,特別是作為主要收入 的企業使用者的角...
高維度下的資料科學 線性空間(下)
對於單位矩陣座標基,上的向量x x1,x2,xn 對於基 a1,a2.an 兩個基的互相表示為 a1,a2.an i a1,a2.an 將向量x的座標轉移到 a1,a2.an 上,a1,a2.an y i x y a1,a2.an 1 x 假如 a a1,a2.an 1 那麼ax實質上,不就是座標變...