Google compute engine GCP数据流中的RAM磁盘-可能吗?

Google compute engine GCP数据流中的RAM磁盘-可能吗?,google-compute-engine,google-cloud-dataflow,ramdisk,ramdrive,Google Compute Engine,Google Cloud Dataflow,Ramdisk,Ramdrive,谷歌计算引擎支持RAM磁盘-请参阅。 我开发了一个项目,该项目将重用操作本地文件的现有代码。 对于可伸缩性,我将使用数据流。 这些文件在GCS中,我会将其发送给数据流工作人员进行操作。 我正在考虑通过在workers上使用RAM磁盘来创建更好的性能,将文件从GCS直接复制到RAM磁盘,并在那里进行操作。 我找不到任何这种能力的例子 这是一个有效的解决方案,还是我应该避免这种“把戏”?不可能使用ramdisk作为工作程序的磁盘类型,因为ramdisk是在操作系统级别上设置的。唯一可用的磁盘是标准永

谷歌计算引擎支持RAM磁盘-请参阅。
我开发了一个项目,该项目将重用操作本地文件的现有代码。
对于可伸缩性,我将使用数据流。
这些文件在GCS中,我会将其发送给数据流工作人员进行操作。
我正在考虑通过在workers上使用RAM磁盘来创建更好的性能,将文件从GCS直接复制到RAM磁盘,并在那里进行操作。
我找不到任何这种能力的例子


这是一个有效的解决方案,还是我应该避免这种“把戏”?

不可能使用ramdisk作为工作程序的磁盘类型,因为ramdisk是在操作系统级别上设置的。唯一可用的磁盘是标准永久磁盘(pd Standard)和SSD永久磁盘(pd SSD)。其中,SSD的速度肯定更快。您可以尝试添加更多工作人员或使用更快的CPU来更快地处理数据

作为比较,我试着运行一个使用标准和ssd的作业,结果表明,使用ssd比使用标准磁盘快13%。但是请注意,我刚刚测试了快速启动

使用SSD(3m 54s运行时间):

使用标准磁盘(4m 29秒运行时间):


不可能将ramdisk用作工作人员的磁盘类型,因为ramdisk是在操作系统级别上设置的。唯一可用的磁盘是标准永久磁盘(pd Standard)和SSD永久磁盘(pd SSD)。其中,SSD的速度肯定更快。您可以尝试添加更多工作人员或使用更快的CPU来更快地处理数据

作为比较,我试着运行一个使用标准和ssd的作业,结果表明,使用ssd比使用标准磁盘快13%。但是请注意,我刚刚测试了快速启动

使用SSD(3m 54s运行时间):

使用标准磁盘(4m 29秒运行时间):


虽然您想做的事情在技术上可能是可行的,但它不会帮助您提高性能。为了有效地执行任务,Beam已经尽可能多地使用了工人的RAM。如果您正在从GCS读取一个文件并对其进行操作,那么该文件已经将加载到RAM中通过将一大块RAM指定给RAM磁盘,您可能会使Beam运行得更慢,而不是更快。


如果您只是想让事情发生得更快,请尝试使用SSD,增加工作人员的数量,或者尝试使用
c2
机器系列。

虽然您想做的事情在技术上可能是可行的,但这无助于您提高性能。为了有效地执行任务,Beam已经尽可能多地使用了工人的RAM。如果您正在从GCS读取一个文件并对其进行操作,那么该文件已经将加载到RAM中通过将一大块RAM指定给RAM磁盘,您可能会使Beam运行得更慢,而不是更快。


如果您只是想让事情发生得更快,请尝试使用SSD,增加工作人员的数量,或者尝试使用
c2
机器系列。

您所说的“该文件将要加载到RAM中”是什么意思?我试图通过数据流实现的代码处理本地文件,因此我将把文件从GCS复制到本地存储。数据流是否“自动”使用一种RAM驱动器?您不应该手动将文件复制到磁盘,使用内置的
beam.io.Read()
(或者如果需要读取二进制文件,则直接使用
GcsIO()
)从GCS读取文件。它有各种各样的优化来并行化文件读取并在RAM中缓冲文件,而您不需要自己实现。比如,如果您手动安装并使用
googlecloudstorage
python模块,请不要这样做。从地面军事系统读取文件所需的一切都内置在Beam中。您所说的“该文件已经加载到RAM中”是什么意思?我试图通过数据流实现的代码处理本地文件,因此我将把文件从GCS复制到本地存储。数据流是否“自动”使用一种RAM驱动器?您不应该手动将文件复制到磁盘,使用内置的
beam.io.Read()
(或者如果需要读取二进制文件,则直接使用
GcsIO()
)从GCS读取文件。它有各种各样的优化来并行化文件读取并在RAM中缓冲文件,而您不需要自己实现。比如,如果您手动安装并使用
googlecloudstorage
python模块,请不要这样做。从GCS读取文件所需的一切都内置在Beam中。