日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

大數(shù)據(jù)實(shí)踐的6個(gè)階段

 yi321yi 2019-09-02

戳藍(lán)字“CSDN云計(jì)算”關(guān)注我們哦!

來源公眾號(hào) | 智領(lǐng)云科技

作者 | 智領(lǐng)云 彭鋒博士


在最新的“2018年Gartner數(shù)據(jù)管理技術(shù)成熟度曲線”報(bào)告中,DataOps的概念被首次提出,Gartner標(biāo)記其目前在“極為初級(jí)”這個(gè)階段里面,并預(yù)計(jì)需要5-10年的達(dá)到一個(gè)技術(shù)成熟時(shí)期

“極為初級(jí)”階段是報(bào)告描述的技術(shù)成熟曲線的五個(gè)階段之一,Gartner預(yù)計(jì)一項(xiàng)技術(shù)從出現(xiàn)到公眾熟知將經(jīng)歷以下的五個(gè)階段:

“極為初級(jí)” 階段 一項(xiàng)潛在的技術(shù)突破可以解決問題。早期的概念驗(yàn)證故事和媒體興趣引發(fā)了重要的宣傳。通常沒有可用的產(chǎn)品存在且商業(yè)可行性未經(jīng)證實(shí)。

“爆發(fā)增長”階段 早期宣傳產(chǎn)生了許多成功故事 – 通常伴隨著許多失敗。一些公司采取行動(dòng); 大部分都沒有。

“幻滅的低谷” 階段 由于實(shí)驗(yàn)和實(shí)施無法實(shí)現(xiàn),早期的利好逐漸減弱。該技術(shù)的生產(chǎn)者放棄技術(shù)或宣告失敗。只有幸存的供應(yīng)商改進(jìn)其產(chǎn)品以滿足早期采用者的需求,投資才會(huì)繼續(xù)。

“啟蒙的斜坡”階段 更多關(guān)于技術(shù)如何使企業(yè)受益的實(shí)例開始明確并且得到更廣泛的理解。后期迭代的產(chǎn)品來自技術(shù)提供商。更多企業(yè)資助開始注資試點(diǎn)項(xiàng)目; 保守的公司仍然保持謹(jǐn)慎。

“生產(chǎn)力的高原”階段 技術(shù)開始被廣泛接受。評(píng)估技術(shù)提供者的可行性的標(biāo)準(zhǔn)更明確。該技術(shù)廣泛的市場適用性和相關(guān)性顯然得到了回報(bào)。如果該技術(shù)不僅僅是一個(gè)利基市場,那么它將繼續(xù)增長。

基于上面的定義,Gartner報(bào)告基本上表明DataOps剛剛出現(xiàn)在數(shù)據(jù)管理領(lǐng)域,并且被認(rèn)為是像在幾年前Spark和流處理一樣的潛在市場顛覆性技術(shù)之一。那么DataOps到底意味著什么?為什么它只是在Hadoop引領(lǐng)大數(shù)據(jù)浪潮近10年后才出現(xiàn)?

我們將嘗試通過描述大數(shù)據(jù)項(xiàng)目的六個(gè)階段來回答這些問題,并了解DataOps真正帶來了什么。

階段1 技術(shù)試驗(yàn)階段

在此階段,你的團(tuán)隊(duì)可能會(huì)安裝一個(gè)Hadoop集群和Hive(可能帶有Sqoop),以便將一些數(shù)據(jù)傳輸?shù)郊翰⑦\(yùn)行一些查詢。近年來,包括Kafka和Spark在內(nèi)的組件也被考慮在內(nèi)。如果要進(jìn)行日志分析,也可以安裝ELK(ElasticSearch,LogStash,Kibana)等套件。

但是,這些系統(tǒng)大多數(shù)都是復(fù)雜的分布式系統(tǒng),其中一些系統(tǒng)需要數(shù)據(jù)庫支持。雖然許多提供單節(jié)點(diǎn)模式供你使用,但你的團(tuán)隊(duì)仍需要熟悉常見的Devops工具,如Ansible,Puppet,Chef,F(xiàn)abric等。

由于開源社區(qū)的辛勤工作,對大多數(shù)工程團(tuán)隊(duì)來說,使用這些工具和原型設(shè)計(jì)應(yīng)該是可行的。如果團(tuán)隊(duì)里面有一些優(yōu)秀的工程師,你可能會(huì)在幾周內(nèi)設(shè)置好一個(gè)可以聯(lián)通及運(yùn)行的系統(tǒng),具體的工作量一般取決于你要安裝的組件數(shù)量。

階段2 自動(dòng)化階段

