精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

Meta 每秒如何移動(dòng) TB 級(jí)數(shù)據(jù)?

開發(fā) 架構(gòu)
在本文中,我們首先探討了 Scribe 的術(shù)語,然后深入研究了其架構(gòu),該架構(gòu)包含許多在讀寫路徑上職責(zé)清晰的組件。Scribe 還將元數(shù)據(jù)與數(shù)據(jù)分離,并引入了緩存層來改進(jìn)讀取路徑。

一、引言

Apache Kafka 無處不在。它是分布式消息傳遞的首選,為全球眾多公司提供各種用例服務(wù),包括消息傳遞、日志聚合和流處理。

許多公司都在使用它,包括 PayPal、Uber 和 LinkedIn 等大型科技公司。然而,并非所有人都使用 Kafka;他們會(huì)使用其他可用的解決方案,或者……構(gòu)建自己的系統(tǒng)。在今天的文章中,我們將探討 Scribe,這是 Meta 構(gòu)建的一個(gè)消息隊(duì)列服務(wù),用以支撐全球規(guī)模的流量。

圖片圖片

二、術(shù)語

在繼續(xù)之前,我們首先了解一些 Scribe 的概念:

首先是 Category。它向用戶展示了一個(gè)邏輯流的概念。

圖片圖片

與 Kafka 類似,向 Category 寫入和讀取數(shù)據(jù)的客戶端也被稱為生產(chǎn)者和消費(fèi)者。兩者都以庫的形式實(shí)現(xiàn)。一個(gè)應(yīng)用程序可以根據(jù)需要擁有多個(gè)生產(chǎn)者和消費(fèi)者實(shí)例。

圖片圖片

對(duì)于消費(fèi)消息,一組消費(fèi)者可以共同處理來自一個(gè) Category 的消息。數(shù)據(jù)可以根據(jù)消息的鍵或值被分割成邏輯分片。一個(gè)消費(fèi)者可以只讀取來自一個(gè)邏輯分片的消息。Scribe 允許整個(gè)流量在消費(fèi)者組之間任意分配,而無需依賴分片方案。

圖片圖片

還有一個(gè)物理分片的概念,它們是包含與消息負(fù)載相關(guān)聯(lián)的元數(shù)據(jù)的日志文件。我們將在后面更詳細(xì)地探討。

三、高層架構(gòu)

從寫入路徑來看,生產(chǎn)者實(shí)例接收來自用戶的消息,對(duì)它們進(jìn)行批處理,然后將它們發(fā)送給 ScribeD。在這個(gè)階段,一個(gè)批次可能包含來自不同 Category 的消息。然后,ScribeD 將這些批次發(fā)送給寫入代理。

消息隨后被拆分,使得來自同一 Category 的消息屬于同一批次。寫入代理然后將這些批次路由到批處理服務(wù)。批處理服務(wù)持久化這些批次并提交它們的元數(shù)據(jù)。

圖片圖片

對(duì)于讀取路徑,消費(fèi)者實(shí)例聯(lián)系讀取流服務(wù),從元數(shù)據(jù)存儲(chǔ)中檢索元數(shù)據(jù)。然后,消費(fèi)者使用元數(shù)據(jù)中的信息(例如,從哪里讀取元數(shù)據(jù))來形成對(duì)讀取代理的請(qǐng)求。該代理管理所有相關(guān)的數(shù)據(jù)訪問操作。

接下來,我們將更深入地探討寫入/讀取操作的細(xì)節(jié),以及數(shù)據(jù)是如何存儲(chǔ)的。

四、寫入

生產(chǎn)者庫是入口點(diǎn)。可以在多個(gè)主機(jī)上啟動(dòng)多個(gè)生產(chǎn)者實(shí)例。當(dāng)應(yīng)用程序向生產(chǎn)者庫發(fā)出寫入請(qǐng)求時(shí),它們將獲得一個(gè)包含寫入操作結(jié)果的對(duì)象。

圖片圖片

為了節(jié)省內(nèi)存占用,生產(chǎn)者將來自多個(gè) Category 的消息在內(nèi)存中批量聚合。生產(chǎn)者將消息批次刷新到 ScribeD,這是一個(gè)本地守護(hù)進(jìn)程,它接收來自主機(jī)上所有生產(chǎn)者實(shí)例的消息,并最終將它們發(fā)送到寫入代理。

圖片圖片

ScribeD 的主要目標(biāo)是通過將生產(chǎn)者刷新(在內(nèi)存中)的消息緩沖到磁盤上,來確保這些消息的容錯(cuò)性。這種方法可以防止在寫入持久化存儲(chǔ)時(shí)發(fā)生故障導(dǎo)致數(shù)據(jù)丟失。

圖片圖片

在接收消息批次后,寫入代理首先對(duì)這些消息執(zhí)行準(zhǔn)入控制檢查,然后將來自同一 Category 的消息拆分到同一批次中。這些批次被路由到批處理服務(wù)。

圖片

