这不是与编程相关的问题,请耐心等待。
我目前在 GCP 上设置了两个实例——一个是 R studio server PRO,另一个是我的 Hive DB 集群。我希望使用我的 rstudio server pro 访问配置单元中的数据库。两者都在 GCP 上运行。
有人可以指导我吗? (我看过有关 rstudio 桌面的文章 ---> hive 连接以及从 spark 集群中运行 rstudio-server 的文章,但我必须将 Rstudio server PRO 链接到 hive db,两者都在 GCP 上运行:O)
最佳答案
供将来引用:R studio - Dataproc -
在这种特殊情况下,我将数据从 HiveDB 推送到 Spark 并使用 sparklyr 包在同一集群内的 R studio 服务器中建立连接。如果您希望直接与 Hive 连接,您还可以检查“Hive-R-JDBC”连接。
GCP 在计算引擎上提供 R studio server PRO,但它的成本效益不高。我已经使用了大约 8 小时,并被收取了大约 21 美元的费用。每周 5 天,您的收入 > 100 美元。希望以下步骤对您有所帮助:
R studio 在端口 8787 上运行。您必须将此端口添加到防火墙网络规则中。滚动到 GCP 中的汉堡包图标并向下滚动到 VPC 网络,单击防火墙规则并添加 8787。之后它应该看起来像这样
根据您的要求和位置设置数据处理集群。然后通过 SSH 进入浏览器窗口或通过 gcloud 命令行运行。当它提示在 Cloud Shell 中运行时,只需按回车键。
进入 window/gcloud 命令行后,为 R 服务器添加一个用户:
sudo adduser rstudio
为其设置密码。记住它。
接下来访问 R studio 网站,链接:https://dailies.rstudio.com/然后点击 Ubuntu for R studio server。复制链接地址
回到你的窗口/命令行并安装它。像这样在 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
按 yes 接受,您应该会看到消息 R server active (running)。 现在导航到 GCP 中的 Compute Engine 选项卡并复制主集群(第一个)的外部 IP。现在打开一个新的浏览器并输入:
http://<yourexternalIPaddress>:8787
这应该打开 R studio 服务器,现在输入使用的 id 作为“rstudio”和您之前设置的密码。现在您已经启动并从您的数据处理集群运行 R studio 服务器。
** hive **:
回到终端输入
beeline -u jdbc:hive2://localhost:10000/default -n *myusername*@*clustername-m* -d org.apache.hive.jdbc.HiveDriver
我们将从我们的 HDFS 即 Google 云存储中将数据导入 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 中的配置文件的链接。这样做比将文件复制到该位置更好。因为可能会有混淆。
Spark :
通过键入以下内容登录到 spark-shell:
spark-shell
现在输入:
spark.catalog.listTables.show
检查 HiveDb 中的表是否存在。
现在转到 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")
现在在右侧,您将在环境旁边看到一个名为“连接”的新选项卡。这是您的 Spark 集群连接,单击它,它应该会显示来自 Hive 的 yourtablename。
关于hadoop - 在 GCP 上连接 b/w R studio server pro 和 hive,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50325464/
我正在使用Sequel构建一个愿望list系统。我有一个wishlists和itemstable和一个items_wishlists连接表(该名称是续集选择的名称)。items_wishlists表还有一个用于facebookid的额外列(因此我可以存储opengraph操作),这是一个NOTNULL列。我还有Wishlist和Item具有续集many_to_many关联的模型已建立。Wishlist类也有:selectmany_to_many关联的选项设置为select:[:items.*,:items_wishlists__facebook_action_id].有没有一种方法可以
我使用的是Firefox版本36.0.1和Selenium-Webdrivergem版本2.45.0。我能够创建Firefox实例,但无法使用脚本继续进行进一步的操作无法在60秒内获得稳定的Firefox连接(127.0.0.1:7055)错误。有人能帮帮我吗? 最佳答案 我遇到了同样的问题。降级到firefoxv33后一切正常。您可以找到旧版本here 关于ruby-无法在60秒内获得稳定的Firefox连接(127.0.0.1:7055),我们在StackOverflow上找到一个类
1.1.1 YARN的介绍 为克服Hadoop1.0中HDFS和MapReduce存在的各种问题⽽提出的,针对Hadoop1.0中的MapReduce在扩展性和多框架⽀持⽅⾯的不⾜,提出了全新的资源管理框架YARN. ApacheYARN(YetanotherResourceNegotiator的缩写)是Hadoop集群的资源管理系统,负责为计算程序提供服务器计算资源,相当于⼀个分布式的操作系统平台,⽽MapReduce等计算程序则相当于运⾏于操作系统之上的应⽤程序。 YARN被引⼊Hadoop2,最初是为了改善MapReduce的实现,但是因为具有⾜够的通⽤性,同样可以⽀持其他的分布式计算模
目录第1题连续问题分析:解法:第2题分组问题分析:解法:第3题间隔连续问题分析:解法:第4题打折日期交叉问题分析:解法:第5题同时在线问题分析:解法:第1题连续问题如下数据为蚂蚁森林中用户领取的减少碳排放量iddtlowcarbon10012021-12-1212310022021-12-124510012021-12-134310012021-12-134510012021-12-132310022021-12-144510012021-12-1423010022021-12-154510012021-12-1523.......找出连续3天及以上减少碳排放量在100以上的用户分析:遇到这类
require"socket"server="irc.rizon.net"port="6667"nick="RubyIRCBot"channel="#0x40"s=TCPSocket.open(server,port)s.print("USERTesting",0)s.print("NICK#{nick}",0)s.print("JOIN#{channel}",0)这个IRC机器人没有连接到IRC服务器,我做错了什么? 最佳答案 失败并显示此消息::irc.shakeababy.net461*USER:Notenoughparame
考虑一下:现在这些情况:#output:http://domain.com/?foo=1&bar=2#output:http://domain.com/?foo=1&bar=2#output:http://domain.com/?foo=1&bar=2#output:http://domain.com/?foo=1&bar=2我需要用其他字符串输出URL。我如何保证&符号不会被转义?由于我无法控制的原因,我无法发送&。求助!把我的头发拉到这里:\编辑:为了澄清,我实际上有一个像这样的数组:@images=[{:id=>"fooid",:url=>"http://
我有一个super简单的脚本,它几乎包含了FayeWebSocketGitHub页面上用于处理关闭连接的内容:ws=Faye::WebSocket::Client.new(url,nil,:headers=>headers)ws.on:opendo|event|p[:open]#sendpingcommand#sendtestcommand#ws.send({command:'test'}.to_json)endws.on:messagedo|event|#hereistheentrypointfordatacomingfromtheserver.pJSON.parse(event.d
我有一个ruby脚本可以打开与Apple推送服务器的连接并发送所有待处理的通知。我看不出任何原因,但当Apple断开我的脚本时,我遇到了管道损坏错误。我已经编写了我的脚本来适应这种情况,但我宁愿只是找出它发生的原因,这样我就可以在第一时间避免它。它不会始终根据特定通知断开连接。它不会以特定的字节传输大小断开连接。一切似乎都是零星的。您可以在单个连接上发送的数据传输或有效负载计数是否有某些限制?看到人们的解决方案始终保持一个连接打开,我认为这不是问题所在。我看到连接在3次通知后断开,我看到它在14次通知后断开。我从未见过它能超过14点。有没有人遇到过这种类型的问题?如何处理?
我的意思是之前建立的那个DB=Sequel.sqlite('my_blog.db')或DB=Sequel.connect('postgres://user:password@localhost/my_db')或DB=Sequel.postgres('my_db',:user=>'user',:password=>'password',:host=>'localhost')等等。Sequel::Database类没有名为“disconnect”的公共(public)实例方法,尽管它有一个“connect”。也许有人已经遇到过这个问题。我将不胜感激。 最佳答案
我有一个遗留数据库,我正在努力让ActiveRecord使用它。我遇到了连接表的问题。我有以下内容:classTvShow然后我有一个名为tvshowlinkepisode的表,它有2个字段:idShow、idEpisode所以我有2个表和它们之间的连接(多对多关系),但是连接使用非标准外键。我的第一个想法是创建一个名为TvShowEpisodeLink的模型,但没有主键。我的想法是,由于外键是非标准的,我可以使用set_foreign_key并进行一些控制。最后,我想说一些类似TvShow.find(:last).episodes或Episode.find(:last).tv_sho