Azure Databricks:使用Apache Spark在云中進(jìn)行快速分析

責(zé)任編輯:cres

作者:Simon Bisson

2017-12-05 11:11:54

來源:企業(yè)網(wǎng)D1Net

原創(chuàng)

我們生活在一個大數(shù)據(jù)的世界里。目前這一代業(yè)務(wù)計算機(jī)系統(tǒng)每年產(chǎn)生數(shù)TB的數(shù)據(jù),通過CRM和ERP跟蹤銷售和生產(chǎn)。這個數(shù)據(jù)洪流只會隨著我們添加的工業(yè)物聯(lián)網(wǎng)傳感器而變得越來越兇猛,即便是實現(xiàn)最簡單的預(yù)測 維護(hù)系統(tǒng)也要用到這樣的數(shù)據(jù)。

微軟與Databricks的合作為Azure的數(shù)據(jù)平臺增添了新的分析工具。
 
我們生活在一個大數(shù)據(jù)的世界里。目前這一代業(yè)務(wù)計算機(jī)系統(tǒng)每年產(chǎn)生數(shù)TB的數(shù)據(jù),通過CRM和ERP跟蹤銷售和生產(chǎn)。這個數(shù)據(jù)洪流只會隨著我們添加的工業(yè)物聯(lián)網(wǎng)傳感器而變得越來越兇猛,即便是實現(xiàn)最簡單的預(yù)測/維護(hù)系統(tǒng)也要用到這樣的數(shù)據(jù)。
 
擁有這些數(shù)據(jù)是一回事,使用它們是另一回事。大數(shù)據(jù)通常是非結(jié)構(gòu)化的,分布在很多服務(wù)器和數(shù)據(jù)庫中。你需要用工具將它們收集在一起。這就是Apache Spark這樣的大數(shù)據(jù)分析工具發(fā)揮作用的地方。這些分布式分析工具可以跨計算機(jī)集群工作?;贖adoop等工具所使用的MapReduce算法開發(fā)的技術(shù),今天的大數(shù)據(jù)分析工具進(jìn)一步支持更多類似數(shù)據(jù)庫的行為,大規(guī)模地處理內(nèi)存數(shù)據(jù),使用循環(huán)加快查詢速度,為機(jī)器學(xué)習(xí)系統(tǒng)提供基礎(chǔ)。
 
Apache Spark速度很快,但Databricks速度更快。Databricks由Spark團(tuán)隊創(chuàng)建,是Spark的云優(yōu)化版本,利用公共云服務(wù)迅速擴(kuò)展,并使用云存儲來托管數(shù)據(jù)。它還提供了一些工具,你可以使用Jupyter Notebook等工具推廣開來的筆記本模型,以讓你更輕松地探索數(shù)據(jù)。
 
微軟對Azure Databricks的新支持稱為Azure Databricks,它標(biāo)志著云服務(wù)的新方向,將Databricks視作合作伙伴請進(jìn)門,而不只是獲取它。
 
雖然你一直可以在Azure上安裝Spark或Databricks,但Azure Databricks實現(xiàn)了在Azure Portal驅(qū)動安裝過程的一鍵式體驗。你可以使用自動調(diào)節(jié)來托管多個分析集群,以最大限度地減少正在使用的資源。你可以克隆和編輯集群,針對特定作業(yè)調(diào)整它們或?qū)ο嗤幕A(chǔ)數(shù)據(jù)運行不同的分析。
 
配置Azure Databricks的虛擬設(shè)備
 
微軟新服務(wù)的核心是使用在Azure容器服務(wù)上運行的容器構(gòu)建的托管的Databricks虛擬設(shè)備。你可以選擇它控制和使用的每個集群中的虛擬機(jī)數(shù)量,然后該服務(wù)將在配置并運行后自動處理負(fù)載,并裝載新的虛擬機(jī)以處理運行規(guī)模。
 
Databricks的工具直接與Azure資源管理器交互,Azure資源管理器為你的Azure訂閱服務(wù)添加安全組和專用存儲賬戶和虛擬網(wǎng)絡(luò)。它可以讓你的Databricks集群使用任何類別的Azure虛擬機(jī)——所以如果你打算使用它來訓(xùn)練機(jī)器學(xué)習(xí)系統(tǒng),你會選擇一個最新的基于GPU的虛擬機(jī)。當(dāng)然,如果一個虛擬機(jī)模型不適合你的問題,你可以將其切換為另一個。你只需克隆一個集群并更改VM(虛擬機(jī))定義即可。
 
Spark查詢使工程技術(shù)得以引入數(shù)據(jù)科學(xué)
 
