為R開發人員提供的數據庫
本節提供了使用R語言在Databricks中開發筆記本和作業的指南。
入門的基本工作流程是:
導入代碼:要麼從文件或Git回購中導入自己的代碼,要麼嚐試下麵列出的教程。Databricks建議使用交互式的Databricks筆記本學習。
在集群上運行代碼:要麼創建自己的集群,要麼確保自己擁有使用共享集群的權限。將您的筆記本連接到集群,並運行該筆記本。
除此之外,你還可以擴展到更具體的主題:
參考
下麵的小節列出了幫助您開始使用R在Databricks中進行開發的關鍵特性和提示。
Databricks支持兩個為Apache Spark提供R接口的api:SparkR而且sparklyr.
SparkR
這些文章提供了SparkR的介紹和參考。SparkR是Apache Spark的R接口,提供分布式數據幀實現。SparkR支持選擇、過濾和聚合(類似於R數據幀)等操作,但針對的是大型數據集。
用筆記本和Databricks Repos管理代碼
磚筆記本電腦這些筆記本提供了與Jupyter類似的功能,但增加了諸如使用大數據的內置可視化、用於調試和性能監視的Apache Spark集成以及用於跟蹤機器學習實驗的MLflow集成。開始的導入一個筆記本.一旦您能夠訪問集群,您就可以了附加一個筆記本到集群,並運行筆記本.
磚回購允許用戶將筆記本和其他文件與Git存儲庫同步。Databricks Repos有助於代碼版本控製和協作,它可以簡化將完整的代碼庫導入Databricks、查看過去的筆記本版本以及集成IDE開發。開始的克隆遠程Git存儲庫.然後你可以打開或創建筆記對於存儲庫克隆,把筆記本到集群,和運行筆記本.
集群
磚集群為單個節點和大型集群提供計算管理。您可以根據自己的需要定製集群硬件和庫。數據科學家通常通過以下兩種方式開始工作創建一個集群或者使用現有的共享的集群.一旦您能夠訪問集群,您就可以了附加一個筆記本到集群或運行工作在集群上。
庫
Databricks集群使用Databricks Runtime,它提供了許多開箱即用的流行庫,包括Apache Spark、Delta Lake等。您還可以在庫中安裝額外的第三方或自定義R包,以便與筆記本和作業一起使用。
的默認庫開始磚運行時.使用用於機器學習的Databricks運行時對於機器學習的工作量。有關預安裝庫的完整列表,請參閱目標Databricks Runtime的“已安裝R庫”部分磚的運行時版本.
您可以使用Notebook-scoped R庫,它允許您使用CRAN或其他存儲庫中的庫修改您的筆記本或工作環境。要做到這一點,你可以使用熟悉的install.packages函數跑龍套
.下麵的示例安裝箭頭R包從默認的CRAN庫:
install.packages(“箭頭”)
如果您需要比Databricks Runtime中包含的版本更老的版本,您可以使用筆記本來運行install_version函數devtools
.下麵的示例安裝dplyr0.7.4版本來自CRAN:
需要(devtools)install_version(包=“dplyr”,版本=“0.7.4”,回購=“http://cran.r-project.org”)
以這種方式安裝的包可以在整個集群中使用。它們的作用域限定在安裝它們的用戶。這使您能夠在同一個計算上安裝同一個包的多個版本,而不會產生包衝突。
您可以安裝其他庫集群庫根據需要,例如CRAN。為此,在集群用戶界麵中,單擊>安裝新的> CRAN並指定庫的名稱。當您希望使用SparkR或sparklyr調用用戶定義函數時,這種方法尤其重要。
如果您需要一個比默認CRAN回購中包含的版本更老的版本,您可以在安裝庫對話框的存儲庫字段。例如,安裝dplyr
版本0.7.4時,輸入CRAN快照URLhttps://cran.microsoft.com/snapshot/2017-09-29/
.您可以通過運行packageVersion
記在筆記本上。例如,獲取已安裝的版本dplyr
:
packageVersion(“dplyr”)#[1]“0.7.4”
有關更多細節,請參見庫.
安裝一個定製包為一個庫:
從命令行或使用RStudio.
使用磚CLI將自定義包文件從開發計算機複製到DBFS為您的Databricks工作空間。
例如:
Databricks fs cp /local/path/to/package/
.tar.gz dbfs:/path/to/tar/file/ 運行命令將自定義包安裝到庫中
install.packages
.例如,從你工作區的筆記本上:
install.packages(包裹=“/ dbfs /道路/ /瀝青/文件/ < custom_package > gz”,類型=“源”,回購=零)
或者:
%sh R CMD INSTALL /dbfs/path/to/tar/file/
.tar.gz . zip
將自定義包安裝到DBFS中的庫之後,可以將庫添加到搜索路徑,然後用一個命令加載庫。
例如:
#添加庫到搜索路徑一次。.libPaths(c(“/ dbfs /道路/ /瀝青/文件/”,.libPaths()))#加載庫。您不需要再次將庫添加到搜索路徑。圖書館(<custom_package>)
將自定義包作為庫安裝在每一個節點在集群中,必須使用集群節點初始化腳本.
工作
您可以按照計劃或觸發的筆記本自動化工作負載創建、運行和管理Databricks作業在磚。
有關通過UI創建作業的詳細信息,請參見創建一個工作.
的喬布斯API 2.1允許您創建、編輯和刪除作業。
的喬布斯CLI為調用Jobs API提供了一個方便的命令行接口。
機器學習
Databricks支持各種各樣的機器學習(ML)工作負載,包括表格數據的傳統機器學習、用於計算機視覺和自然語言處理的深度學習、推薦係統、圖表分析等等。有關Databricks上機器學習的一般信息,請參閱Databricks機器學習指南.
對於ML算法,可以在用於機器學習的Databricks運行時.你也可以安裝自定義庫.
對於機器學習操作(MLOps), Databricks為開源庫MLFlow提供了托管服務。MLflow跟蹤允許您記錄模型開發並以可重用的格式保存模型;的MLflow模型注冊讓您管理和自動化模型向生產的推廣;而且工作和模型服務,與Serverless實時推理或經典MLflow模型服務,允許托管模型作為批處理,流作業作為REST端點。有關更多信息和示例,請參見MLflow指南或者是MLflow R API文檔.