国产精品电影_久久视频免费_欧美日韩国产激情_成年人视频免费在线播放_日本久久亚洲电影_久久都是精品_66av99_九色精品美女在线_蜜臀a∨国产成人精品_冲田杏梨av在线_欧美精品在线一区二区三区_麻豆mv在线看

基于HBase構建可伸縮的分布式事務隊列

大數據 分布式
在HBase的幫助下,結合最佳實踐,我們該如何創建了一個線性可伸縮的,分布式事務隊列系統。

一個實時流處理框架通常需要兩個基礎架構:處理器和隊列。處理器從隊列中讀取事件,執行用戶的處理代碼,如果要繼續對結果進行處理,處理器還會把事件寫到另外一個隊列。隊列由框架提供并管理。隊列做為處理器之間的緩沖,傳輸數據和事件,這樣處理器可以單獨操作和擴展。例如,一個web 服務訪問日志處理應用,可能是這樣的:


 

框架之間的主要區別在于隊列語義,通常不同之處有以下幾點:

  • 調度保障機制: 至少一次,至多一次,只有一次。

  • 容災機制: 失敗對用戶和自動恢復是透明的。

  • 可用性: 數據在出現錯誤后可以保存并重啟。

  • 可擴展性:產品/用戶增加時的局限性。

  • 性能Performance: 隊列操作的吞吐量和延遲。

我們想在開源的 Cask Data Application Platform (CDAP)上提供一個動態可擴展,強一致性并且有一次性交易機制的實時流處理框架,在這個強大的機制保護下,開發者可以自由操作任何形式的數據操作而不用擔心不一致性,潛在的返工和失敗。它可以幫助開發者在沒有分布式系統背景的情況下建立他們的大數據應用。此外,如果需要可以關閉這種強大的保護機制換取高性能。它總是比其他方式更容易使用。

可擴展隊列

隊列有兩種基本操作:入隊和出隊。生產者將消息寫到隊頭(入隊),消費者從隊尾讀取數據(出隊)。如果做為一個整體你添加更多生成者時的入隊速度和添加更多消費者時的出隊速度足夠快,我們說這個隊列是可擴展的。

理想狀態下,擴展是線性的,這意味著兩倍的生產者 /消費者,會產生兩位速度的出隊/入隊,增長只受集群的規模限制。為了支持生產者的線性擴展,隊列需要一個存儲系統并且需要當前寫入者的數量線性擴展。為了應對消費者的線性擴展,隊列可以分區,例如一個消費者只處理隊列中的一段數據。

隊列擴展的另一個方面是它應該可以橫向擴展。這意味著隊列性能的上限可以通過增加集群結點的方式來提升。這是很重要的,它可以保證隊列不受當前集群大小限制根據數據的增長而擴展。

分區的 HBase 隊列

我們選擇 Apache HBase做為隊列的存儲層。它為存儲強一致性,可橫向擴展的行數據做了設計和優化。它的并發寫操作性能非常好,并提供了有序掃描以支持分區消費者。我們使用 HBase Coprocessors 的高效掃描濾波和隊列清洗。為了在隊列上使用一次性語義,我們用 Tephra’s 為 HBase 提供傳輸支持。

生產者和消費者具有操作獨立性。每個生產者通過 Hbase puts 批處理執行入隊操作,消費者通過執行 Hbase Scans 執行出隊操作。生產者和消費者的數量之間沒有關聯,他們可以分離。

此隊列存在一個消費者組的概念。一個消費者組,是由相同的關鍵字劃分的消費者集合,這樣,每個發布到隊列的事件,就會由此消費者組中的消費者去消費。使用消費者組,可以通過不同的關鍵字劃分同一個隊列,同時,也可以通過數據的操作性特點來拓展。按照上面訪問日志分析的例子,生產者和消費者組可能看起來像這樣:


 

 

對于Log Parser,這里有兩個生產者在運行,它們并發的向隊列寫數據。在消費者這邊,這里存在兩個消費者組。 Unique User Counter組有兩個消費者,使用UserID作為劃分(隊列的)關鍵字。Page View Counter組則有三個消費者,使用 PageID 作為劃分(隊列的)關鍵字。

 

 

隊列行值格式

當一個事件通過一個生產者被發布出去,一個或多個消費者組合將收到消息,我們把事件寫入 HBase 表的一個或多個行上,那么這條記錄就被設計成適用于每個消費者組。事件的有效負荷和元數據被存儲在獨立的列上,那么行的值就是下面這樣的格式:


 

兩個有趣的部分是行的值是分區 ID 和整個 ID。分區 ID 通過限定行值前綴再提供給消費者。消費者只被允許讀數據,并在出隊的時候使用前綴掃描。分區 ID 由兩部分組成:一個消費者組 ID 和一個消費者 ID。生產者計算出每個消費者組的分區 ID,并通過入隊寫到那些行。

