R開發人員的數據庫

本節提供使用R語言在Databricks中開發筆記本和作業的指南。

入門的基本工作流程是:

  1. 導入代碼:從文件或Git回購中導入自己的代碼,或嚐試下麵列出的教程。Databricks建議使用交互式的Databricks筆記本學習。

  2. 在集群上運行代碼:創建自己的集群,或者確保您擁有使用共享集群的權限。將筆記本連接到集群,並運行筆記本。

除此之外,你還可以拓展到更具體的話題:

教程

下麵的教程提供了示例代碼和筆記本,以了解常見的工作流程。看到導入筆記本電腦有關如何將筆記本示例導入工作空間的說明。

參考

下麵的小節列出了幫助您開始用R開發Databricks的關鍵特性和技巧。

Databricks支持兩種api,為Apache Spark提供R接口:SparkR而且sparklyr

SparkR

這些文章提供了一個介紹和參考SparkR.SparkR是Apache Spark的R接口,提供分布式數據幀實現。SparkR支持選擇、過濾和聚合(類似於R數據幀)等操作,但適用於大型數據集。

sparklyr

本文提供了一個介紹sparklyr.sparklyr是一個到Apache Spark的R接口,提供類似於dplyr掃帚,DBI

比較SparkR和sparklyr

本文解釋了SparkR和sparklyr之間的主要相似點和不同點。

使用SparkR和sparklyr處理DataFrames和表

本文介紹如何使用R、SparkR、sparklyr和dplyr來處理R data.frames、Spark DataFrames和Databricks中的Spark表。

使用筆記本和Databricks Repos管理代碼

筆記本電腦這些筆記本提供了類似於Jupyter的功能,但增加了諸如使用大數據的內置可視化,用於調試和性能監控的Apache Spark集成,以及用於跟蹤機器學習實驗的MLflow集成。從以下開始導入筆記本電腦.一旦您可以訪問集群,您就可以附上筆記本到集群和運行筆記本

回購允許用戶將筆記本和其他文件與Git存儲庫同步。Databricks Repos有助於代碼版本控製和協作,它可以簡化將完整的代碼存儲庫導入Databricks,查看過去的筆記本版本,並與IDE開發集成。從以下開始克隆遠程Git存儲庫.然後你可以打開或創建筆記使用存儲庫克隆,附上筆記本到集群,和運行筆記本

集群

集群為單個節點和大型集群提供計算管理。您可以根據需要定製集群硬件和庫。數據科學家通常會從創建集群或者使用現有的共享的集群.一旦您可以訪問集群,您就可以附上筆記本到集群或運行作業集群上。

Databricks容器服務

Databricks容器服務允許您在創建集群時指定Docker映像。Databricks提供databricksruntime / rbase以Docker Hub上的base image為例,啟動支持R的Databricks Container Services集群。另請參閱Dockerfile用於生成基本圖像。

Databricks集群使用Databricks Runtime,後者提供了許多開箱即用的流行庫,包括Apache Spark、Delta Lake等等。您還可以在庫中安裝額外的第三方或自定義R包,以便與筆記本和作業一起使用。

中的默認庫開始磚運行時.使用Databricks運行時機器學習用於機器學習工作負載。有關預安裝庫的完整列表,請參閱目標Databricks Runtime的“已安裝R庫”部分Databricks運行時發布

您可以使用筆記本範圍的R庫,它允許您使用CRAN或其他存儲庫中的庫修改您的筆記本或工作環境。要做到這一點,你可以使用熟悉的方法install.packages函數跑龍套.下麵的示例安裝Arrow R包從默認的CRAN存儲庫:

install.packages“箭頭”

如果您需要一個比Databricks Runtime中包含的版本更老的版本,您可以使用筆記本來運行install_version函數devtools.下麵的示例安裝dplyr0.7.4版本:

需要devtoolsinstall_version“dplyr”版本“0.7.4”回購“http://cran.r-project.org”

以這種方式安裝的包可以在整個集群中使用。它們的作用域僅限於安裝它們的用戶。這使您可以在同一計算上安裝同一包的多個版本,而不會產生包衝突。

您可以安裝其他庫集群庫根據需要,例如從CRAN。為此,在集群用戶界麵中單擊>安裝新的> CRAN並指定庫的名稱。當您希望使用SparkR或sparklyr調用用戶定義函數時,這種方法尤其重要。

如果需要比默認CRAN回購中包含的版本更舊的版本,請在安裝庫對話框的存儲庫字段。例如,安裝dplyr的CRAN快照URLhttps://cran.microsoft.com/snapshot/2017-09-29/.可以通過運行packageVersion在筆記本上的功能。例如,獲取的安裝版本dplyr

packageVersion“dplyr”# [1] '0.7.4'

詳情請參見

安裝定製包進入圖書館:

  1. 從命令行或使用RStudio

  2. 使用磚CLI將自定義包文件從開發機器複製到DBFS用於您的Databricks工作區。

    例如:

    Databricks fs cp /local/path/to/package/.tar.gz dbfs:/path/to/tar/file/
  3. 運行將自定義包安裝到庫中install.packages

    例如,在你工作空間的筆記本上:

    install.packages包裹“/ dbfs /道路/ /瀝青/文件/ < custom_package > gz”類型“源”回購

    或者:

    %sh R CMD INSTALL /dbfs/path/to/tar/file/.tar.gz .gz . sh命令

在DBFS中的庫中安裝自定義包後,可以將庫添加到搜索路徑,然後用一個命令加載庫。

例如:

#將庫添加到搜索路徑一次。.libPathsc“/ dbfs /道路/ /瀝青/文件/”.libPaths()))#加載庫。您不需要再次將庫添加到搜索路徑。圖書館<custom_package>

將自定義包作為庫安裝在每一個集群中的節點,必須使用集群節點初始化腳本

可視化

數據庫R筆記本支持各種類型的可視化顯示函數。

工作

您可以自動工作負載調度或觸發筆記本創建、運行和管理Databricks作業在磚。

機器學習

Databricks支持各種各樣的機器學習(ML)工作負載,包括基於表格數據的傳統機器學習、用於計算機視覺和自然語言處理的深度學習、推薦係統、圖形分析等。有關Databricks上機器學習的一般信息,請參閱Databricks機器學習指南

對於ML算法,可以使用中預安裝的庫Databricks運行時機器學習.你也可以安裝自定義庫

對於機器學習操作(MLOps), Databricks為開源庫MLFlow提供了托管服務。MLflow跟蹤允許您記錄模型開發並以可重用的格式保存模型;的MLflow模型注冊表讓您管理和自動化模型的生產推廣;而且工作和模型服務,與無服務器實時推理經典MLflow模型服務,允許托管模型作為批處理和流作業作為REST端點。有關更多信息和示例,請參見MLflow指南或者是MLflow R API文檔

R開發工具

除了Databricks筆記本,你還可以使用以下R開發工具:

額外的資源