Spark有自己的基于SQL的查詢語言,它與Spark DataFrames一起處理結(jié)構(gòu)化和非結(jié)構(gòu)化數(shù)據(jù)。DataFrames相當(dāng)于一個關(guān)系表,它建立在不同工場的分布式數(shù)據(jù)集合之上。使用命名列,你就可以使用R和Python等語言構(gòu)建和操作DataFrame;因此,開發(fā)人員和數(shù)據(jù)科學(xué)家都可以利用它們。
 
DataFrames本質(zhì)上是數(shù)據(jù)的一種領(lǐng)域特定語言,這種語言擴(kuò)展了所選平臺的數(shù)據(jù)分析功能。通過將熟悉的庫與DataFrames結(jié)合使用,你可以構(gòu)建復(fù)雜的查詢,從多個來源獲取數(shù)據(jù),跨多個列進(jìn)行工作。
 
因為Azure Databricks本質(zhì)上是數(shù)據(jù)并行的,并且只有在需要實現(xiàn)動作時才對其查詢進(jìn)行評估,所以它可以非??斓爻尸F(xiàn)查詢結(jié)果。由于Spark支持本地或擴(kuò)展的大多數(shù)常見數(shù)據(jù)源,因此可以相對輕松地將Azure DatabricksDataFrame和查詢添加到現(xiàn)有數(shù)據(jù),從而減少了遷移數(shù)據(jù)的需求以利用其功能的需求。
 
盡管Azure Databricks跨源提供高速分析層,但它也是數(shù)據(jù)科學(xué)家和開發(fā)人員嘗試構(gòu)建和探索新模型的有用工具,它可以將數(shù)據(jù)科學(xué)轉(zhuǎn)化為數(shù)據(jù)工程。使用Databricks Notebook,你可以開發(fā)數(shù)據(jù)的暫存視圖,代碼和結(jié)果都顯示在這個視圖中。
 
由此產(chǎn)生的筆記本是共享資源,所以任何人都可以使用它們來探索數(shù)據(jù)并嘗試新的查詢。一旦查詢經(jīng)過測試并轉(zhuǎn)換為常規(guī)作業(yè),其輸出可以作為Power BI儀表板的一個元素公開,從而使Azure Databricks成為端到端數(shù)據(jù)架構(gòu)的一部分,它支持比簡單的SQL或NoSQL服務(wù)更為復(fù)雜的報告——甚至支持Hadoop。
 
微軟加Databricks:Azure服務(wù)的新模型
 
微軟還沒有詳細(xì)說明Azure Databricks的價格,但它聲稱它可以提高性能并降低多達(dá)99%的成本,比在Azure的基礎(chǔ)架構(gòu)服務(wù)上運行你自己的非托管的Spark安裝。如果微軟的說法得到證實,那么這有可能節(jié)約大量資金,特別是當(dāng)你不再需要運行自己的Spark基礎(chǔ)架構(gòu)的因素也要算進(jìn)來。
 
Azure的Databricks服務(wù)將直接連接到Azure存儲服務(wù),包括Azure Data Lake,同時優(yōu)化查詢和緩存。也可以選擇與Cosmos DB一起使用,以便你可以利用全局?jǐn)?shù)據(jù)源和一系列NoSQL數(shù)據(jù)模型(包括MongoDB和Cassandra兼容性)以及Cosmos DB的圖形API。它與Azure的數(shù)據(jù)流工具也配合得不錯,為你提供近乎實時的物聯(lián)網(wǎng)分析的新選項。
 
如果你已經(jīng)在使用Databricks的Spark工具,這項新服務(wù)不會影響你或你與Databricks的關(guān)系。只有將本地開發(fā)的模型和分析功能遷移到Azure的云,你才會與微軟發(fā)生計費關(guān)系。你的管理任務(wù)也減少了,從而讓你有更多時間處理數(shù)據(jù)。
 
微軟在新服務(wù)上與專家伙伴合作的決策是很有意義的。Databricks有專業(yè)知識,而微軟有平臺。如果最終的服務(wù)取得成功,它可以為Azure未來的發(fā)展樹立一個新的模式,在企業(yè)現(xiàn)有資源的基礎(chǔ)上,使其成為Azure混合云的一部分,而無需將這些服務(wù)融入到微軟中。
 
版權(quán)聲明:本文為企業(yè)網(wǎng)D1Net編譯,轉(zhuǎn)載需注明出處為:企業(yè)網(wǎng)D1Net,如果不注明出處,企業(yè)網(wǎng)D1Net將保留追究其法律責(zé)任的權(quán)利。

鏈接已復(fù)制,快去分享吧

企業(yè)網(wǎng)版權(quán)所有?2010-2024 京ICP備09108050號-6京公網(wǎng)安備 11010502049343號