在 RStudio 中,我可以像使用普通 R 数据帧一样在 GUI 中直观地预览 Spark 数据帧吗?

In RStudio, can I visually preview Spark Dataframes in the GUI like I can with normal R dataframes?

背景

这可能是我缺乏技能展示,但是当我在 R 中使用 RStudio 进行数据操作时,我喜欢在 GUI 的“环境”部分中单击数据框(对我来说,它位于屏幕的右上角)以查看我的连接、变异等在我完成工作流程时如何改变 table(s)。它对我来说是一种视觉完整性检查;当谈到 tables 和数据帧时,我是一个非常直观的思考者,我喜欢在编码时看到我的结果。作为例子,我点击这个:

看到这样的东西:

问题

最近,由于数据集非常大(约 2 亿行),我需要在 sparklyr 中完成我的一些 dplyr 工作,使用 Apache Spark 的本地实例来工作通过一些数据操作。它大部分工作正常,但我无法预览数据,因为 spark 数据框对象看起来像环境窗格中的列表:

除了单击之外,有没有一种方法可以让我在处理它们时在 RStudio 中“预览”我的 Spark 数据帧?

我试过的

所以您的第一个想法可能是“只需使用 head()”——您是对的!除了 运行 head(d1, 5) 在具有 2 亿行的本地 Spark df 上需要……很长时间。

有什么我可能遗漏的吗?

一般来说,我认为您需要在 Spark 数据帧上调用 collect()。因此,我会首先使用 sparklyr::sdf_sample 函数对 Spark 数据帧进行采样,比如 0.001% 的行(如果有 2 亿行),然后将该样本收集到常规数据帧中进行查看。

samp <- analysis_test %>% sdf_sample(fraction = .00001) %>% collect()