百度搜尋資料庫 Tera 設計和實踐全攻略

2021-09-30 14:35:53 字數 2143 閱讀 2567

網際網路上的資訊是如何通過搜尋引擎最終展示給使用者的?首先,網頁被搜尋引擎發現,通過抓取進入搜尋引擎;然後,有價值的網頁經過篩選,進行正排計算和倒排計算,完成索引構建;最後,通過檢索系統將最終的結果呈現給使用者。

齊志巨集先為大家解釋什麼是 tera:一種大型分布式**儲存系統,具有高效能、可伸縮等儲存特點,最初的設計是為了管理萬億量級的超鏈和網頁資訊。tera 在架構演進中到底扮演了怎樣的核心角色呢?

首先來看儲存鏈結

第二個是索引篩選。

索引篩選的核心作用是讓有價值的資訊進入索引。tera 架構作為資料儲存中心,儲存了包含網頁庫、去重庫、結果庫在內的所有中間資料和最終結果,通過流式計算的方式完成頁面特徵拼接、頁面價值計算、網頁去重以及索引排序等核心操作的實時化改造。網頁從抓取到篩選完成的整個過程,實現了從天級變到分鐘級甚至秒級的飛躍。

最後乙個是使用者行為分析。

使用者行為分析在搜尋效果改進和搜尋引擎的評價等方面,都具有重要價值。基於 tera 的實時使用者行為資料流,將使用者資料的時效性推向新高度。實時資料產出的延遲可降至秒級,突發時效性識別、使用者意圖分析、產品迭代評估等多個維度均可實時獲取使用者資料,進行實時分析,對時效性和使用者體驗有很大的提公升。

tera 大型分布式**系統的設計與實踐

資料量大,pb 到百 pb 這樣的量級;

離線處理過程中,以站點等字首方式訪問資料是普遍的需求;

資料型別不固定。

這樣的業務特點決定著 tera 設計和實踐的過程。

tera 設計的資料模型

tera 的資料模型有以下幾個特點,首先它是 key-value 模型,再深入一層,它是典型的 bigtable 模型,同時,乙個非常重要的特點就是全域性有序。這幾個特點結合在一起,就是 tera 資料模型的設計目標。

tera 設計的系統架構

tera 系統主要由 tabletserver、master 和 clientsdk 三部分構成, 資料持久化到底層的分布式檔案系統中。其中 tabletserver 是核心伺服器,承載著所有的資料管理與訪問;master 是系統的仲裁者,負責**的建立、schema 更新與負載均衡;clientsdk 包含供管理員使用的命令列工具 teracli 和給使用者使用的 sdk。

**被按 rowkey 全域性排序,並橫向切分成多個 tablet,每個 tablet 負責服務 rowkey 的乙個區間,**又被縱向且分為多個 localitygroup,乙個 tablet 的多個 localitygroup 在物理上單獨儲存,可以選擇不同的儲存介質,用以優化訪問效率。

tera 的高可用實踐

tera 的高可用性比較關鍵,直接影響整個系統的服務質量,其實現方式包括兩個方面:tablet server 可用性以及負載均衡。

tera 設計的效能優化

第乙個經驗是需要考慮對分布式檔案系統友好。

tera 的資料持久化在分布式檔案系統上,必須考慮對其友好的使用。根據 leveldb 的特點,資料首先要持久化在 wal 上,確保異常情況下不丟資料,所以寫 wal 的延遲和吞吐直接決定了使用者寫請求的延遲和吞吐。然而分布式檔案系統需要寫多個資料副本,在某些副本異常情況下,如果依賴分布式檔案系統層面去自動恢復的話,可能大幅增加延遲。tera 針對寫 wal 異常情況,採用關閉舊檔案建立新檔案的方法,規避分布式檔案系統的短板。同時 wal 持久化成功才能保證使用者資料不丟,所以 wal 寫完之後必須 sync 強制資料落盤,而 sst 檔案不強制要求每次寫請求落盤,從而減少對分布式檔案系統的壓力。

第二個經驗是關於 ssd 的運用。

sata 的隨機讀能力很差,雖然 leveldb 做了很多優化,但是仍然無法突破硬體瓶頸,ssd 的**現在是越來越便宜,但成本依然比 sata 高。tera 的資料全部持久化在 sata 上,僅把 ssd 作為 cache 使用,這是平衡效能和成本的一種途徑。

第三個經驗是非同步邏輯設計。

tera 裡面所有可能阻塞的邏輯都是非同步的,非同步邏輯可以很好提高效能,另外客戶端快取 tablet 位置資訊,因為 tablet 位置資訊通常情況下變化的也不頻繁,同時擴充套件了 leveldb 的 bloomfilter 機制,可以提公升 20% 左右的讀效能。 戳 

閱讀原文

閱讀原文

站長實戰 百度搜尋推廣實操

鄙人之前做阿里系平台的時候,就操作過 直通車 網銷寶等推廣平台。直通車,和競價排名一樣,都屬於按點選付費的推廣方式。如今鄙人在運營獨立 為了更進一步地獲取流量,我選擇了競價排名作為了推廣平台。經過一段時間的摸索後,我發現,其實推廣和之前接觸過的直通車非常類似,所以我很快也上手了。話不多說,直接上圖 ...

360搜尋和百度搜尋的簡單對比

今天機緣巧合,剛巧嘗試用了下360的搜尋引擎 1 360的類聚系統 2 360後台的索引長度 3 spider的比較 4 廣告系統 360目前cpc用的還是google的搜素廣告系統,內部研發的系統不知道什麼時候會上線替換。5 query分析 360做得比較少,這方面屬於慢工出細活,可以慢慢趕上 6...

百度搜尋大資料 「擺攤技巧」搜尋熱度暴漲655

donews 6月4日訊息 記者 向密 據搜尋大資料顯示,近7天 擺攤技巧 相關內容搜尋熱度同比暴漲655 達到10年來最高值,地攤經濟 正呈現火熱的發展態勢。搜尋大資料顯示,近30天,擺攤技程式設計客棧巧 對90後這批 中浪 的吸引力最大,超過53 的關注者均為90後。與行動力最強 關注擺地攤具體...