批處理服務(wù)壓縮批次數(shù)據(jù)并將其刷新到臨時(shí)數(shù)據(jù)存儲(chǔ)和持久化負(fù)載存儲(chǔ)。之后,批處理服務(wù)將這些批次的元數(shù)據(jù)(包括指向批次數(shù)據(jù)的指針)寫入基于日志的元數(shù)據(jù)存儲(chǔ)。這些元數(shù)據(jù)將幫助 Scribe 為消費(fèi)者提供順序的、流式抽象的讀取模式。

五、存儲(chǔ)

如前所述,Meta 將元數(shù)據(jù)和數(shù)據(jù)分離開。消息元數(shù)據(jù)存儲(chǔ)在 LogDevice 中,這是一個(gè)為順序數(shù)據(jù)讀寫操作優(yōu)化的基于日志的存儲(chǔ)系統(tǒng)。

1、元數(shù)據(jù)存儲(chǔ)

對(duì)于每個(gè) Category,LogDevice 將每個(gè)數(shù)據(jù)批次的元數(shù)據(jù)追加到一個(gè)稱為 log 的文件中。每個(gè)日志都是該 Category 的一個(gè)物理分片。日志文件中的每個(gè)記錄都有一個(gè)單調(diào)遞增的序列號(hào)。

圖片圖片

Meta 在 LogDevice 集群中存儲(chǔ)了數(shù)百萬個(gè)日志。每個(gè) LogDevice 集群包含存儲(chǔ)節(jié)點(diǎn)。每個(gè)記錄可以在這些節(jié)點(diǎn)的任意子集上進(jìn)行復(fù)制,確保數(shù)據(jù)冗余。

2、持久化數(shù)據(jù)存儲(chǔ)(DDS)

所有消息負(fù)載都存儲(chǔ)在 Tectonic 中,這是 Meta 構(gòu)建的用于替代 HDFS 的分布式文件系統(tǒng)。這個(gè)文件系統(tǒng)也是其他系統(tǒng)的支柱,例如 Meta 的數(shù)據(jù)倉庫。

Tectonic 不是基于一個(gè)因子完全復(fù)制負(fù)載,而是支持糾刪碼來確保數(shù)據(jù)可靠性。與簡(jiǎn)單的復(fù)制相比,存儲(chǔ)占用空間會(huì)更小;然而,在發(fā)生故障需要數(shù)據(jù)重建時(shí),這種方法將需要更多資源。

圖片圖片

為了控制數(shù)據(jù)塊的數(shù)量,Scribe 可以將來自多個(gè) Category 的數(shù)據(jù)存儲(chǔ)在同一個(gè)塊中。寫入代理累積大小達(dá)到幾十兆字節(jié)級(jí)別的塊,然后執(zhí)行刷新操作到 Tectonic 存儲(chǔ)節(jié)點(diǎn)的磁盤。在一個(gè)塊中,來自同一 Category 的數(shù)據(jù)也會(huì)被累積起來,以更有效地服務(wù)讀取操作,累積大小最高可達(dá) 2 兆字節(jié)。

3、臨時(shí)數(shù)據(jù)存儲(chǔ)(EDS)

除了持久化存儲(chǔ),消息負(fù)載也存在于區(qū)域性的臨時(shí)數(shù)據(jù)存儲(chǔ)中,這本質(zhì)上是一個(gè)具有兩層結(jié)構(gòu)的緩存:本地緩存和遠(yuǎn)程緩存。

這一點(diǎn)很重要,因?yàn)?DDS 可能位于與讀取用戶不同的區(qū)域。一個(gè) Category 通常從全球運(yùn)行的生產(chǎn)者那里接收輸入數(shù)據(jù)記錄。這導(dǎo)致當(dāng)消費(fèi)者發(fā)出讀取請(qǐng)求時(shí),它從不同區(qū)域讀取大部分?jǐn)?shù)據(jù)。

EDS 在這里起到了救援作用,因?yàn)樗试S用戶從不同區(qū)域訪問 DDS。其目標(biāo)是盡量減少對(duì)包含實(shí)際負(fù)載數(shù)據(jù)的遠(yuǎn)程存儲(chǔ)的訪問。

除了降低延遲和避免對(duì) Tectonic 的壓力之外,EDS 的其他有趣職責(zé)將在本文后面討論。

圖片圖片

對(duì)于遠(yuǎn)程層,Meta 利用 Memcached 來存儲(chǔ)消息負(fù)載,存儲(chǔ)時(shí)長為 1-2 小時(shí)。Meta 認(rèn)為這段時(shí)間對(duì)于想要消費(fèi)被認(rèn)為是“溫”數(shù)據(jù)的用戶來說已經(jīng)足夠。對(duì)于更“熱”的數(shù)據(jù),Meta 使用 Cachelib 來管理緩存,它利用讀取代理主機(jī)的空閑內(nèi)存資源。我們將在討論讀取路徑時(shí)更深入地探討 EDS。

六、讀取

讀取路徑的入口點(diǎn)也是一個(gè)名為 Consumers 的庫。應(yīng)用程序通常啟動(dòng)一組消費(fèi)者實(shí)例來從 Category 讀取數(shù)據(jù)。當(dāng)用戶啟動(dòng)一個(gè)消費(fèi)者實(shí)例時(shí),會(huì)生成一個(gè)到讀取流服務(wù)的有狀態(tài)連接。

