在GCP上连接b / w R studio server pro和hive

问题描述 投票:1回答:1

这不是编程相关的问题,请关注我。

我目前在GCP上设置了两个实例 - 一个是R studio服务器PRO,另一个是我的Hive DB集群。我希望使用我的rstudio server pro访问配置单元中的数据库。两者都在GCP上运行。

有人可以指导我吗? (我已经看过rstudio桌面的文章---> hive连接以及从spark集群中运行rstudio-server的文章,但我必须将Rstudio服务器PRO链接到hive db,两者都在GCP上运行:O)

hadoop hive google-cloud-platform google-cloud-dataproc rstudio-server
1个回答
1
投票

供将来参考:R studio - Dataproc -

在这种特殊情况下,我将数据从HiveDB推送到Spark并使用sparklyr包在同一集群内的R studio服务器中建立连接。如果您希望直接连接Hive,也可以检查“Hive-R-JDBC”连接。

GCP在计算引擎上提供R studio服务器PRO,但它不具成本效益。我用了大约8个小时,约收到21美元。一周5天,你看着> 100美元。我希望以下步骤可以帮助你:

R studio在端口8787上运行。您必须将此端口添加到防火墙网络规则中。在您的GCP中滚动到汉堡包图标并向下滚动到VPC Networks,单击防火墙规则并添加8787.它应该看起来像这样后来enter image description here

根据您的要求和位置设置数据集群。然后SSH进入浏览器窗口或运行gcloud命令行。只需按Enter键,当它提示在云shell.enter image description here中运行时

进入window / gcloud命令行后,为R服务器添加用户:

 sudo adduser rstudio 

为它设置密码。记住它。

接下来转到R studio网站,链接:https://dailies.rstudio.com/并点击Ubuntu for R studio服务器。复制链接地址enter image description here

返回窗口/命令行并安装它。在sudo wget之后粘贴链接地址,如下所示:

sudo wget https://s3.amazonaws.com/rstudio-ide-build/server/trusty/amd64/rstudio-server-1.2.650-amd64.deb

然后运行:

sudo apt-get install gdebi-core

接下来是:注意这是上面链接的r版本。

sudo gdebi rstudio-server-1.2.650-amd64.deb

按是接受,您应该看到一条消息R服务器处于活动状态(正在运行)。现在导航到GCP中的Compute Engine选项卡并复制主群集的外部IP(第一个)。现在打开一个新浏览器并输入:

http://<yourexternalIPaddress>:8787 

这应该打开R studio服务器,现在输入用过的id作为“rstudio”和你之前设置的密码。现在,您已从数据处理集群启动并运行R studio服务器。

**蜂巢**:

回到终端然后输入

     beeline -u jdbc:hive2://localhost:10000/default -n *myusername*@*clustername-m* -d org.apache.hive.jdbc.HiveDriver  

enter image description here

我们将从HDFS即Google云存储中将数据导入Hive。这里我们只是将数据从我们的存储桶复制到我们的hive表中。输入命令:

 CREATE EXTERNAL TABLE <giveatablename>
    (location CHAR(1),
     dept CHAR(1),
     eid INT,
     emanager VARCHAR(6))
 ROW FORMAT DELIMITED FIELDS TERMINATED BY ','
 LOCATION 'gs://<yourgooglestoragebucket>/<foldername>/<filename.csv>';

现在,您在Hive yourtablename中有一个表,其中包含功能 - > location,dept,eid和emanager - >来自Google云端存储中的csv文件 - > gs://

现在退出配置单元(CTRL + Z)并输入:

    ln -s /etc/hive/conf/hive-site.xml /etc/spark/conf/hive-site.xml

这是指向hive to spark中的配置文件的链接。最好这样做而不是将文件复制到该位置。因为可能会有困惑。

Spark:

输入以下内容登录spark-shell:

     spark-shell 

现在输入:

    spark.catalog.listTables.show 

检查HiveDb中的表是否存在。

enter image description here

现在转到Rstudio服务器浏览器并运行以下命令:

  library(sparklyr)
  library(dplyr)
  sparklyr::spark_install()
  #config
  Sys.setenv(SPARK_HOME="/usr/lib/spark")
  config <- spark_config()
  #connect
  sc <- spark_connect(master="yarn-client",config = config,version="2.2.1")

enter image description here

现在到右侧,您将在Environment旁边看到一个名为“Connection”的新选项卡。这是你的火花群集连接,点击它,它应该显示来自Hive的yourtablename。

© www.soinside.com 2019 - 2024. All rights reserved.