在這個(gè)階段,你已經(jīng)擁有了一個(gè)基本的大數(shù)據(jù)系統(tǒng),接下來你的需求可能有:

  • 一些定期運(yùn)行的Hive查詢,比如每小時(shí)一次或每天一次,以生成一些商業(yè)智能報(bào)告;

  • 使用一些Spark程序運(yùn)行機(jī)器學(xué)習(xí)程序,生成一些用戶分析模型,使你的產(chǎn)品系統(tǒng)可以提供個(gè)性化服務(wù);

  • 一些需要不時(shí)從遠(yuǎn)程站點(diǎn)提取數(shù)據(jù)的爬蟲程序;

  • 或一些流數(shù)據(jù)處理程序,用于創(chuàng)建實(shí)時(shí)數(shù)據(jù)儀表板,顯示在大屏幕上。

要實(shí)現(xiàn)這些需求,你需要一個(gè)作業(yè)調(diào)度系統(tǒng),以根據(jù)時(shí)間或數(shù)據(jù)可用性來運(yùn)行它們。像Oozie,Azkaban,Airflow等工作流系統(tǒng)允許你指定何時(shí)運(yùn)行程序(類似Linux機(jī)器上的Cron程序)。

工作流系統(tǒng)之間的功能差異很大。例如,一些系統(tǒng)提供依賴關(guān)系管理,允許你指定調(diào)度邏輯,如作業(yè)A僅在作業(yè)B和作業(yè)C完成時(shí)運(yùn)行;一些系統(tǒng)允許僅管理Hadoop程序,而另一些系統(tǒng)則允許更多類型的工作流程。你必須決定一個(gè)最符合你要求的。

除了工作流程系統(tǒng),你還有其他需要自動(dòng)化的任務(wù)。例如,如果你的HDFS上的某些數(shù)據(jù)需要在一段時(shí)間后刪除,假設(shè)數(shù)據(jù)只保留一年,那么在第366天,我們需要從數(shù)據(jù)集中最早的一天中刪除數(shù)據(jù),這稱為數(shù)據(jù)保留策略。你需要編寫一個(gè)程序,為每個(gè)數(shù)據(jù)源指定并實(shí)施數(shù)據(jù)保留策略,否則你的硬盤將很快耗盡。

階段3 投入生產(chǎn)階段

現(xiàn)在你已經(jīng)擁有了一個(gè)自動(dòng)數(shù)據(jù)管道,數(shù)據(jù)終于可以在這個(gè)數(shù)據(jù)流水線上流動(dòng)起來!大功告成?現(xiàn)實(shí)情況是你的生產(chǎn)環(huán)境會(huì)遇到下面這些棘手的問題:

  • 第一年硬盤故障率為5.1%(與第一年服務(wù)器故障率類似)

  • 第4年服務(wù)器的故障率為11%

  • 大量使用的開源程序有很多bug

  • 你的程序可能估計(jì)也會(huì)有一些bug

  • 外部數(shù)據(jù)源有延遲

  • 數(shù)據(jù)庫有停機(jī)時(shí)間

  • 網(wǎng)絡(luò)有錯(cuò)誤

  • 有人在運(yùn)行“sudo rm -rf / usr / local /”時(shí)使用了額外的空格

這些問題發(fā)生的次數(shù)會(huì)比你想象的要頻繁得多。假設(shè)你有50臺(tái)機(jī)器,每臺(tái)機(jī)器有8個(gè)硬盤驅(qū)動(dòng)器,那么一年內(nèi)將有20個(gè)硬盤驅(qū)動(dòng)器故障,一個(gè)月大約2個(gè)。經(jīng)過幾個(gè)月的手動(dòng)過程掙扎,你終于意識(shí)到你迫切地需要:

  • 監(jiān)控系統(tǒng):你需要一個(gè)監(jiān)控程序來監(jiān)控硬件,操作系統(tǒng),資源使用情況,程序運(yùn)行;
  • 系統(tǒng)探針:系統(tǒng)需要告訴你它的各種運(yùn)行指標(biāo),以便它可以被監(jiān)控;

  • 警報(bào)系統(tǒng):出現(xiàn)問題時(shí),需要通知運(yùn)維工程師;

  • SPOF:避免單點(diǎn)故障,如果你不想在凌晨3點(diǎn)被叫醒,最好系統(tǒng)里不要出現(xiàn)SPOF;

  • 備份:你需要盡快備份重要數(shù)據(jù);不要依賴Hadoop的3份數(shù)據(jù)副本,它們可以通過一些額外的空格被輕松刪除;

  • 恢復(fù):如果你不希望每次發(fā)生時(shí)都手動(dòng)處理所有錯(cuò)誤,那么這些錯(cuò)誤最好盡可能自動(dòng)恢復(fù)。

在這個(gè)階段你意識(shí)到建立一個(gè)企業(yè)級(jí)的系統(tǒng)并不像安裝一些開源程序那么容易,可能我們要多下一點(diǎn)苦功了。

