RStudio砖上

您可以使用RStudio流行的集成开发环境(IDE), R,连接到砖砖工作空间内计算资源。使用RStudio桌面连接到数据砖集群或者一个SQL仓库从你当地的开发机器上。您还可以使用web浏览器登陆你的砖工作区,然后连接到集群的砖RStudio服务器安装,在工作区中。

连接使用RStudio桌面

使用RStudio桌面连接到远程数据砖集群或SQL仓库从您的本地开发机器。连接在这个场景中,使用ODBC连接和调用ODBC包装函数R,在本节中所述。

请注意

如您不能使用包SparkRsparklyr在这个RStudio桌面场景中,除非你也使用砖连接。作为一种替代方法使用RStudio桌面,您可以使用web浏览器登录砖工作区,然后连接到一个集群,砖RStudio服务器安装在该工作区。

建立RStudio桌面在本地开发机:

  1. 下载并安装R 3.3.0或更高

  2. 下载并安装RStudio桌面

  3. 开始RStudio桌面。

创建一个RStudio项目(可选):

  1. 开始RStudio桌面。

  2. 点击文件>新建项目

  3. 选择新目录>的新项目

  4. 为项目选择一个新的目录,然后单击创建项目

创建一个R脚本:

  1. 与项目打开,点击文件文件>新建> R脚本

  2. 点击文件>另存为

  3. 名字的文件,然后单击保存

