srckeep 如何影响底层磁盘框架?

How does srckeep affect the underlying disk frame?

我有一个包含这些列的磁盘框架

key_a
key_b
key_c
value

假设磁盘帧是 200M 行,我想按 key_b 对它进行分组。此外,我想保持底层磁盘框架完好无损,以便稍后可以将其加入 key_c 上的其他内容或将其聚合到 key_a 上。我担心 srckeep 会影响底层磁盘框架。

这些都行吗?如果是这样,我可以期望一个比另一个更快吗?

  df %>% 
  srckeep("value", "key_b") %>%
  group_by(key_b) %>% 
  summarize(avg = mean(value)) %>% 
  collect
  df[
    keep = c("value", "key_b" 
    .(avg = mean(value)),
    .(key_b)
    ]

这些聚合中的任何一个将如何影响底层磁盘框架?之前有过这样的经历,我给一个变量赋了一个aggregation,然后运行delete(aggregation,结果把整个磁盘框都删了

当您应用一个操作时,它根本不会改变底层 disk.frame!

srckeep 只影响被使用的东西!在进行处理时,它只加载内存中 srckeep 中的那些列。同样,它根本不会影响基础数据。

除非你做 write_disk.frame(some_other_diskf, "to/location_of_disk.frame.df", overwrite=TRUE) 这将覆盖旧的 disk.frame。

disk.frame 始终在磁盘上。您可以使用 attr(diskf, "path")

查看它的位置