混合云模式助力斗鱼搭建混搭大数据架构
云棲號案例庫:【點擊查看更多上云案例】
不知道怎么上云?看云棲號案例庫,了解不同行業不同發展階段的上云方案,助力你上云決策!
案例背景
2019杭州云棲大會大數據企業級服務專場,由斗魚大數據高級專家張龍帶來以 “混合云模式下 MaxCompute+Hadoop 混搭大數據架構實踐” 為題的演講。本文講述了從 Apache Hadoop 階段到 Cloudera CDH 階段斗魚大數據架構的發展歷程。提出了上云過程中斗魚遇到的問題和跳戰,包括數據安全、數據同步以及遷移任務。概括了混合云模式給斗魚帶來資源效率更高和資源成本更低的變化。
斗魚大數據架構發展歷程
?
在2014年中期,斗魚就開始使用大數據,最開始使用的是簡單的HBase和Hadoop。在2015年,開始使用CDH運維大數據集群,主要針對可視化運維。在2017年的下半年,斗魚開始接觸阿里云大數據的一些產品,并且與其他產品做了對比。最終選擇了阿里云的MaxCompute。
- Apache Hadoop階段
由于業務場景比較簡單,組件較少,并且使用的人也少,但可以靈活的操作,同時集群規模較小,運維要求低,可以自由的利用開源,培養了許多人才。但在發展過程中也遇到了一些阻礙,例如:組件增多,運維成本高,業務增長快,集群擴容操作繁瑣,人員增加,數據安全要求高,物理機操作,環境安全難保障。
- Cloudera CDH階段
斗魚為何選擇Cloudera CDH?原因主要有:首先,它能滿足業務發展需要,多組件運維成本低,集群擴容操作簡單,數據安全及環境安全有保障。其次,CDH在國內被廣泛使用。最主要的一點是斗魚的團隊內部有CDH人才。
Cloudera CDH給斗魚帶來了許多便利,包括支持豐富的組件,不用考慮兼容性,可以通過CM統一管理,進行Web化管理,同時支持中文。另外,支持安全管理,以及對Kerberos安全認證。
自建集群遇到了發展瓶頸,涉及到資源效率問題和資源成本問題。資源效率問題包括資源預算審批慢、機器采購周期長以及機房部署效率低。資源成本問題包括機器資源成本高、機房成本高還不穩定以及閑時資源空置較多。
?
大數據上云的挑戰
上云面臨的挑戰主要是如何保證數據安全,因為數據是企業核心的資源,安全性是非常關鍵的。其次是如何保持數據同步,是因為云上云下存在著海量數據。最后,因為云下存在大量的歷史業務,那該如何將業務安全遷移到云上也是一個問題。
- 如何保證數據安全?
對于數據丟失的問題,阿里使用原始數據進行備份,這是很關鍵的。對于核心數據泄露問題,幾率是很小的,因為泄露數據之后所要承擔的風險遠大于打敗競爭對手所提供的收益。對于云環境面向外網,如何保證安全訪問的問題,可以增加賬號訪問IP白名單及審計,設置公司內部才可訪問。
- 如何保持數據同步?
由于每天會產生PB級歷史數據和TB級數據增量。如何快速準確同步數據問題,可以使用數據同步工具,主要是基于DataX的改造。同時提高網絡專線能力,增加多根專線,自動地進行異常切換,與云上平臺業務進行隔離。利用數據校驗工具,校驗數據同步任務以及數據量。
- 如何安全遷移業務?
業務的安全遷移需要做到三個要求:1.不能引起故障,保證遷移可行性驗證。2.遷移成本不能太高,業務側盡量少改動。3.能上云也要能下云,盡量保證云上云下操作一致性。
為了做到不引起故障,要做到三個需要:需要做業務場景測試,保證業務場景全部覆蓋到,并且能夠識別能夠遷移的業務場景。需要數據質量檢驗,確保相同業務云上云下產出數據的一致性。需要數據效率驗證,確保云上任務數據產出時間,同時不影響業務。
- 如何保證較低的遷移成本?
斗魚在IDC中運行的任務主要分兩部分,第一部分是Java任務,占比很小,特點是基于封裝的HiveClient工具進行查詢計算。第二部分是XML配置化任務,特點是基于自定義XML文件,支持HiveSQL統計后導入其他存儲。針對這些任務的特點,斗魚也做了相應的改造。針對封裝OdpsClient,可以將HiveClient改成OdpsClient,并且改Hive URL為云環境。針對加模板改URL,可以引入MaxCompute參數模型,改Hive URL為云環境。
為了保證能上云也能下云,第一,需要數據能上能下,就是前面提到的數據同步中心。 第二,需要完善的配套工具,云上云下環境盡量透明化使用。第三,多使用通用功能,通過SQL+UDF能覆蓋大部分場景。
混合云模式帶來的變化
?
?
混合云模式帶來的變化主要針對資源效率低,難以跟上業務發展,以及資源成本高,企業財務壓力大兩方面。在資源效率方面,從自建集群到MaxCompute有一些變化,包括提前半年或一年提預算變成按量付費,采購耗時1到3個月變成資源可以無限使用,機房上架1周以上變為無機房概念。相比于IDC自建集群,MaxCompute每年大概節約1000w成本,保障集群零故障。同時也有一些附加的收益,包括阿里云的專業服務,當遇到技術問題時可以請教阿里的專家來幫助解決,以及計算資源可以量化,可以知道錢花在哪些業務了,以及與阿里專家交流,幫助解決業務難題。
?
在自建機房時,斗魚也做了一些開發,下圖所示為數據開發,包括基于Hue的查詢計算和云上的DataStudio數據開發,然后將Hue的API和DataStudio的API集中起來形成斗魚的大數據開放平臺,作用是可以提供給數據部門的人使用,也可以提供給業務部門的分析人員使用。
?
此外,斗魚也做了一些實踐,稱為多活數據中心,如下圖所示。斗魚通過確立自建機房的數據和阿里云數據在這兩個數據中心的角色,保證可以在多活數據中心的狀態下支撐更多的業務。
?
混合云帶來的變化總結起來,資源成本和資源效率是最大的兩個變化,還有可量化的成本、增值服務、額外的專業服務等,不僅可以給我們自己部門人員用,還可以給其他業務部門的人來用,并且他們對使用成本也是直接可見的。
云棲號案例庫:【點擊查看更多上云案例】
不知道怎么上云?看云棲號案例庫,了解不同行業不同發展階段的上云方案,助力你上云決策!
原文鏈接
本文為云棲社區原創內容,未經允許不得轉載。
總結
以上是生活随笔為你收集整理的混合云模式助力斗鱼搭建混搭大数据架构的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 认识Java异步编程
- 下一篇: 如何让 python 处理速度翻倍?内含