如何从R连接到HDFS并使用箭头读写parquets ?



我在HDFS中有几个parquet文件,我想读入R和R中的一些数据,我想写入HDFS并以parquet文件格式存储。我喜欢使用箭头库,因为我相信它是R中的pyarrow, pyarrow非常棒。

问题是,在R箭头文档中我找不到关于使用HDFS的信息,也没有太多关于如何正确使用库的信息。

我基本上是在寻找R的等效:

from pyarrow import fs
filesystem = fs.HadoopFileSystem(host = 'my_host', port = 0, kerb_ticket = 'my_ticket')

披露:我知道如何使用odbc来读写我的数据。虽然读取很好(但很慢),但以这种方式将大量数据插入impala/hive是纯粹可怕的(慢,经常失败,impala并不是真正以这种方式消化数据)。

我知道我可能会使用pyarrow与hdfs一起工作,但我希望避免在我的docker映像中安装python只是为了这个目的。

这个绑定目前在R中没有实现;在JIRA项目上有一个开放的票证,在撰写本文时仍然标记为"未解决":https://issues.apache.org/jira/browse/ARROW-6981。我将对JIRA票据进行评论,提到用户对实现这些绑定很感兴趣。