Meta 嘗試以確保消費(fèi)者實(shí)例和讀取流服務(wù)位于同一區(qū)域的方式建立連接。該讀取流服務(wù)負(fù)責(zé)(在元數(shù)據(jù)的幫助下)為用戶提供流抽象。

該服務(wù)的一個(gè)實(shí)例擁有一個(gè)到 LogDevice 集群的連接池。當(dāng)它收到消費(fèi)者請(qǐng)求時(shí),它會(huì)根據(jù)消費(fèi)者的輸入,識(shí)別所有必需的 LogDevice 集群、物理分片以及要讀取的分片范圍。

圖片圖片

一個(gè)不同的實(shí)例(稱為讀取器)將處理從 LogDevice 集群實(shí)際讀取數(shù)據(jù)的操作。這個(gè)讀取流實(shí)例合并來自讀取器的結(jié)果,為消費(fèi)者提供單一的元數(shù)據(jù)流。

消費(fèi)者使用這個(gè)元數(shù)據(jù)(包括數(shù)據(jù)指針)向讀取代理發(fā)出 RPC 請(qǐng)求以獲取負(fù)載。讀取代理的主要工作是處理與訪問負(fù)載存儲(chǔ)相關(guān)的所有事情。

圖片圖片

當(dāng)收到來自消費(fèi)者的請(qǐng)求時(shí),讀取代理嘗試從區(qū)域臨時(shí)數(shù)據(jù)存儲(chǔ)中獲取數(shù)據(jù)。數(shù)據(jù)可能存在于 Memcached 實(shí)例的內(nèi)存緩存中。

如果讀取代理必須訪問持久化數(shù)據(jù)存儲(chǔ),則該請(qǐng)求被路由到與 DDS 中存儲(chǔ)的負(fù)載位于同一區(qū)域的讀取代理實(shí)例。

  • 如果區(qū)域 A 的讀取代理實(shí)例需要存儲(chǔ)在區(qū)域 B 的負(fù)載,它會(huì)將請(qǐng)求路由到位于區(qū)域 B 的實(shí)例。然后數(shù)據(jù)被填充到區(qū)域 B 的 EDS 中。

圖片圖片

  • 之后,來自區(qū)域 C 的讀取代理實(shí)例對(duì)同一數(shù)據(jù)的請(qǐng)求將由區(qū)域 B 的 EDS 提供服務(wù)。雖然仍然需要跨區(qū)域通信,但與直接從區(qū)域 B 的 DDS 讀取相比,延遲較低。

如果消費(fèi)者指定了任何過濾或序列化選項(xiàng),讀取代理將對(duì)其訪問的消息應(yīng)用這些選項(xiàng)。

圖片圖片

  • Meta 將讀取代理設(shè)計(jì)為數(shù)據(jù)暫存區(qū)。在將數(shù)據(jù)填充到 EDS 時(shí),讀取代理將 Category 的負(fù)載從其原始格式轉(zhuǎn)換為列式格式,以幫助消費(fèi)應(yīng)用程序避免這個(gè)昂貴的過程,特別是當(dāng)它們需要數(shù)據(jù)進(jìn)行分析工作負(fù)載時(shí)。
  • 讀取代理還可以應(yīng)用消費(fèi)應(yīng)用程序過濾器的下推;它可以評(píng)估 SQL 查詢的一個(gè)子集。

七、元數(shù)據(jù)如何管理

元數(shù)據(jù)是 Scribe 的核心。許多組件需要訪問元數(shù)據(jù)存儲(chǔ)來支持寫入和讀取操作。盡管 LogDevice 是一個(gè)事務(wù)性的、高可用的數(shù)據(jù)庫,但數(shù)百萬客戶端嘗試查詢?cè)獢?shù)據(jù)則是另一回事。

為了解決這個(gè)問題,Meta 在元數(shù)據(jù)存儲(chǔ)之上構(gòu)建了一個(gè)緩存和分發(fā)層。有一個(gè)后臺(tái)作業(yè)會(huì)掃描整個(gè)元數(shù)據(jù)數(shù)據(jù)庫,并將內(nèi)容填充到一個(gè)配置分發(fā)系統(tǒng)中。客戶端可以從此處讀取元數(shù)據(jù)。

圖片圖片

對(duì)于更詳細(xì)的元數(shù)據(jù),例如包含指向所需數(shù)據(jù)的指針的物理分片,一個(gè)周期性作業(yè)會(huì)輪詢 LogDevice 集群以檢索集群、Category 和物理分片之間的最新映射關(guān)系,并將該映射關(guān)系暴露在一個(gè)高度復(fù)制的數(shù)據(jù)庫中。

圖片圖片

對(duì)于來自消費(fèi)者的請(qǐng)求,讀取流服務(wù)實(shí)例訂閱相關(guān)的映射關(guān)系。當(dāng)在運(yùn)行時(shí)添加或刪除物理分片時(shí),映射關(guān)系可能會(huì)發(fā)生變化。基于這些信息,服務(wù)可以相應(yīng)地啟動(dòng)或停止讀取器實(shí)例。