行關鍵字中的入口 ID(Entry ID)包含了事務信息。它由 Tephra 觸發的生產者事務寫指針和單向增長的計數器組成。這個計數器由本地的生產者生成,同時,針對事件,計數器需要讓行關鍵字唯一,因為生產者可以在同一個事務中將多個事件加入隊列。

出隊列的時候,計數器會使用事務寫指針來決定,隊列入口是否已經提交,以及是否可以消費了。事務寫指針和計數器的組合,使得行關鍵字總是唯一的。這讓生產者可以獨立的操作,而不會有寫沖突。

為了生成分區 ID(Partition ID),生產者需要知道大小和每個消費者組的分區關鍵字。當應用程序啟動,以及組大小發生任何變化的時候,消費者組信息都會被記錄下來。

改變生產者和消費者

增加或減少生產者是很直接的,因為每個生產者都是獨立操作的。增加或減少生產者進程就可以滿足這個要求。然而,當消費者組的大小需要改變的時候,就需要協調來正確更新消費者組的信息。可以用下面的圖表來概括所需的步驟:

由于暫停和恢復是由 Apache ZooKeeper 來協調的,同時它們也是并行執行的,所以它們是兩個非常快速的操作。例如,之前我們提到的 Web 訪問日志分析應用程序,改變消費者組信息的過程可能看起來像這樣:


 

基于這個隊列的設計,入隊列和出隊列的性能,與單獨的批量 HBase Puts 和 HBase Scans 不相上下,這樣也帶來與 Tephra 服務器進行通訊的開銷。通過在同一個業務處理中將多個事件批量處理,可以大大降低這個開銷。

最后,為了避免“熱點聚焦(hotspotting)“,我們基于簇的大小提前分割了 HBase 表,同時,在行關鍵字(row key)上采用 加鹽(salting) 的方式來更好的分配寫。否則,由于是單調的增加業務處理寫指針,行關鍵字就會是連續的。

性能值

我們在小型的 10 節點的 HBase 集群上已經測試過性能,結果令人印象深刻。使用 1K 字節負載,以 500 個事件為一個批次大小,我們完成了生產和消費 100K 個事件/秒的吞吐量,其中運行了 3 個生產者和 10 個消費者。我們也觀察到當我們增加消費者和消費者的時候,吞吐量線性增加:例如,當我們將生產者和消費者數量加倍的時候,吞吐量增加到 200K 個事件/秒。

在 HBase 的幫助下,結合最佳實踐,我們成功的創建了一個線性可伸縮的,分布式事務隊列系統。同時,在 CDAP 中使用這個系統提供實時流處理框架:動態可伸縮,強一致性,以及一次交付的傳輸保證。

 
 
責任編輯:李英杰 來源: techtarget中國
相關推薦

2022-06-27 08:21:05

Seata分布式事務微服務

2020-07-15 09:20:48

MyCatMySQL分布式

2023-01-06 09:19:12

Seata分布式事務

2022-06-21 08:27:22

Seata分布式事務

2017-07-26 15:08:05

大數據分布式事務

2022-03-08 07:22:48

Redis腳本分布式鎖

2019-10-10 09:16:34

Zookeeper架構分布式

2009-06-19 15:28:31

JDBC分布式事務

2009-09-18 15:10:13

分布式事務LINQ TO SQL

2021-09-29 09:07:37

分布式架構系統

2023-09-11 15:40:43

鍵值存儲云服務

2023-12-26 08:59:52

分布式場景事務機制

2021-02-01 09:35:53

關系型數據庫模型

2021-10-30 19:30:23

分布式Celery隊列

2025-01-13 08:05:04

2022-10-19 08:39:46

?可?分布式集群

2015-04-21 09:39:03

javajava分布式爬蟲

2017-10-24 11:28:23

Zookeeper分布式鎖架構

2024-01-26 13:17:00

rollbackMQ訂單系統

2020-09-08 13:25:52

HBase分布式數據庫
點贊
收藏

51CTO技術棧公眾號

