rstudio独立连接到hdfs

u5i3ibmn  于 2021-05-29  发布在  Hadoop
关注(0)|答案(1)|浏览(454)

我在笔记本电脑(windown/mac)上独立安装了r和rstudio,并远程安装了hadoop集群(linux)。我想从rstudio连接到hdfs来读取数据,进行处理,最后,如果需要,将结果推回到hdfs。
我不太确定这是可能的还是它只需要一个rstudio的服务器版本?有谁能建议一下最好的选择吗?
谢谢

30byixjq

30byixjq1#

它是一个安全的集群吗?如果不是的话,rwebhdfs包解决了这个问题。使用它,您可以使用以下代码连接到远程群集:

library(rwebhdfs)
hdfs <- webhdfs("<hdfs-webfs-node>", 50070, "<user>")
f <- read_file(hdfs, "/<path>/<to>/<file>")

这些包依赖于rcurl,当与安全集群一起使用时,它有一些限制(windows上的libcurl v1.0.0o)。要使用安全集群进行访问,我将使用 httr 使用webhdfsrestapi直接打包和查询集群


# WebHDFS url

hdfsUri <- "http://namenodedns:port/webhdfs/v1"

# Uri of the file you want to read

fileUri <- "/user/username/myfile.csv"

# Optional parameter, with the format &name1=value1&name2=value2

optionnalParameters <- ""

# OPEN => read a file

readParameter <- "?op=OPEN"

# Concatenate all the parameters into one uri

uri <- paste0(hdfsUri, fileUri, readParameter, optionnalParameters)

# Read your file with the function you want as long as it supports reading from a connection

data <- read.csv(uri)

直接从链接获取的代码
没有理由获取rstudio服务器。我希望这能给你指明正确的方向。

相关问题