八、流量如何管理

為了應(yīng)對(duì)全球規(guī)模的流量,Scribe 在不同層級(jí)利用了多層流量管理系統(tǒng)。

集群內(nèi)流量整形: Scribe 動(dòng)態(tài)調(diào)整其內(nèi)部資源以處理單個(gè) LogDevice 集群內(nèi)的流量。當(dāng)特定 Category 出現(xiàn)流量激增時(shí),一項(xiàng)服務(wù)會(huì)自動(dòng)將其現(xiàn)有的物理分片拆分成更小的分片,以確保該 Category 的水平可擴(kuò)展性。當(dāng)流量下降時(shí),系統(tǒng)會(huì)在多余的分片超過保留期后逐漸移除它們。

圖片圖片

集群間流量整形: 控制平面持續(xù)監(jiān)控每個(gè) LogDevice 集群的寫入和讀取工作負(fù)載,以調(diào)整傳入的寫入工作負(fù)載限制,確保集群不會(huì)被壓垮。

圖片圖片

當(dāng)達(dá)到限制時(shí),寫入代理可以將流量路由到同一區(qū)域內(nèi)的另一個(gè) LogDevice 集群。如果過載是全球性的,則使用優(yōu)雅降級(jí)方法來保護(hù)系統(tǒng)。

主機(jī)級(jí)流量整形: 在單個(gè)服務(wù)器級(jí)別,Scribe 使用 Meta 的服務(wù)網(wǎng)格來路由流量。服務(wù)網(wǎng)格使用主機(jī)暴露的負(fù)載指標(biāo)來將請(qǐng)求路由到負(fù)載最輕的服務(wù)器。

圖片圖片

當(dāng)服務(wù)器接受一個(gè)將在長時(shí)間內(nèi)消耗大量資源的請(qǐng)求時(shí),它會(huì)立即通告一個(gè)“虛假的”高負(fù)載指標(biāo)。這個(gè)高值告訴系統(tǒng)的其余部分,該服務(wù)器已被“預(yù)留”,即使實(shí)際的資源使用尚未開始。

圖片圖片

然后服務(wù)器指數(shù)級(jí)衰減這個(gè)負(fù)載值。負(fù)載指標(biāo)隨著時(shí)間的推移逐漸降低。等到請(qǐng)求的實(shí)際資源消耗變得明顯時(shí),人工設(shè)置的值已經(jīng)衰減到能夠反映服務(wù)器實(shí)際負(fù)載的程度。

這個(gè)機(jī)制至關(guān)重要,因?yàn)樗梢苑乐狗?wù)網(wǎng)格將過多請(qǐng)求路由到已經(jīng)在處理繁重工作負(fù)載的服務(wù)器。如果沒有它,服務(wù)網(wǎng)格會(huì)在一個(gè)長時(shí)間請(qǐng)求的最初幾秒內(nèi)認(rèn)為主機(jī)空閑,并假定該服務(wù)器能夠處理新的請(qǐng)求。

對(duì)于特定任務(wù),Scribe 使用一致性哈希將請(qǐng)求分配給特定主機(jī),這有助于最大化效率。這在諸如寫入代理將特定數(shù)據(jù) Category 的消息組發(fā)送到同一個(gè)批處理服務(wù)主機(jī),或者當(dāng)請(qǐng)求需要路由到特定的讀取代理主機(jī)以利用該主機(jī)上的內(nèi)存緩存等用例中很有幫助。

九、臨時(shí)數(shù)據(jù)如何管理

如上所述,Scribe 在臨時(shí)數(shù)據(jù)存儲(chǔ)中管理數(shù)據(jù)副本,目的是:

  • 防止頻繁訪問持久化存儲(chǔ),從而減少跨區(qū)域網(wǎng)絡(luò)流量的延遲
  • 為分析應(yīng)用程序以更具讀取效率的格式表示數(shù)據(jù)

Scribe 圍繞資源使用一種約束滿足模型,例如持久化存儲(chǔ) IO 或 Memcached 網(wǎng)絡(luò)利用率,來確定創(chuàng)建哪些副本以及創(chuàng)建在何處。系統(tǒng)的“控制平面”基于幾個(gè)因素做出這些決策,旨在在資源限制內(nèi)最大化收益。考慮的關(guān)鍵因素包括:

  • 讀取扇出: 有多少讀取器正在訪問特定的數(shù)據(jù) Category?
  • 消息新鮮度: 消費(fèi)者主要是讀取最新的消息還是舊消息?
  • 數(shù)據(jù)過濾: 臨時(shí)數(shù)據(jù)存儲(chǔ)中的新副本能否顯著減少需要傳輸?shù)臄?shù)據(jù)量?
  • 反序列化成本: 讀取代理是否需要執(zhí)行成本高昂的數(shù)據(jù)格式轉(zhuǎn)換?臨時(shí)數(shù)據(jù)存儲(chǔ)中格式合適的副本可以節(jié)省反序列化過程的成本。