caoporen国产精品视频| 免费国产一区二区| 韩国av电影免费观看| 水蜜桃精品av一区二区| 亚洲国产欧美一区二区三区同亚洲 | 高清一区二区| 欧美精品 日韩| 岛国毛片在线播放| 国产福利精品导航| 久久久久久一区| 亚洲欧美一二三| 久久资源综合| 色老头一区二区三区| 9999热视频在线观看| 在线观看不卡一区| www污污在线| 中文字幕精品一区| 精品久久中文字幕| 亚洲天堂av线| 国产日韩欧美精品一区| 日韩av一二三四区| 99免费精品在线观看| 久久视频这里有精品| 成人一区二区三区视频| 伊人开心综合网| 天天天干夜夜夜操| 国产女同互慰高潮91漫画| 国产av人人夜夜澡人人爽麻豆| 日韩激情在线观看| 国内自拍中文字幕| 久久精品欧美一区二区三区麻豆| 欧美精品亚洲二区| 青青青青在线| 欧美刺激脚交jootjob| 日韩欧美国产精品一区二区三区| 亚洲精品高清在线| 国产综合在线观看| 天堂av一区| 成人免费视频观看视频| 国产在线国偷精品产拍免费yy| 5月婷婷6月丁香| 欧美香蕉大胸在线视频观看| av免费网站在线观看| 亚洲乱码国产乱码精品精| 精品国产一区二区三区在线| 成人午夜电影网站| 日本五码在线| 日韩在线观看免费网站| 欧美限制电影| 日韩精品一区二区在线视频 | 国产亚洲精品v| 成年人免费大片| 91精品欧美一区二区三区综合在| 男人皇宫亚洲男人2020| 国产免费一区二区三区在线观看| 性欧美暴力猛交另类hd| 日韩精品在线视频观看| 欧美在线导航| 日本天堂免费a| 精品国产一区二区在线观看| 日韩欧美一区二区三区免费看| 国产精品69久久久| 538prom精品视频线放| 精品国产美女| 91麻豆精品国产91久久久更新时间| 视频一区日韩| 久久久久久久午夜| 亚洲精品电影网| 美日韩一区二区| 欧美1—12sexvideos| 91视频网页| 欧美电影完整版在线观看| 欧美另类一区| 91黄色免费版| 好看的日韩av电影| 亚洲啪啪aⅴ一区二区三区9色| 91av中文字幕| 国产精品久久久久久久久久尿| 99超碰麻豆| 久久最新免费视频| 欧美日韩精品三区| 亚洲日本精品一区| 国产精品久久久久三级| 久久三级毛片| 手机福利在线视频| 亚洲免费av电影| 国产精品综合网| 国产一二三在线| 一区二区日本| 四季av一区二区凹凸精品| 欧美少妇性生活视频| 色多多国产成人永久免费网站| 国内外成人在线| 国产一区影院| 一区二区三区 欧美| 欧美—级高清免费播放| 国产精品理论片| av久久久久久| 久久精品免费播放| 国产精品久久久久久久久久免费看| 久久青青视频| av小说在线| 国产精品久久久一区二区三区| 91精品国产综合久久精品性色| 亚洲精品无码专区在线播放| 青青成人在线| 欧美人与性动交a欧美精品| 亚洲无线码一区二区三区| 日韩欧美中字| 88xx成人免费观看视频库 | 亚洲精品国久久99热| 欧美日本不卡高清| 高清不卡一区| 九色在线视频蝌蚪| 久久撸在线视频| 亚洲国产激情一区二区三区| 久久999免费视频| 99re6热只有精品免费观看| 欧美日韩伦理片| 黄色免费视频大全| 免费在线成人av电影| 国产精品久久久久久搜索| 日韩精品有码在线观看| 天天综合天天做天天综合| 羞羞视频在线观看| 爽爽免费视频| 天天操天天爱天天爽| 中国黄色录像片| 日本精品一区| 欧美日韩精品久久久免费观看| 国产suv精品一区二区三区88区| 久久精品国产综合| 999精品嫩草久久久久久99| 亚洲成年人在线播放| 欧美午夜片在线观看| 五月婷婷另类国产| 亚洲精品视频在线看| 久久久99精品久久| 国产精品天干天干在线综合| 成人免费视频视频在线观看免费| 免费在线成人| 又黄又爽毛片免费观看| 亚洲男人天堂色| 国产特级淫片高清视频| 国产一级做a爰片久久毛片男| av电影一区二区三区| 久久精品国产精品亚洲精品色| 日本一区二区三区四区在线观看| 亚洲欧美日韩国产综合在线| av不卡一区二区三区| 99精品国产视频| 亚洲欧美中日韩| 在线日韩一区二区| 日韩免费电影一区| 久久久99精品久久| 成人黄色av网站在线| 2023国产一二三区日本精品2022| 国产91精品欧美| 免费一区二区视频| 成人免费精品视频| 一区二区三区欧美日| 欧美高清一级片在线| 亚洲国产日韩欧美综合久久 | 国产精品专区在线| 小草在线视频在线免费视频| av在线影院| 久久三级中文| 欧美先锋影音| 91丝袜美腿高跟国产极品老师| **欧美大码日韩| 精品三级在线观看| 26uuu国产精品视频| 日韩av不卡播放| 免费看的毛片| av最新在线| 色天天综合网| 91色porny蝌蚪| 欧美日韩亚洲综合一区| 欧美美最猛性xxxxxx| 精品无码久久久久久久动漫| 香蕉视频禁止18| 国产精品av一区二区三区 | 99久久国产免费免费| 欧美三级一级片| h网站久久久| 亚洲成人一区| 亚洲女人****多毛耸耸8| 最近2019中文字幕大全第二页| 日本成人三级电影网站| 欧洲毛片在线| 青青草国产成人a∨下载安卓| 成人午夜视频网站| 67194成人在线观看| 奇门遁甲1982国语版免费观看高清 | 亚洲美女视频网| 国产欧美综合精品一区二区| 中文字幕乱在线伦视频乱在线伦视频| 精品网站999| 日本一区二区三区国色天香 | 一区二区中文|