DataOps(數據操作)是一門新興學科,將DevOps團隊與數據工程師和數據科學家角色結合在一起,提供一些工具、流程和組織結構服務于以數據為中心的企業。
什么是DataOps?
DataOps(數據操作)是一門新興學科,將DevOps團隊與數據工程師和數據科學家角色結合在一起,提供一些工具、流程和組織結構服務于以數據為中心的企業。
“DevOps的發展已經成為現代趨勢,但越來越多的人將某些數據科學功能添加到系統和發展中,因此,您的DevOps團隊中需要有數據思維的人才。”MapR Technologies公司首席應用程序設計師特德·鄧寧(Ted Dunning),他也是《機器學習物流:現實中的模型管理(Machine Learning Logistics: Model Management in the Real World)》一書的合著作者,他說道。
DataOps的原則
和DevOps一樣,DataOps方法也從敏捷方法中獲得了啟發。DataOps方法很重視持續交付分析見解,其主要目的是滿足客戶需求。
DataOps團隊重視分析工作。他們通過所提供的見解來衡量數據分析工作的性能。DataOps團隊會接受變化,并始終努力來了解不斷變化的客戶需求。
DataOps團隊是多個團隊。他們圍繞多個目標進行自我組織,努力減少“英雄主義”,以有利于團隊和流程的可持續性和可擴展性。
DataOps團隊自始至終來精心安排數據、工具、代碼和環境。可重復的結果是至關重要的。DataOps團隊傾向于將分析管道視為類似于精益生產線。
DataOps適用于哪些地方
鄧寧說,當今的企業越來越多地將機器學習技術應用到大量的產品和服務中,而DataOps是一種適合于來支持機器學習技術端到端需求的方法。
“例如,這種方式使得數據科學家更有可能獲得軟件工程的支持,以便在部署期間提交模型進行操作時能提供所需的東西,”鄧寧和MapR公司首席技術專家(及合著作者)艾倫·弗里德曼(Ellen Friedman)共同寫道。
他們補充道:“DataOps方法不僅限于機器學習。這種組織方式對于任何面向數據的工作都很有用,可以更輕松地利用所構建的全局數據結構的優勢。”
他們還指出DataOps非常適用于微服務架構。
DataOps的實際使用
鄧寧和弗里德曼表示,當企業采用這些新興的數據技術時,企業必須改進他們的方法來提高處理大規模數據的能力,并能夠對實際發生的事件進行應對。
他們寫道:“傳統上,孤立的角色被證明過于僵化和遲緩,很難適應正在經歷數字化轉型的大數據組織。這就是DataOps工作方式有所作為之處。”
DevOps方法匯集了軟件開發和運營方面的專家,使開發工作與業務目標更加一致,縮短開發周期并提高部署效率。它更強調具有一個跨職能團隊,跨越“各個技能領域”如運營、軟件工程、架構和規劃以及產品管理等。DataOps將數據科學和數據工程角色增加進來,并組合在一起,為了增加開發人員、運營專業人員和數據專家之間的協作和溝通。
鄧寧強調說,實現DataOps所承諾的一致性是需要將數據科學家納入到DataOps團隊中。
鄧寧說:“我認為這里要做的最重要的事情就是不要堅持在傳統象牙塔組織里那樣的做法,即讓數據科學家與開發團隊相脫離。您可以采取的最重要的一步就是將數據科學家真正地納入DevOps團隊,當數據科學家與團隊同吃同住,聽到同樣的抱怨時,他們自然會使工作保持一致。”
他補充說:“別把一件事情分離開來。他們需要傾聽來自一線的評論,推薦相同的解決方案,進行相同的分類處理。所以數據科學家的加入是關鍵的一步。”
但是,鄧寧還指出,數據科學家不一定始終包含在DataOps團隊中。
鄧寧說:“通常情況下,數據科學家在一段時間內加入到團隊中。他們的能力和識別力開始削弱,然后團隊中的某個人會承擔數據工程師的角色,這是一名低成本的數據科學家。實際上,數據科學家加入團隊一段時間后會離開,這是一個流動的狀態。”
如何組建一個DataOps團隊
組建DataOps團隊并不一定意味著您必須聘請新的專家。弗里德曼指出,許多企業已經在現有的DevOps團隊中擁有DataOps團隊的核心人員。下一步是確定需要進行數據密集型開發的項目和選定具有數據培訓背景的人員。這個人甚至有可能是一名數據工程師,而并非是全面的數據科學家。
弗里德曼說:“如果你需要這些擁有不同技能的人才,并要將他們組合在一起來完成這個共同的目標,這并不意味著你必須雇用一大堆人來擔任這些工作角色。通常你只需要雇傭那些有關鍵技能的人員,進行重新組合,以了解關鍵角色是什么。”
她說,重要的工作是改善具有不同技能成員之間的合作,以提高效率,并且更好地利用成員的時間和專業知識。
鄧寧和弗里德曼在書中寫道:“在大型項目中,某個特定的DataOps角色可能由多個人擔任,但也有一些人會擔任多個角色,這也很普遍。數據操作和軟件工程技能可能會有角色重疊,具有軟件工程經驗的團隊成員也許可勝任數據工程師的工作。通常數據科學家具有數據工程技能,但是很少見到數據科學和數據操作之間的角色重疊。”
鄧寧和弗里德曼說,DataOps團隊擁有一個共同目標也是非常關鍵的,該目標就是他們所支持的服務的數據驅動需求。
鄧寧說:“有了工程團隊和優秀的工程師,你需要做的就是設定好目標。一旦有了一個共同的目標,就可以解決問題了,那么團隊應經常組織在一起解決這些問題。當不同的人看到問題的不同方面時,困難就會出現。數據操作人員會擔心在一段時間內你獲得的答案是否具有可靠性,而數據科學人員往往把注意力集中在答案的準確性上。此時已經存在一些分歧,但如果他們希望解決同樣的問題,那么他們就愿意就如何解決這一問題進行妥協,我認為這是一個很容易建立起來的群體結構。”
版權聲明:本文為企業網D1Net編譯,轉載需注明出處為:企業網D1Net,如果不注明出處,企業網D1Net將保留追究其法律責任的權利。