階段4 數(shù)據(jù)管理階段

一個(gè)企業(yè)級(jí)的大數(shù)據(jù)系統(tǒng)不僅要處理與任何標(biāo)準(zhǔn)系統(tǒng)操作類似的硬件和軟件故障問題,還要處理與數(shù)據(jù)相關(guān)的問題。對于一個(gè)真正數(shù)據(jù)驅(qū)動(dòng)的IT系統(tǒng),你需要確保你的數(shù)據(jù)完整,正確,準(zhǔn)時(shí),并為數(shù)據(jù)進(jìn)化做好準(zhǔn)備。

那么這些意味著什么?

  • 你需要知道在數(shù)據(jù)流水線的任何步驟中數(shù)據(jù)都不會(huì)丟失。因此,你需要監(jiān)控每個(gè)程序正在處理的數(shù)據(jù)量,以便盡快檢測到任何異常;

  • 你需要有對數(shù)據(jù)質(zhì)量進(jìn)行測試的機(jī)制,以便在數(shù)據(jù)中出現(xiàn)任何意外值時(shí),你接收到告警信息;

  • 你需要監(jiān)控應(yīng)用程序的運(yùn)行時(shí)間,以便每個(gè)數(shù)據(jù)源都有一個(gè)預(yù)定義的ETA,并且會(huì)對延遲的數(shù)據(jù)源發(fā)出警報(bào);

  • 你需要管理數(shù)據(jù)血緣關(guān)系,以便我們了解每個(gè)數(shù)據(jù)源的生成方式,以便在出現(xiàn)問題時(shí),我們知道哪些數(shù)據(jù)和結(jié)果會(huì)受到影響;

  • 系統(tǒng)應(yīng)自動(dòng)處理合法的元數(shù)據(jù)變更,并應(yīng)立即發(fā)現(xiàn)和報(bào)告非法元數(shù)據(jù)變更;

  • 你需要對應(yīng)用程序進(jìn)行版本控制并將其與數(shù)據(jù)相關(guān)聯(lián),以便在程序更改時(shí),我們知道相關(guān)數(shù)據(jù)如何相應(yīng)地更改。

此外,在此階段,你可能需要為數(shù)據(jù)科學(xué)家提供單獨(dú)的測試環(huán)境來測試其代碼。并給他們提供各種便捷和安全的工具,讓他們能快速驗(yàn)證自己的想法,并能方便地發(fā)布到生產(chǎn)環(huán)境。

階段5 重視安全性階段

在這個(gè)階段大數(shù)據(jù)已經(jīng)與你密不可分:面向客戶的產(chǎn)品由數(shù)據(jù)驅(qū)動(dòng),你的公司管理層依靠實(shí)時(shí)的業(yè)務(wù)數(shù)據(jù)分析報(bào)告來做出重大決策。你的數(shù)據(jù)資產(chǎn)安全將變得非常最重要,你能確定你的數(shù)據(jù)只有合適的人員才能訪問嗎?并且你的系統(tǒng)擁有身份驗(yàn)證和授權(quán)方案嗎?

一個(gè)簡單的例子是Hadoop的Kerberos身份驗(yàn)證。如果你沒有使用Kerberos集成運(yùn)行Hadoop,那么擁有root訪問權(quán)限的任何人都可以模擬Hadoop集群的root用戶并訪問所有數(shù)據(jù)。其他工具如Kafka和Spark也需要Kerberos進(jìn)行身份驗(yàn)證。由于使用Kerberos設(shè)置這些系統(tǒng)非常復(fù)雜(通常只有商業(yè)版本提供支持),我們看到的大多數(shù)系統(tǒng)都選擇忽略Kerberos集成。

除了身份驗(yàn)證問題,以下是你在此階段需要處理的一些問題:

  • 審計(jì):系統(tǒng)必須審計(jì)系統(tǒng)中的所有操作,例如,誰訪問了系統(tǒng)中的內(nèi)容

  • 多租戶:系統(tǒng)必須支持多個(gè)用戶和組共享同一個(gè)集群,具有資源隔離和訪問控制功能;他們應(yīng)該能夠安全,安全地處理和分享他們的數(shù)據(jù);

  • 端到端安全性:系統(tǒng)中的所有工具都必須實(shí)施正確的安全措施,例如,所有Hadoop相關(guān)組件的Kerberos集成,所有網(wǎng)絡(luò)流量的https / SSL;

  • 單點(diǎn)登錄:系統(tǒng)中的所有用戶在所有工具中都應(yīng)具有單一身份,這對于實(shí)施安全策略非常重要。

由于大多數(shù)開源工具都沒有在其免費(fèi)版本中提供這些功能,因此許多項(xiàng)目在安全問題上采用“撞大運(yùn)”的方法并不奇怪。我們同意安全的價(jià)值對不同的項(xiàng)目來說有不同的理解,但人們必須意識(shí)到潛在的問題并采取適當(dāng)?shù)姆椒ā?/span>

