Track 3:Application
Track3是關(guān)于HBase應用的分享,來自騰訊、快手、滴滴、Pinterest、中國移動、中國人壽等多家公司的工程師為我們分享了HBase在應用和實踐中遇到的問題和經(jīng)驗。
來自騰訊的工程師程廣旭為我們帶來了 HBase 在騰訊的業(yè)務中的應用場景和經(jīng)驗。
騰訊目前有90多個 HBase 集群,大的集群有500多臺節(jié)點。騰訊內(nèi)部多個業(yè)務包括騰訊視頻,微信支付和騰訊云等都在使用HBase服務。其首先分享了使用 HBase 進行數(shù)據(jù)遷移的經(jīng)驗:Replication 和 ExportSnapshot.在實際使用中,業(yè)務每天的數(shù)據(jù)量都很大,這些數(shù)據(jù)需要保存的周期要么很大,要么很小。因此采取了按天分表的方式,也就是每天會創(chuàng)建一個新的表,對于過期的數(shù)據(jù),直接把當天的表刪掉即可。其次分享了對帶寬的優(yōu)化。
寫入HBase的流量主要有五個部分:
1.寫入,2.WAL,3.Flush,4.Small Compaction,5.Major Compaction。優(yōu)化的方法有:1.開啟CellBlock的壓縮。2.WAL的壓縮。3.增大memstore,減少Flush,減少Compaction。4.減少Compaction的線程數(shù)目。5.關(guān)閉Major Compaction。6.按天建表。最后介紹了如何共享RestServer。當每個HBase集群搭建一個RestServer時,如果讀取集群的請求很少,那么集群的RestServer資源比較浪費。騰訊做了一個改進,配置一個RestServer可以訪問多個HBase集群,同時在MySQL里記了哪些表可以通過這種方式訪問。
Track3-2: HBase at Kuaishou
PPT下載鏈接: http://t.cn/AijgodXA
來自快手的工程師徐明為我們分享了HBase在快手的應用和實踐。
快手每天有大量的用戶上傳大量的視頻,這部分視頻大部分是幾MB的對象,其存儲方案是:數(shù)據(jù)直接存儲在HDFS上,數(shù)據(jù)的索引存儲在HBase上,而最新的數(shù)據(jù)則存儲在memcache中。
為了提高 HBase的可用性,加快故障恢復速度,快手自研了hawk系統(tǒng),其包括master,agent,sniffer三個組件,由多個agent投票來確認一個節(jié)點是否掛了,然后由sniffer來處理掛的節(jié)點,并將有問題的節(jié)點迅速的從zk上刪掉。同時快手做了一些優(yōu)化來加速split log和assign region的過程。在Client端,則主要是確保有問題節(jié)點的region location能被快速清理掉。
RSGroup功能也在快手被大量使用,并做了一些優(yōu)化。一個是添加了FallBack RSGroup,如果某個RSGroup的全部節(jié)點都掛了,就從這個FallBack RSGroup中選擇機器;一個是添加了Global RSGroup,主要是滿足監(jiān)控需求,因為hbase的canary表需要分布在各個機器上。
快手還分享了其如何使用HBase來存儲和分析海量數(shù)據(jù)的案例。比如要解決計算用戶留存的問題,如果使用SQL的話執(zhí)行很慢,快手使用了Bitmap的解決方案。把需要提取的維度轉(zhuǎn)化成Bitmap,使用空間來減少消耗的時間。使用MR把選擇的維度轉(zhuǎn)成Bitmap,把Bitmap切成小塊,Bitmap的數(shù)據(jù)及meta都導入到HBase中。
Track3-3: HBase at DiDi
PPT下載鏈接:
http://t.cn/AijgK2qq
來自滴滴的工程師唐天航為我們帶來了HBase在滴滴的業(yè)務中的應用場景和經(jīng)驗。
滴滴國內(nèi)的HBase集群有7個,海外國際化集群有4個。覆蓋了滴滴全部的業(yè)務線,目前服務的項目大概有200多個,數(shù)據(jù)級是PB級。
滴滴使用HBase主要有兩個場景:1.離線數(shù)據(jù)查詢,包括Phoenix、Kylin、openTSDB的使用,2.GeoMesa系統(tǒng)構(gòu)建的軌跡數(shù)據(jù)系統(tǒng),可用于實時查詢、監(jiān)控和特征工程的數(shù)據(jù)挖掘。GeoMesa系統(tǒng)提供導入和導出接口,導入接口支持Native API、MR/BulkLoad、StreamingSQL,導出接口支持SparkCore、SparkSQL、CQL、GeoServer。這樣使用GeoMesa可以有以下好處:1、開箱即用,2、類SQL文本語言支持,3、橫向可擴張、4基于Hadoop生態(tài)。
滴滴在實踐中對zookeeper的改進為:分離server和client所依賴ZK,當client端的突發(fā)大量訪問造成zk不可用時,不會影響到服務端。(HBASE-20159,ZOOKEEPER-832)。滴滴在HBase/Phoenix上的改進,主要是Quota設置、replication以及查詢優(yōu)化(HBASE-21964,HBASE-22620,PHOENIX-5242)
最后, 滴滴建立了從Client端到HAProxy,然后到Thriftserver和QueryServer上,之后再到Hbase的多元用戶全鏈路追蹤,能夠更加有效提升運維效率。
Track3-4: Phoenix Best Practice In China Life Insurance Company
PPT下載鏈接:http://t.cn/AijgKfM4
來自中國人壽的工程師袁利鷗為我們分享了Phoenix在中國人壽的最佳實踐
中國人壽目前總的節(jié)點數(shù)有200多個,Phoenix集群的節(jié)點是30多個。集群整體的數(shù)據(jù)量是1300T,HBase單表大30T,每天大概會有上百個腳本運行。
Phoenix在中國人壽的應用場景:數(shù)據(jù)源是從核心的交易系統(tǒng)上產(chǎn)生,然后通過SharePlex,打到Kafka上,數(shù)據(jù)從Kafka實時接入到Phoenix集群上,通過查詢服務,為APP提供權(quán)益信息訪問。從物理架構(gòu)上看,最底層是Phoenix集群,向上有兩條鏈路,一條是Phoenix Gateway,另一條是實時查詢服務,通過負載平衡,承接到Weblogic集群上。
袁利鷗介紹了Spark Streaming的設計:1、對于整合后的表,會加入一些控制字段,記錄更新時間、刪除還是插入操作等。2、實時同步程序,按照表名或者統(tǒng)計字段做區(qū)分。
袁利鷗接著介紹了關(guān)于Phoenix的優(yōu)化,把Phoenix的系統(tǒng)表做為一個分組,數(shù)據(jù)表放在另一個分組中??蛻舳嗽L問時,每天會拉去一次元數(shù)據(jù),隨后就不用去訪問Phoenix 系統(tǒng)表,可以降低負載?;贖Base的一些優(yōu)化包括:1、Region Balance By Table。 2、G1GC
3、Manual MajorCompaction
Track3-5: HBase Practice in China Mobile
PPT下載鏈接:http://t.cn/AijgOxGa
來自中國移動蘇州研發(fā)中心Hbase負責人陳葉超介紹了Hbase在中國移動的實踐
中國移動目前大概有6000個物理節(jié)點,100多個集群,幾十PB數(shù)據(jù),單集群大600多個節(jié)點,單表大1.6PB,大3000萬并發(fā)訪問,存儲的數(shù)據(jù)采用較高壓縮比進行壓縮,減少存儲空間。
HBase在中國移動的幾個應用場景:1.北京移動的流量清單,比如手機使用流量,這個在掌上營業(yè)廳是可以查到的。2、DPI數(shù)據(jù),主要是信令相關(guān)的,有一些網(wǎng)絡優(yōu)化的設計。3、監(jiān)控和日志,包括小圖片、用戶標簽、爬蟲和市場營銷等。
中國移動在實踐中通過數(shù)據(jù)抽樣解決BulkLoad中數(shù)據(jù)傾斜問題。數(shù)據(jù)壓縮在Flush 和BulkLoad階段都不開啟,只在compaction階段使用,提高讀寫性能。混合使用SSD/HDD磁盤,compaction后數(shù)據(jù)存儲在HDD磁盤。對于更好的使用SSD,中國移動做了如下工作:1,backport HSM To HBase 1.2.6版本。2,所有用戶過來的寫入路徑都是SSD的,寫性能提高50%。此外,中國移動還開發(fā)了HBase集群智能運維工具:Slider和RegionServerGroup,可以控制資源的分配,并基于Region做了一套權(quán)限認證體系。
Track3-6: Recent work on HBase at Pinterest
PPT下載鏈接:http://t.cn/AijgO0KU
來自Pinterest 的技術(shù)lead徐良鴻分享了HBase在Pinterest的最新進展
Pinterest目前集群規(guī)模50臺,都部署在AWS上,數(shù)據(jù)量大概在PB級。2013年開始使用HBase 0.94 , 2016年升級為1.2版本。
Pinterest通過Apache Omid實現(xiàn)HBase對事務的支持,使用中發(fā)現(xiàn)Omid存在性能瓶頸,隨后自研Sparrow系統(tǒng),主要改進有:1,將commit操作移到客戶端,解決Transaction Manager 單點問題。2,將Transaction Manager 改為多線程實現(xiàn),begin操作可以不用等待commit完成。Sparrow與Omid相比,對于P99延時,Begin階段有100倍降低,commit階段也有3倍降低。
Pinterest自研了Argus系統(tǒng),與Kafka結(jié)合使用,提供WAL通知機制。大概的實現(xiàn)為:需要通知機制的數(shù)據(jù)會在client寫入時添加標記,這些標記會被傳到WAL層面,通過Kafka將WAL提供給 Argus Observer進行數(shù)據(jù)處理,處理方式是用戶自定義的。
Pinterest基于開源Lily實現(xiàn)Ixia,用于實時構(gòu)建HBase二級索引,同時整合了Muse,實現(xiàn)類SQL查詢。大概的實現(xiàn):寫入HBase的數(shù)據(jù)會傳到Replication Proxy,通過Kafka打到Indexer中,index manager會讀取HBase數(shù)據(jù)的列,如果需要建索引,會將數(shù)據(jù)寫入Muse中,Muse會根據(jù)數(shù)據(jù)的schema做檢索,query會在Muse中查詢,需要時會查詢HBase
徐良鴻介紹了Argus和Ixia設計的好處:1、基于異步的復制機制,對寫入的影響很小。2、與HBase系統(tǒng)獨立,分開運行,可以很快的進行數(shù)據(jù)處理。
Track3-7 HBase at Tencent Cloud
PPT下載鏈接:http://t.cn/AijgOeGJ
來自騰訊的工程師陳龍為我們分享了HBase在騰訊云上的經(jīng)驗。
云上服務會遇到很多管理和用戶相關(guān)的問題。陳龍說明了云服務的3個挑戰(zhàn):1、大量的技術(shù)咨詢工作。2、緊急情況的處理。3、故障定位分析。并結(jié)合兩個案例分析云服務的挑戰(zhàn)。
騰訊云在監(jiān)控方面,通過OpenTSDB收集table和region的metirc, 用戶可以登錄云監(jiān)控,設置Qps到某一閾值后,做反向通知。
陳龍分析了云上的故障有4類原因:
1、外部因素,例如資源泄露,大量請求,coprocessor問題
2、硬件因素,磁盤、網(wǎng)絡、CVM,資源
3、存儲因素,塊丟失、讀寫超時
4、配置因素,jvm、memstore、blockcache、flushsize
騰訊云通過提供文檔,工具和監(jiān)控等三個方式,解決在云上遇到的多種問題。陳龍最后分享了監(jiān)控系統(tǒng)的架構(gòu)。分享了云上管理服務的架構(gòu),比如需要快速的擴容或者縮容集群等。
轉(zhuǎn)載請注明出處“小米云技術(shù)”
名稱欄目:HBaseConAsia2019Track3概要回顧-創(chuàng)新互聯(lián)
轉(zhuǎn)載源于:http://www.rwnh.cn/article10/dosdgo.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站收錄、定制開發(fā)、網(wǎng)站營銷、域名注冊、動態(tài)網(wǎng)站、外貿(mào)網(wǎng)站建設
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容