根據(jù)數(shù)據(jù)中心特定的資源限制,Scribe 將采用不同的緩存策略以充分利用可用資源。例如,一個(gè) Memcached 出口流量有限的區(qū)域可能會(huì)使用讀取代理內(nèi)存中的副本作為“盾牌”,以防止過多請(qǐng)求沖擊緩存。

Scribe 的控制平面不斷重新計(jì)算這些策略,以適應(yīng)波動(dòng)的工作負(fù)載。

十、支持的保證

Scribe 支持幾種消息傳遞保證:盡力而為、至少一次和可重復(fù)讀取的至少一次。

1、盡力而為

盡力而為保證的總體思路是優(yōu)先考慮吞吐量和可用性。這是為高容量、“發(fā)射后不管”的數(shù)據(jù)流設(shè)計(jì)的權(quán)衡,在這種情況下,快速傳遞大部分?jǐn)?shù)據(jù)比確保每條消息都恰好傳遞一次且保持嚴(yán)格的順序更重要。

圖片

從寫入路徑來看:

  • 優(yōu)先考慮寫入可用性: 在此保證下,Scribe 的主要目標(biāo)是以最少的資源消耗持久化海量數(shù)據(jù)。
  • 機(jī)會(huì)主義路由: 消息被路由到最近或最可用的寫入代理主機(jī),甚至可以在需要時(shí)路由到另一個(gè)數(shù)據(jù)中心。這確保了即使路徑擁塞,數(shù)據(jù)也能繼續(xù)流動(dòng)。
  • 重試和重復(fù): 如果寫入請(qǐng)求失敗,客戶端將重試調(diào)用。這可能導(dǎo)致同一條消息被成功傳遞多次,從而導(dǎo)致消息重復(fù)。這是為了最大化可用性而已知且可接受的權(quán)衡。
  • 可能存在數(shù)據(jù)丟失: 如果寫入調(diào)用失敗且無法恢復(fù),客戶必須準(zhǔn)備容忍小程度的數(shù)據(jù)丟失。

從讀取路徑來看:

  • 收集: Scribe 的寫入路徑將單個(gè) Category 的消息分散到許多物理分片上。讀取此數(shù)據(jù)的消費(fèi)者必須從所有這些分片收集消息。
  • 容忍無序: 在所有分片上強(qiáng)制執(zhí)行嚴(yán)格的順序會(huì)引入顯著的延遲并降低吞吐量。為了避免這種情況,Meta 引入了一種配置,允許用戶在延遲和數(shù)據(jù)排序之間進(jìn)行權(quán)衡。

2、至少一次

其主要目標(biāo)是確保每條消息都成功存儲(chǔ)。Scribe 通過以下方式實(shí)現(xiàn)這一點(diǎn):

存儲(chǔ)確認(rèn): 客戶端只有在收到存儲(chǔ)層確認(rèn)消息已成功保存后,才認(rèn)為消息已發(fā)送。

圖片圖片

積極重試: 如果消息沒有收到確認(rèn),它會(huì)被重新發(fā)送。這個(gè)過程在寫入路徑的每一步重復(fù),直到確認(rèn)消息已保存。

圖片圖片

然而,積極的重試可能導(dǎo)致數(shù)據(jù)重復(fù)。為了最小化這種情況,Scribe 實(shí)施了多項(xiàng)優(yōu)化:

  • 主動(dòng)分片初始化: Scribe 預(yù)測(cè)并提前初始化物理分片。這可以防止重試因建立新分片的過程而延遲。
  • 分級(jí)超時(shí): 寫入路徑中的每一步都有一個(gè)比前一步更長的超時(shí)時(shí)間。這確保了一步不會(huì)在下一步仍在處理請(qǐng)求時(shí)過早放棄并重試,從而減少不必要的重試和重復(fù)。
  • 保守批處理: 對(duì)于需要“至少一次”傳遞的數(shù)據(jù),Scribe 以較小的批次發(fā)送消息。這意味著如果發(fā)生重試,潛在的重復(fù)事件涉及的消息數(shù)量較少。

3、可重復(fù)讀取

不可重復(fù)讀: 在一個(gè)事務(wù)過程中,如果事務(wù)在不同時(shí)間點(diǎn)看到同一數(shù)據(jù)具有不同的值,則此行為稱為不可重復(fù)讀。

通過可重復(fù)讀取,Scribe 保證消費(fèi)者讀取數(shù)據(jù)流時(shí),如果重新讀取,將看到相同順序的相同數(shù)據(jù)。這是比上述兩種保證更強(qiáng)的保證,對(duì)于需要嚴(yán)格數(shù)據(jù)排序和可靠處理的用例(如變更數(shù)據(jù)捕獲)至關(guān)重要。

Scribe 提供了兩種不同的方法來實(shí)現(xiàn)這一點(diǎn),每種方法都有其自身的權(quán)衡:寫入路徑變體和讀取路徑變體。

寫入路徑變體:

圖片圖片

  • 它確保邏輯分片的流量被發(fā)送到單個(gè)、專用的物理分片。
  • 然而,這將最大吞吐量限制在單個(gè)物理分片能夠處理的范圍內(nèi)。

讀取路徑變體:

