您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

如何加快由多个工作人员批量导入Google云数据存储的速度?

如何加快由多个工作人员批量导入Google云数据存储的速度?

我对apache Beam不熟悉,答案是从一般流程的角度来看。

假设在各个输入文件部分的实体数据之间没有要考虑的依赖关系,那么是的,使用多个输入文件绝对有帮助,因为随后可以虚拟地并行处理所有这些文件(当然,这取决于可用的最大数量)。工作人员)。

您可能不需要事先拆分庞大的zip文件,如果与实际数据段处理相比,这种转换本身的开销可以忽略不计,则可能只需将单个输入数据流的段移交给单独的数据段工作者进行写入。 。

总体性能限制将是读取输入数据,将其拆分为多个段并移交给段数据工作者的速度。

数据段工作人员会将接收到的数据段进一步拆分为较小的块,最多等于最大500个实体,这些实体可以通过单个批处理操作转换为实体并写入到数据存储中。根据所使用的数据存储区客户端库的不同,有可能异步执行此操作,从而允许拆分成块并继续转换为实体,而无需等待之前的数据存储区写入完成。

数据段工作程序的性能限制将是将数据段拆分为多个块并将该块转换为实体的速度

如果异步操作不可用或吞吐量更高,则可以执行每个块的另一移交到段工作器,而段工作器执行到实体的转换和数据存储的批量写入。

那么,数据段工作程序级别的性能限制将仅仅是将数据段拆分为多个块并移交给块工作程序的速度。

使用这种方法,实际转换为实体并将它们批量写入数据存储区(无论是否异步)将不再位于拆分输入数据流的关键路径中,我认为这是您当前方法性能限制。

Go 2022/1/1 18:48:57 有352人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