后台作业,用于处理数据库中的数百万条记录[关闭]

我有一个必须将数据从SQL Server数据库迁移到MongoDB的要求,并且必须执行以下操作:

1) Read millions of records from a SQL Server database on a daily basis. 2) Perform some logic and prepare the request payload. 3) Call external ASP.Net Core API (for ex: https://hellworld.com/CreateRecord) which internally creates records in MongoDB.

应该将其配置为每天运行的后台作业。

那么每天要处理几百万条记录要遵循什么策略

1)创建Windows服务还是作为AWS作业更好? 2)应分批处理。如果是这样,如何配置作业以批量运行? 3)假设如果一次要处理1000条记录,我们如何确保批处理作业已完成并提取接下来的1000条记录? 4)如果由于某种原因导致作业失败,我们是否应该提取下1000条记录? 5)我们如何重试失败的工作?

请您提供一些示例代码来执行此任务。