Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/email/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Migration Salesforce连接器和批处理作业如何使它们以分页方式工作,最好的方法是什么?_Migration_Salesforce_Mulesoft - Fatal编程技术网

Migration Salesforce连接器和批处理作业如何使它们以分页方式工作,最好的方法是什么?

Migration Salesforce连接器和批处理作业如何使它们以分页方式工作,最好的方法是什么?,migration,salesforce,mulesoft,Migration,Salesforce,Mulesoft,要求 一次性将超过500万条记录从salesforce迁移到后端数据库(每天执行) 所有记录在接收到DB之前都需要进行基本转换 限度 Vcores(部署时不能使用超过1个) Salesforce不允许SOSQL查询中的偏移量超过2000 现行方法 查询salesforce中的所有记录将它们加载到批处理作业中,步骤1作为批处理中记录的转换,然后我们将它们发送到步骤2,在该步骤中,它们被聚合并接收到数据库中 发行 1 vcore和内存不足以一次性加载所有500万条记录 替代品 我尝试将mul

要求

  • 一次性将超过500万条记录从salesforce迁移到后端数据库(每天执行)
  • 所有记录在接收到DB之前都需要进行基本转换
限度

  • Vcores(部署时不能使用超过1个)
  • Salesforce不允许SOSQL查询中的偏移量超过2000
现行方法 查询salesforce中的所有记录将它们加载到批处理作业中,步骤1作为批处理中记录的转换,然后我们将它们发送到步骤2,在该步骤中,它们被聚合并接收到数据库中

发行 1 vcore和内存不足以一次性加载所有500万条记录

替代品 我尝试将mulesoft salesforce连接器用于流式处理,但是流式处理的问题是,在批处理作业期间,它必须将所有记录加载到内存中,并且不能以预期的分页方式工作

如果我不使用批处理作业,而是为每个并行使用一个,即使在转换期间,流式处理也会将所有记录上载到内存中

因此,我尝试使用offset和limit执行分页以进行加载,但salesforce不允许值为2000 offset,因此无法实现


任何人都有一个他们已经实现的更好的方法。

批处理不会加载内存中的所有记录。它的设计就是为了避免这个问题。它会加载文件系统队列文件中的所有记录。请分享流程的更多细节,以了解它到底在做什么。