圖片圖片

  • 一個(gè)內(nèi)部服務(wù),稱為順序分片生成器,讀取一個(gè) Category 的所有分散的元數(shù)據(jù)分片。
  • 然后,生成器根據(jù)下游應(yīng)用程序所需的批次大小,將消息重新排序到一個(gè)新的元數(shù)據(jù)分片中。
  • 這為 Category 中的所有消息提供了單一的、確定性的順序。它還允許下游應(yīng)用程序定義自己的批次大小。
  • 然而,它向數(shù)據(jù)流添加了一個(gè)額外的步驟,包括額外的操作,從而給整個(gè)系統(tǒng)引入了延遲。

十一、結(jié)語

在本文中,我們首先探討了 Scribe 的術(shù)語,然后深入研究了其架構(gòu),該架構(gòu)包含許多在讀寫路徑上職責(zé)清晰的組件。Scribe 還將元數(shù)據(jù)與數(shù)據(jù)分離,并引入了緩存層來改進(jìn)讀取路徑。

然后我們更仔細(xì)地了解了 Scribe 如何管理流量、元數(shù)據(jù)以及緩存系統(tǒng)中的數(shù)據(jù)。最后,我們將通過研究 Scribe 提供的幾種消息傳遞保證來結(jié)束本文。

參考資料

  • Meta, Scribe: How Meta transports terabytes per second in real time, (2025)https://www.vldb.org/pvldb/vol18/p4817-karpathiotakis.pdf

作者丨Vu Trinh   編譯丨Rio

來源丨網(wǎng)址:https://vutr.substack.com/p/how-did-meta-move-terabytes-of-data

責(zé)任編輯:武曉燕 來源: dbaplus社群
相關(guān)推薦

2015-05-15 14:51:11

TB 級(jí)數(shù)據(jù)云備份

2024-01-31 16:41:10

2017-08-17 09:33:02

大數(shù)據(jù)數(shù)據(jù)平臺(tái)諸葛io

2020-09-14 13:12:17

支付中心數(shù)據(jù)架構(gòu)

2017-12-25 08:26:43

2018-03-08 11:43:18

PandasTB級(jí)數(shù)據(jù)Spark

2015-12-02 14:14:52

希捷閃存

2020-11-25 08:00:37

MySQL存儲(chǔ)

2019-02-14 16:20:04

MySQL索引數(shù)據(jù)庫

2011-09-22 09:53:08

惠普HP FlexNetwHP FlexNetw

2017-04-14 09:16:26

2025-11-17 07:43:24

2021-10-09 12:56:45

數(shù)據(jù)庫泄露網(wǎng)絡(luò)攻擊網(wǎng)絡(luò)安全

2019-09-26 15:06:29

數(shù)據(jù)平臺(tái)架構(gòu)

2014-09-25 08:46:33

安全容器企業(yè)移動(dòng)安全

2011-12-09 11:23:22

移動(dòng)數(shù)據(jù)安全

2019-07-29 14:40:26

架構(gòu)存儲(chǔ)檢索

2020-03-30 15:04:10

數(shù)據(jù)庫工具技術(shù)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