连接到远程数据砖集群或SQL通过ODBC R仓库:

  1. 得到了服务器主机名,港口,HTTP路径值你远程集群SQL仓库。在集群中,这些值JDBC / ODBC选项卡的高级选项。对于SQL仓库,这些值连接细节选项卡。

  2. 得到一个砖个人访问令牌

    请注意

    作为一个安全最佳实践进行身份验证时使用自动化工具,系统、脚本和应用程序,砖建议您使用OAuth令牌或个人访问令牌属于服务主体而不是用户工作区。为服务主体,创建令牌管理个人访问令牌服务主体

  3. 的砖ODBC驱动程序的安装和配置窗户,macOS,或Linux基于你的本地机器上的操作系统。

  4. 建立一个ODBC数据源名称(DSN)远程集群或SQL仓库窗户,macOS,或Linux基于你的本地机器上的操作系统。

  5. 从RStudio控制台(视图>焦点转移到控制台),安装odbcDBI包从凹口:

    需要(devtools)install_version(=“odbc”,回购=“http://cran.us.r-project.org”)install_version(=“DBI”,回购=“http://cran.us.r-project.org”)
  6. 回到你的R脚本(>焦点转移到源视图),加载安装odbcDBI包:

    图书馆(odbc)图书馆(DBI)
  7. 调用ODBC的版本dbConnect功能DBI计划,指定odbc司机在odbc包以及创建ODBC DSN,例如,一个ODBC DSN

    康涅狄格州=dbConnect(drv=odbc(),dsn=“砖”)
  8. 通过ODBC DSN调用一个操作,例如选择声明中通过dbGetQuery功能DBI计划,指定的名称和连接变量选择语句本身,例如从表命名钻石在一个模式(数据库)命名默认的:

    打印(dbGetQuery(康涅狄格州,“SELECT *从违约。钻石限制2”))

完整的R脚本如下:

图书馆(odbc)图书馆(DBI)康涅狄格州=dbConnect(drv=odbc(),dsn=“砖”)打印(dbGetQuery(康涅狄格州,“SELECT *从违约。钻石限制2”))

要运行此脚本,在源视图中,单击。前面的R脚本的结果如下:

_c0克拉切颜色清晰深度表0.23 x y z 1 1价格理想E SI2溢价61.5 55 326 0.21 3.95 3.98 2.43 - 2 2 61 326 3.89 3.84 2.31 59.8 E SI1

连接使用RStudio服务器

使用web浏览器登录到砖工作区,然后连接到一个集群,砖RStudio服务器安装,在工作区中。

请注意

作为替代RStudio服务器,您可以使用RStudio桌面连接到集群砖或SQL仓库从您的本地开发机器通过ODBC连接,并调用ODBC包装函数r .如您不能使用包SparkRsparklyr在RStudio桌面场景中,除非你也使用砖连接

RStudio服务器,您可以使用开源版或RStudio工作台(以前RStudio服务器bob下载地址Pro)版砖。如果你想使用RStudio工作台/ RStudio服务器Pro,你必须转移现有RStudio工作台/ RStudio服务器Pro砖(见许可证开始:RStudio工作台)。

砖建议您使用砖运行时对机器学习(砖运行时的ML)砖与RStudio服务器集群,集群,以减少启动时间。砖RStudio服务器的运行时毫升包含一个修改的版本的开源版本包的源代码中可以找到bob下载地址GitHub。下表列出了版本的RStudio服务器开源版目前预装砖运行时的ML版本。bob下载地址

砖ML版本的运行时

RStudio服务器版本

砖运行时7.3 LTS毫升

1.2

砖运行时9.1 LTS毫升和10.4 LTS毫升

1.4

RStudio集成体系结构

当你使用RStudio服务器数据砖,RStudio服务器守护进程运行在司机砖集群的节点。RStudio web UI是通过砖webapp的代理,这意味着您不需要做任何修改,您的集群网络配置。这个图展示了RStudio集成组件体系结构。

架构RStudio砖

警告

砖代理RStudio web服务端口8787在集群上的火花司机。这个web代理只有RStudio时使用。如果你在端口8787上启动其他web服务,您可能会让用户潜在的安全漏洞。砖不负责任何问题而导致的集群上不受支持的软件的安装。

需求

  • 集群的集群必须是通用的。

  • 你必须有可以连接到许可的集群。集群管理员可以给予你们这个许可。看到集群访问控制

  • 集群不得访问控制表,自动终止,或凭据透传启用。

  • 集群不得使用共享访问模式

  • 集群不得有火花的配置spark.databricks.pyspark.enableProcessIsolation设置为真正的

  • 你必须有一个RStudio服务器浮动Pro使用专业版的许可证。

开始:RStudio服务器操作系统版本

重要的

如果您使用的是砖运行时7.0毫升以上,RStudio服务器开放源码版本已经安装。bob下载地址您可以跳过部分安装RStudio服务器并跳到使用RStudio服务器开源版本bob下载地址

开始与RStudio服务器开源版砖,砖上必须安装RStudio集群。bob下载地址只需要执行这个安装一次。安装通常是由管理员来执行的。

请注意

你不能访问RStudio服务器集群上使用开源版本bob下载地址共享访问模式连接统一目录。关于集群访问模式的更多信息,请参阅集群访问模式是什么?

安装RStudio服务器开源版本bob下载地址

安装RStudio服务器开源版使用砖的砖集群运行时6bob下载地址.6毫升或以下,您必须创建一个init脚本安装RStudio服务器开源版二进制包。有关更多信息,请参见集群级init脚本。这里有一个例子笔记本电池DBFS上安装一个init脚本在一个位置。

重要的

  • 所有的用户都拥有DBFS读和写访问,所以init脚本可以被任何用户修改。如果这是一个潜在的问题,砖在Amazon S3上建议你把init脚本和限制权限。

  • 您可能需要修改URL包取决于你的Ubuntu版本运行时,你可以找到的发布说明

脚本=" " # ! / bin / bash设置-euxo pipefailRSTUDIO_BIN = " / usr / sbin / rstudio-server "如果[[!- f " $ RSTUDIO_BIN " & & $ DB_IS_DRIVER = " TRUE "]];然后apt-get更新apt-get安装- y gdebi-corecd / tmp#你可以在https://rstudio.com/products/rstudio/download-server/debian-ubuntu/找到新版本。wget https://download2.rstudio.org/server/bionic/amd64/rstudio服务器2022.02.1 - 461 amd64.deb - o rstudio-server.debsudo gdebi - n rstudio-server.debrstudio-server重启| |真的fi”“”dbutilsfsmkdir(“砖/ rstudio”)dbutilsfs(“砖/ rstudio / rstudio-install.sh”,脚本,真正的)
  1. 一个笔记本安装脚本中运行代码dbfs: /砖/ rstudio / rstudio-install.sh

  2. 在集群启动之前,添加dbfs: /砖/ rstudio / rstudio-install.sh作为一个init脚本。看到集群级init脚本获取详细信息。

  3. 启动集群。

使用RStudio服务器开源版本bob下载地址

  1. 显示的细节RStudio的集群服务器开放源码安装,然后单击bob下载地址应用程序标签:

    集群应用程序选项卡
  2. 应用程序选项卡上,单击设置RStudio按钮。这为您生成一次性密码。单击显示链接显示它并复制密码。

    RStudio一次性密码
  3. 单击打开RStudio在新选项卡中打开UI的链接。输入您的用户名和密码在登录表单和登录。

    RStudio登录表单
  4. 从RStudio UI中,您可以导入SparkR包和设置SparkR会话启动火花工作在你的集群。

    图书馆(SparkR)sparkR.session()#查询的第一个两行表命名为“钻石”#模式(数据库)命名为“默认”并显示查询结果。df< -SparkR::sql(“SELECT *从违约。钻石限制2”)showDF(df)
    RStudio开bob下载地址源版会话
  5. 你也可以附加sparklyr包和建立一个火花连接。

    图书馆(sparklyr)sc< -spark_connect(方法=“砖”)#查询一个表命名为“钻石”和显示前两行。df< -spark_read_table(sc=sc,的名字=“钻石”)打印(x=df,n=2)
    RStudio开bob下载地址源版sparklyr连接

开始:RStudio工作台

本节将向您展示如何设置和开始使用RStudio工作台(以前RStudio服务器Pro)砖集群。看到一个FAQ名称更改。根据您的许可,RStudio工作台可能包括RStudio服务器支持。

设置RStudio许可服务器

使用RStudio工作台在砖上,你需要把你的职业许可证浮点许可。寻求帮助,请联系帮助@rstudiocom。当你的执照转换,您必须设置一个许可证服务器RStudio工作台。

建立一个许可证服务器:

  1. 启动一个小实例云提供商网络;许可证服务器守护进程是非常轻量级的。

  2. 下载并安装相应版本的RStudio许可证服务器实例,并启动服务。有关详细说明,请参见RStudio工作台管理指南

  3. 确保许可服务器的端口是打开的砖实例。

安装RStudio工作台

建立RStudio工作台砖集群,您必须创建一个init脚本安装RStudio工作台二进制包和配置许可租赁使用您的许可证服务器。看到集群级init脚本为更多的细节。

请注意

如果你打算RStudio工作台安装在一个砖已经包括RStudio服务器运行时版本的开源版本包,首先需要卸载,包安装成功。bob下载地址

下面是一个例子在DBFS笔记本细胞生成一个init脚本。脚本执行额外的身份验证配置,简化与砖的集成。

重要的

  • 所有的用户都拥有DBFS读和写访问,所以init脚本可以被任何用户修改。如果这是一个潜在的问题,砖在S3和建议你把init脚本限制权限。

  • 您可能需要修改URL包取决于你的Ubuntu版本运行时,你可以找到的发布说明

脚本=" " # ! / bin / bash设置-euxo pipefail如果[[$ DB_IS_DRIVER = " TRUE "]];然后sudo apt-get更新sudo dpkg -清除rstudio-server #以防开源版本安装。bob下载地址sudo apt-get安装- y gdebi-core外星人# #安装RStudio工作台cd / tmp#你可以在https://rstudio.com/products/rstudio/download-commercial/debian-ubuntu/找到新版本。wget https://download2.rstudio.org/server/bionic/amd64/rstudio -工作台2022.02.1 - 461. - pro1 amd64.deb - o rstudio-workbench.debsudo gdebi - n rstudio-workbench.deb# #配置身份验证sudo回声> > /etc/rstudio/rserver.conf auth-proxy = 1sudo echo ' auth-proxy-user-header-rewrite = ^ (. *) $ $ 1 ' > > /etc/rstudio/rserver.confsudo echo ' auth-proxy-sign-in-url = <域> /登录。> > /etc/rstudio/rserver.conf html”sudo回声> > /etc/rstudio/rserver.conf admin-enabled = 1sudo回声的出口路径= / usr /地方/ sbin: / usr /地方/ bin: / usr / sbin: / usr / bin: / sbin: / bin ' > > /etc/rstudio/rsession-profile#支持浮点许可sudo回声> > /etc/rstudio/rserver.conf server-license-type =远程#会话配置sudo回声> > /etc/rstudio/rsession.conf session-rprofile-on-resume-default = 1sudo回声> > /etc/rstudio/rsession.conf allow-terminal-websockets = 0sudo rstudio-server许可证管理器许可证服务器< license-server-url >sudo rstudio-server重启| |真的fi”“”dbutilsfsmkdir(“砖/ rstudio”)dbutilsfs(“砖/ rstudio / rstudio-install.sh”,脚本,真正的)
  1. 取代<域>与你的砖和URL< license-server-url >浮点许可服务器的URL。

  2. 一个笔记本安装脚本中运行代码dbfs: /砖/ rstudio / rstudio-install.sh

  3. 之前启动一个集群添加dbfs: /砖/ rstudio / rstudio-install.sh作为一个init脚本。看到集群级init脚本获取详细信息。

  4. 启动集群。

使用RStudio服务器支持

  1. 显示集群上的细节RStudio并单击安装应用程序标签:

    集群应用程序选项卡
  2. 在应用程序选项卡中,单击设置RStudio按钮。

    RStudio一次性密码
  3. 你不需要一次性密码。单击打开RStudio UI链接,它会为你打开一个验证RStudio Pro会话。

  4. 从RStudio UI,您可以附加SparkR包和设置SparkR会话启动火花工作在你的集群。

    图书馆(SparkR)sparkR.session()#查询的第一个两行表命名为“钻石”#模式(数据库)命名为“默认”并显示查询结果。df< -SparkR::sql(“SELECT *从违约。钻石限制2”)showDF(df)
    RStudio Pro会话
  5. 你也可以附加sparklyr包和建立一个火花连接。

    图书馆(sparklyr)sc< -spark_connect(方法=“砖”)#查询一个表命名为“钻石”和显示前两行。df< -spark_read_table(sc=sc,的名字=“钻石”)打印(x=df,n=2)
    RStudio Pro sparklyr连接

RStudio服务器常见问题解答

RStudio服务器之间的区别是什么开源版和RStudio工作台吗?bob下载地址

RStudio工作台支持广泛的企业特性所不能提供的开源版本。bob下载地址你可以看到特征比较RStudio的网站

此外,RStudio服务器分布在开源版本bob下载地址GNU Affero通用公共许可证(AGPL),而专业版有一个商业组织不能使用AGPL许可证的软件。

最后,RStudio工作台与专业和企业支持来自RStudio,中国人民银行,而RStudio服务器开放源码版本不支持。bob下载地址

我能使用RStudio工作台/ RStudio服务器专业执照砖吗?

是的,如果你已经有了一个专业或企业RStudio许可证服务器,您可以使用许可砖。看到开始:RStudio工作台学习如何设置在砖RStudio工作台。

RStudio服务器运行在哪里?我需要管理其他服务/服务器吗?

正如你所看到的图RStudio集成体系结构,RStudio服务器守护进程运行在砖的司机(主)节点集群。与RStudio服务器开放源代码版本,您bob下载地址不需要任何额外的服务器/服务运行。然而,对于RStudio工作台,你必须管理一个单独的实例运行RStudio许可服务器。

我可以用RStudio服务器集群的标准吗?

请注意

本文描述了传统集群UI。信息关于新集群的UI(预览),包括术语集群访问模式的变化,看到创建一个集群。比较新和遗留的集群类型,明白了集群UI变化和集群访问模式

是的,你可以。

我可以用RStudio和自动终止服务器集群上吗?

不,你不能用RStudio启用自动终止时。自动终止可以清除未保存的用户脚本和数据在一个RStudio会话。保护用户免受这意想不到的数据丢失的情况下,RStudio在这样集群在缺省情况下是禁用的。

为客户谁需要清理集群资源不习惯时,砖推荐使用集群api清理RStudio集群基于一个时间表。

我该如何坚持我的工作RStudio吗?

我们强烈建议你坚持你的工作从RStudio使用版本控制系统。RStudio非常支持各种版本控制系统和允许您检查和管理你的项目。如果你不坚持你的代码通过下列方法之一,你有可能失去你的工作,如果一个工作区管理重新启动或终止集群。

一个方法是保存您的文件(代码和数据)砖文件系统(DBFS)是什么?。例如,如果您在保存一个文件/ dbfs /不会被删除的文件当你集群终止或重新启动。

另一种方法是将R笔记本保存到您的本地文件系统通过出口Rmarkdown,然后将文件导入到RStudio实例。这个博客共享使用RMarkdown R笔记本更详细地描述这些步骤。

另一种方法是安装一个Amazon Elastic文件系统(Amazon EFS)卷你的集群,这样当集群关闭你不会失去你的工作。当集群重启,砖重新安装亚马逊EFS体积,你可以继续你离开的地方。山现有亚马逊EFS卷到一个集群,调用创建集群(帖子/ api / 2.0 /集群/创建)或编辑集群(帖子/ api / 2.0 /集群/编辑在集群API 2.0)操作,指定亚马逊EFS卷挂载信息操作的cluster_mount_infos数组中。

确保你创建或使用的集群没有统一目录,自动终止,或自动伸缩功能启用。也确保集群安装体积有写访问权限,例如通过运行命令修改文件权限+ w< /道路/ /卷>在集群上。你可以在现有运行这个命令通过集群的集群网络终端,或者通过使用一个新的集群init脚本你指定在前面操作的init_scripts数组中。

如果你没有一个现有的亚马逊EFS体积,你可以创建一个。首先,请联系砖管理员和VPC ID,公共子网ID,砖的工作空间和安全组ID。然后使用这些信息,以及AWS管理控制台创建一个文件系统使用亚马逊EFS控制台使用自定义设置。在这个过程的最后一步,单击附加和复制的DNS名称和挂载选项,指定在前面cluster_mount_infos数组中。

我如何开始SparkR会话吗?

SparkR包含在砖运行时,但你必须装入RStudio。运行下面的代码在RStudio来初始化一个SparkR会话。

图书馆(SparkR)sparkR.session()

如果有一个错误导入SparkR包,运行.libPaths (),并验证/home/ubuntu/databricks/spark/R/lib包含在结果中。

如果不包括,检查的内容/usr/lib/R/etc/Rprofile.site。列表/home/ubuntu/databricks/spark/R/lib/SparkR驱动程序来验证SparkR包安装。

我如何开始sparklyr会话吗?

sparklyr包必须安装在集群上。使用下列方法之一的安装sparklyr包:

  • 图书馆作为一个砖

  • install.packages ()命令

  • RStudio包管理界面

图书馆(sparklyr)sc< -spark_connect(方法=)

如何RStudio集成砖R笔记本?

你可以移动你的工作笔记本和RStudio之间通过版本控制。

工作目录是什么?

在RStudio当你开始一个项目,你选择一个工作目录。默认这是主目录的司机(主)容器RStudio服务器正在运行。如果你希望你可以改变这个目录。

我可以从RStudio发射闪亮的应用程序运行在砖吗?

是的,你可以开发和视图闪亮的砖上RStudio内部应用程序服务器

我不能使用终端或git在RStudio砖。我怎样才能解决这个问题呢?

确保你有残疾的websockets。在RStudio服务器开源版,你可以bob下载地址从UI。

RStudio会话

在RStudio服务器支持,您可以添加allow-terminal-websockets = 0/etc/rstudio/rsession.conf禁用websockets为所有用户。

我看不出应用程序选项卡下集群的细节。

这个特性是不提供给所有客户。你必须在保费计划或以上