免费观看又色又爽又黄的小说免费_美女福利视频国产片_亚洲欧美精品_美国一级大黄大色毛片

如何分析ApachePulsar的分層存儲

這篇文章將為大家詳細講解有關如何分析Apache Pulsar的分層存儲,文章內容質量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關知識有一定的了解。

10年積累的網站設計制作、成都網站建設經驗,可以快速應對客戶對網站的新想法和需求。提供各種問題對應的解決方案。讓選擇我們的客戶得到更好、更有力的網絡服務。我雖然不認識你,你也不認識我。但先網站設計后付款的網站建設流程,更有南樂免費網站建設讓你可以放心的選擇與我們合作。

如何分析Apache Pulsar的分層存儲

在一些流數據用例場景中,用戶希望將數據長時間存儲在流中。雖然 Apache Pulsar 對 topic backlog 的大小沒有限制,但將所有數據存儲在 Pulsar 中較長時間,存儲成本比較大。

下面介紹了 Apache Pulsar 的分層存儲特性(在 2.1 及之后的版本可用),分層存儲支持在不影響終端用戶的條件下,將較舊的數據移動到長期存儲中。

在推薦服務中,開發者不希望限制 backlog 的大小。以音樂服務為例,終端用戶每聽一首歌,就向 topic 中添加一條消息。使用這一 topic 訓練推薦算法,根據終端用戶聽過的音樂推薦用戶可能喜歡的音樂。然后,將計算結果推薦給用戶,再循環這個過程。

如何分析Apache Pulsar的分層存儲

推薦算法并非一成不變。音樂服務的數據科學家一直在不斷優化推薦算法,以更好地預測用戶喜歡的音樂,從而提高用戶對推薦服務的滿意度和參與度。

但是,如果每次修改算法時,都只運行修改時間點之后的用戶數據,不僅預測的準確度會受到影響,判斷算法的修改效果也會需要一段較長的時間。為了解決這一問題,算法需要盡可能多地運行用戶歷史數據。

Pulsar 允許用戶存儲任意大小的 topic backlog。當集群將要耗盡空間時,用戶只需添加新的存儲節點,系統將會自動重新平衡數據。但是,這樣的操作運行一段時間后,運維成本十分昂貴。

Pulsar 通過提供分層存儲(Apache Pulsar 2.1 起新增的特性)減少了成本/大小的損失。分層存儲為用戶提供大小不受限制的 backlog,且無需添加存儲節點;卸載較舊的 topic 數據到長期存儲中,長期存儲的成本比在 Pulsar 集群中存儲的成本低一個數量級。對于終端用戶來說,消費存儲在 Pulsar 集群或分層存儲中的 topic 數據沒有明顯差別。位于 Pulsar 集群和分層存儲中的 topic 生產和消費消息的方式也完全相同。

Pulsar 通過分片架構實現了分層存儲。Pulsar topic 的消息日志由一系列分片組成。序列中的最后一個分片是 Pulsar 當前寫入的分片。當前序列之前的所有分片都已封裝,也就是說,這些分片中的數據不可變。由于數據不可變,因此可以輕易地將數據復制到另一個存儲系統,而不必擔心一致性的問題。復制完成后,可以立即更新消息日志元數據中的數據指針,并且可以刪除 Pulsar 在 Apache BookKeeper 中存儲的數據副本。

如何分析Apache Pulsar的分層存儲

在 Pulsar 中使用分層存儲

Pulsar 目前支持通過 Amazon S3、GCS(Google Cloud Storage)、Filesystem 進行長期存儲。要使用 S3 進行分層存儲,管理員需要先在 S3 中創建一個存儲桶(bucket);然后,用存儲桶和創建存儲桶的區域配置 broker。

managedLedgerOffloadDriver=S3s3ManagedLedgerOffloadRegion=eu-west-3s3ManagedLedgerOffloadBucket=pulsar-topic-offload

用戶不直接在 Pulsar 中配置身份驗證。Pulsar 使用的 `DefaultAWSCredentialsProviderChain` 可以在多個位置查找驗證信息。

配置驗證信息最簡單的方式是在 pulsar-env.sh 中設置環境變量。

關于配置身份驗證方法的更多信息,參閱分層存儲文檔:
http://pulsar.apache.org/docs/en/concepts-tiered-storage/

配置好所有 broker 后,就可以開始使用分層存儲了。可以配置分層存儲的數據卸載為自動運行,也可以手動觸發。

自動遷移數據到長期存儲

管理員可以為命名空間設置大小閾值策略。配置大小閾值策略后,如果命名空間中的任一 topic 在 Pulsar 集群上的數據大小超過了閾值,topic 就會卸載分片到長期存儲中,直到 Pulsar 集群上的數據大小在閾值之內。

例如,當 Pulsar 集群上的數據大小超過 1 GB 時,指定命名空間中的 topic 卸載分片,可以使用以下命令:

pulsar-admin namespaces set-offload-threshold --size 1G my-tenant/my-namespace

當命名空間中的任一 topic 超過閾值時,topic 將會移動數據至長期存儲,釋放 Pulsar 集群上的存儲空間。

手動卸載

除了配置自動卸載數據外,還可以通過 REST 接口或命令行界面在單個 topic 上手動觸發卸載操作。要通過命令行界面觸發,用戶必須指定在 Pulsar 集群上為 topic 保留的最大數據量。如果 Pulsar 集群上的 topic 數據大小超過了設置的閾值,則將此 topic 上的分片移動到長期存儲中,直到 Pulsar 集群上的數據大小在閾值之內。移動數據時,先移動較舊的分片。

pulsar-admin topics offload --size-threshold 10M my-tenant/my-namespace/topic1

關于如何分析Apache Pulsar的分層存儲就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

本文標題:如何分析ApachePulsar的分層存儲
本文路徑:http://m.newbst.com/article32/ispipc.html

成都網站建設公司_創新互聯,為您提供定制開發定制網站外貿網站建設軟件開發手機網站建設微信小程序

廣告

聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯

網站建設網站維護公司