階段6 云基礎(chǔ)架構(gòu)的大數(shù)據(jù)階段

在這個(gè)階段隨著業(yè)務(wù)的不斷增長,越來越多的應(yīng)用程序被添加到大數(shù)據(jù)系統(tǒng)中。除了像Hadoop / Hive / Spark這樣的傳統(tǒng)大數(shù)據(jù)系統(tǒng),你現(xiàn)在需要使用TensorFlow運(yùn)行深度學(xué)習(xí),使用InfluxDB運(yùn)行一些時(shí)間序列分析,使用Heron來處理流數(shù)據(jù),或者一些Tomcat程序來提供數(shù)據(jù)服務(wù)API。每當(dāng)你需要運(yùn)行一些新程序時(shí),你會(huì)發(fā)現(xiàn)配置機(jī)器和設(shè)置生產(chǎn)部署的過程非常繁瑣,并且有很多的坑要踩。此外,有的時(shí)候你需要臨時(shí)搞到一些機(jī)器來完成一些額外的分析工作,例如,可能是一些POC,或者要對一個(gè)比較大的數(shù)據(jù)集進(jìn)行訓(xùn)練。

這些問題是你首先需要在云基礎(chǔ)架構(gòu)上運(yùn)行大數(shù)據(jù)系統(tǒng)的原因。像Mesos這樣的云平臺(tái)為分析工作負(fù)載和一般工作負(fù)載提供了極大的支持,并提供了云計(jì)算技術(shù)提供的所有好處:易于配置和部署,彈性擴(kuò)展,資源隔離,高資源利用率,高彈性,自動(dòng)恢復(fù)。

在云計(jì)算環(huán)境中運(yùn)行大數(shù)據(jù)系統(tǒng)的另一個(gè)原因是大數(shù)據(jù)工具的發(fā)展。傳統(tǒng)的分布式系統(tǒng)(如MySQL集群,Hadoop和MongoDB集群)傾向于處理自己的資源管理和分布式協(xié)調(diào)。但是現(xiàn)在由于Mesos / Yarn這樣的分布式資源管理器和調(diào)度程序的出現(xiàn),越來越多的分布式系統(tǒng)(如Spark)將依賴底層分布式框架來提供這些資源分配和程序協(xié)調(diào)調(diào)度的分布式操作原語。在這樣的統(tǒng)一框架中運(yùn)行它們將大大降低復(fù)雜性并提高運(yùn)行效率。

總結(jié)

我們看到過處于各種階段的實(shí)際的大數(shù)據(jù)項(xiàng)目。在Hadoop被采用了10多年之后,我們看到的大部分項(xiàng)目仍然停留在第1階段或第2階段。這里主要的問題是在第3階段實(shí)施系統(tǒng)需要大量的專業(yè)知識(shí)和大量投資。Google的一項(xiàng)研究表明,構(gòu)建機(jī)器學(xué)習(xí)系統(tǒng)所花費(fèi)的時(shí)間中只有5%用于實(shí)際的機(jī)器學(xué)習(xí)代碼,另外95%的時(shí)間用于建立正確的基礎(chǔ)架構(gòu)。由于數(shù)據(jù)工程師因難以培訓(xùn)而非常昂貴(由于需要對分布式系統(tǒng)有很好的理解),因此大多數(shù)公司都很不幸的沒能走進(jìn)大數(shù)據(jù)時(shí)代的快車道。

與DevOps一樣,DataOps是一個(gè)需要正確工具和正確思維的持續(xù)過程。DataOps的目標(biāo)是使以正確的方式更容易地實(shí)現(xiàn)大數(shù)據(jù)項(xiàng)目,從而以更少的工作從數(shù)據(jù)中獲得最大的價(jià)值。Facebook和Twitter等公司長期以來一直在內(nèi)部推動(dòng)類似DataOps的做法。然而,他們的方法通常與他們的內(nèi)部工具和現(xiàn)有系統(tǒng)相綁定,因此很難為其他人推廣。

在過去幾年中,通過Mesos和Docker等技術(shù),大數(shù)據(jù)操作的標(biāo)準(zhǔn)化成為可能。結(jié)合更加廣泛的采用數(shù)據(jù)驅(qū)動(dòng)的文化,DataOps終于準(zhǔn)備好可以進(jìn)入到大家的視野。我們相信這一運(yùn)動(dòng)將降低實(shí)施大數(shù)據(jù)項(xiàng)目的障礙,使每個(gè)企業(yè)和機(jī)構(gòu)都更容易獲取數(shù)據(jù)的最大價(jià)值。


福利

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請遵守用戶 評(píng)論公約

    類似文章 更多