色偷偷成人一区二区三区91| 成人午夜看片网址| 久久精品国产综合| 精品伦一区二区三区| 亚洲啊v在线| 国产精品久久久久久久久久免费看| 91在线高清免费观看| 国产精品美女毛片真酒店| 欧美亚洲国产精品久久| 欧美二区三区91| 国产成人精品视频免费看| av午夜在线| 韩国成人精品a∨在线观看| 国内揄拍国内精品| 在线视频这里只有精品| 久久免费视频66| 欧美老女人第四色| 成人免费在线小视频| 1769免费视频在线观看| 国产亚洲精品超碰| 国产另类自拍| 国产精品无码一区二区桃花视频| 国产日韩欧美在线播放不卡| 久热99视频在线观看| 手机看片福利视频| 久久香蕉网站| 日韩精品在线看片z| 欧美特级aaa| 黑人巨大精品| 精品久久久精品| 久久成人福利视频| www久久日com| 国产精品污网站| 久久偷看各类wc女厕嘘嘘偷窃| www夜片内射视频日韩精品成人| 日av在线不卡| 国产成人久久久精品一区| 久久精品国产亚洲av香蕉 | 强制捆绑调教一区二区| 97国产在线视频| 久久午夜鲁丝片午夜精品| 天天做天天爱天天综合网2021| 亚洲人成电影网站色…| 免费看黄色aaaaaa 片| 成人h动漫精品一区二区器材| 69堂精品视频| 超碰人人草人人| 日韩欧国产精品一区综合无码| 91成人免费在线| 久久婷婷五月综合色国产香蕉| 国产高潮在线| 欧美日韩激情美女| 欧美日韩黄色一级片| 男女羞羞在线观看| 黑人巨大精品欧美一区二区三区| 五月丁香综合缴情六月小说| 超碰在线网站| 五月激情综合色| 久久久性生活视频| 欧美aa在线| 欧美午夜女人视频在线| 一本色道无码道dvd在线观看| 免费成人动漫| 欧美视频一区二区三区在线观看 | 深夜日韩欧美| 91.成人天堂一区| www.色.com| 国产精品调教| 亚洲欧美日韩网| 在线看片中文字幕| 性欧美69xoxoxoxo| 欧美成人性色生活仑片| 久久精品视频日本| 翔田千里一区二区| 国产精品亚洲精品| 国产高清免费在线观看| 波多野结衣视频一区| 久久久久国产精品视频| 国产高清视频免费最新在线| 中文字幕制服丝袜成人av| 久久久久亚洲av无码专区喷水| 欧美xxxxhdvideosex| 亚洲一区二区三区免费视频| www.中文字幕在线| 成人自拍视频网| 日韩欧美精品在线视频| 日本丰满少妇裸体自慰| 成人高清av| 欧美激情国产日韩精品一区18| 久久久久久久久久久影院| 麻豆国产91在线播放| 99视频在线| 激情小视频在线| 一区二区三区欧美亚洲| aa免费在线观看| 国产美女亚洲精品7777| 亚洲精品久久久久久久久久久久| 久久久久久国产免费a片| 午夜性色一区二区三区免费视频| 欧美一区二区三区精品电影| 国产日韩在线观看一区| 久久久久青草大香线综合精品| 在线精品日韩| 国产免费不卡| 日韩一区国产二区欧美三区| 一区二区三区四区免费| 欧美一区二区三区久久精品| 日本欧美精品在线| 国产国语亲子伦亲子| 久久久不卡网国产精品一区| 2022中文字幕| 成人国产一区| 国产丝袜高跟一区| 青青草手机视频在线观看| 日韩中文字幕91| 国产免费一区二区三区| 成人三级网址| 欧美三日本三级三级在线播放| av av在线| 欧美大片专区| 成人xxxx视频| 成人午夜电影在线观看| 精品国产乱码久久久久久天美| 亚洲国产综合av| 欧美3p在线观看| 国产精品成人av在线| 污视频网站免费观看| 一区二区三区精品视频| 奇米视频7777| 日韩中文在线电影| 日本精品在线视频 | 99综合久久| 国产一区二区三区网站| 久久久国产精品成人免费| 久久se精品一区二区| 日产中文字幕在线精品一区| 天堂√8在线中文| 亚洲国产精品美女| 国产精品1000| 懂色av一区二区三区免费观看| 可以在线看黄的网站| 在线不卡一区| 久久激情五月丁香伊人| 亚洲图片在线播放| 中文乱码免费一区二区| 亚洲xxxx2d动漫1| 欧美一区电影| 国产精品欧美久久久| 大胆av不用播放器在线播放| 欧美在线看片a免费观看| a级大片在线观看| 久久永久免费| 日本一区二区三区四区高清视频| **在线精品| 亚洲最新av在线网站| 久操视频在线免费观看| 日本一区二区成人在线| 香港日本韩国三级网站| 四季av一区二区三区免费观看| 国产日产亚洲精品| 黄网站免费在线播放| 91精品国产麻豆| 欧美日韩激情在线观看| 不卡av在线网| 波多野结衣作品集| 俺要去色综合狠狠| 成人夜晚看av| 手机在线免费av| 亚洲二区中文字幕| 亚洲综合久久网| 国产精品久久久久一区二区三区 | 国产亚洲综合av| av在线网址导航| 欧美.www| 精品视频导航| av亚洲一区| 九九综合九九综合| 天堂8在线视频| 91福利社在线观看| 日韩三级在线观看视频| 成人国产视频在线观看| av无码精品一区二区三区| 国产精品国产三级国产在线观看| 99在线国产| 日韩毛片免费观看| 久久99精品久久久久久青青91| 熟妇高潮一区二区三区| 在线观看www91| 激情五月婷婷在线| 欧美精彩视频一区二区三区| 无套内谢丰满少妇中文字幕 | 国产91在线播放九色快色| wwwxxx在线观看| 精品久久久久久久人人人人传媒 | 2018av在线| 尤物九九久久国产精品的特点| a网站在线观看| 色综合视频在线观看| 丝袜 亚洲 另类 欧美 重口| 91在线视频观看| 天天看片天天操| 国产一区二区你懂的| 一区不卡字幕| 亚洲电影一级片| 999视频在线观看| 人人鲁人人莫人人爱精品| 欧美国产日韩在线| av福利精品| 日韩精品在线观看视频| 国产三级按摩推拿按摩| 欧美亚洲综合久久| 午夜精品久久久久久久久久久久久蜜桃| 中文字幕不卡在线观看| 在线观看av中文字幕| 国产米奇在线777精品观看| 北条麻妃av高潮尖叫在线观看| 亚洲视频免费| 波多野结衣激情| 欧美日韩激情| 麻豆精品传媒视频| 精品中国亚洲| 不卡视频一区二区| 成人亚洲精品| 国产精品美女免费看| 涩涩av在线| 高清欧美一区二区三区| av片在线观看| 久久久成人的性感天堂| 爱久久·www| 精品视频久久久久久| 欧美一区二区公司| 欧美大胆一级视频| 国产模特av私拍大尺度 | 国产精品久久久久久久av福利| 久久亚洲色图| 久久久久狠狠高潮亚洲精品| av成人天堂| 被灌满精子的波多野结衣| 一区二区中文| 黄色网络在线观看| 91精品啪在线观看国产18| 伊人av成人| 欧美成人自拍| 中文字幕久精品免| 国产精品毛片一区二区在线看| 亚洲.欧美.日本.国产综合在线| 国产精品一区二区99| 欧美精品亚洲| 欧美日一区二区| 亚洲午夜精品久久久中文影院av| 欧美色图激情小说| 亚洲欧洲精品一区二区三区波多野1战4| 欧美人与拘性视交免费看| 日本一区美女| 久久中文字幕av| 日本黄色a视频| 欧美精品97| 日韩一级性生活片| 性高湖久久久久久久久| 人妻熟女一二三区夜夜爱| 男人的天堂成人在线| 手机看片福利盒子久久| 免费观看久久久4p| 伊人免费视频二| 成人动漫在线一区| 一区二区黄色片| 中文字幕日韩av资源站| 亚洲欧美一区二区三区四区五区| 亚洲影院在线观看| 天天操中文字幕| 欧美影院一区二区三区| 国产又粗又长又黄| 亚洲精品一区二区三区精华液| 少妇又色又爽又黄的视频| 亚洲精品资源美女情侣酒店| wwwww在线观看免费视频| 美女精品久久久| 国产拍在线视频| 国产精品一区二区久久精品| 秋霞影院一区| 久久99精品久久久久久秒播放器 | av中文一区二区三区| 李宗瑞91在线正在播放| 中文字幕亚洲精品在线观看| 久久精品波多野结衣| 色综合久久久久综合99| 国产一区二区小视频| 亚洲电影在线看| 午夜国产福利在线| 久久久视频精品| 懂色aⅴ精品一区二区三区| 岛国视频一区免费观看| 欧美日韩激情在线一区二区三区| 老司机激情视频| 青青草原综合久久大伊人精品优势| 精品国产午夜福利在线观看| 久久午夜色播影院免费高清| √天堂中文官网8在线| 欧美色视频日本高清在线观看| 国产露脸无套对白在线播放| 日韩大陆欧美高清视频区| 老司机在线视频二区| 清纯唯美亚洲激情| 最新国产精品精品视频| 水蜜桃亚洲精品| 国产日韩视频| 精品国产免费久久久久久婷婷| 国产日本欧洲亚洲| 日韩成人免费在线观看| 欧美一区二区在线免费播放| 国产在线色视频| 97色在线视频观看| 蜜桃在线一区| 杨幂一区欧美专区| 久久亚洲影院| 国产精品探花一区二区在线观看| 一区二区三区中文字幕电影| 中文字幕在线观看欧美| 亚洲男人天堂古典| h片在线观看视频免费| 亚洲影院高清在线| 日韩欧美不卡| 性刺激的欧美三级视频| 26uuu亚洲综合色欧美| 精品少妇theporn| 欧美一级黄色大片| 欧美被日视频| 国产精自产拍久久久久久蜜| 国产一区二区三区站长工具| 免费看又黄又无码的网站| 国产成a人亚洲| a级片在线观看免费| 91.com在线观看| 成人在线观看免费网站| 成人午夜激情网| 久久久久电影| 色天使在线观看| 国产精品国产精品国产专区不片| 久久精品99北条麻妃| 亚洲一区二区黄| 日本一区二区三区视频在线| 秋霞毛片久久久久久久久| 视频一区中文字幕| 中文字幕免费在线看线人动作大片| 色综合久久综合网| 黄色在线视频观看网站| 青青久久aⅴ北条麻妃| 最近国产精品视频| 国产成人无码一二三区视频| 久久久久99精品一区| 亚洲 日本 欧美 中文幕| 亚洲网站在线观看| 91成人在线| 中文字幕一区二区三区在线乱码| 激情小说亚洲一区| 日韩在线观看视频一区二区| 日韩欧美的一区| 99re6在线精品视频免费播放| 精品网站在线看| 首页综合国产亚洲丝袜| 麻豆视频免费在线播放| 777a∨成人精品桃花网| 污污视频在线看| 激情小说综合区| 日韩国产精品久久久| 蜜桃av.com| 日韩三级精品电影久久久| bl视频在线免费观看| 欧美日韩精品不卡| 久久精品国产免费| 久久久久久激情| 日韩精品极品在线观看| 电影在线观看一区二区| 亚洲高潮无码久久| av在线免费不卡| 性色av一区二区三区四区| 欧美成人午夜剧场免费观看| 欧美偷窥清纯综合图区| 美女网站视频黄色| 一区二区国产盗摄色噜噜| 香蕉国产在线视频| 国产精品入口免费视频一| 欧美在线91| 99久久精品免费视频| 欧美一级生活片| 电影网一区二区| 成年人三级视频| 91丨porny丨最新| 国产人妻精品一区二区三| 性色av一区二区三区免费| 成人影视亚洲图片在线| 国内自拍偷拍视频| 欧美性色综合网| 99色在线观看| 一区二区三区四区五区精品| 成人午夜免费视频| 91精品国自产| 国产成人精品av| 亚洲黄色精品| 97精品在线播放|