向salesforce中的Account对象插入200万条记录的最佳方式是什么

向salesforce中的Account对象插入200万条记录的最佳方式是什么,salesforce,apex-code,loader,Salesforce,Apex Code,Loader,我们已经使用Apex Data Loader来插入/删除记录,但是在处理大量数据时需要花费更多的时间 请告诉我们实现这一目标的其他方法。如果您可以使用force.com平台,您可以使用。另请参阅本说明。如果您想自己完成,请使用BulkAPI或管理设置数据导入(设置|管理设置|数据导入|导入业务帐户)。请记住,BulkAPI对每个批次的限制为10000行,而管理导入对每个上载的限制为50000行,因此您必须对数据进行切片 或者,较新版本的Data Loader外部应用程序支持新的BulkAPI并可

我们已经使用Apex Data Loader来插入/删除记录,但是在处理大量数据时需要花费更多的时间


请告诉我们实现这一目标的其他方法。

如果您可以使用force.com平台,您可以使用。另请参阅本说明。

如果您想自己完成,请使用BulkAPI或管理设置数据导入(设置|管理设置|数据导入|导入业务帐户)。请记住,BulkAPI对每个批次的限制为10000行,而管理导入对每个上载的限制为50000行,因此您必须对数据进行切片

或者,较新版本的Data Loader外部应用程序支持新的BulkAPI并可以为您分割内容,您可以从“设置”菜单的“管理设置|数据管理”下下载Data Loader。从那里运行导入,让应用程序将数据分为多个批次


如果导入太慢,您可以尝试暂时挂起触发器、非必要的工作流和帐户验证。除此之外,您不能做太多,请记住salesforce数据库不是一个直接数据库,它是一个抽象层,必须在每一条数据持续存在于实际数据库之前仔细研究,这总是会造成性能损失。

mmix的答案是正确的,我会使用最新的数据加载程序,打开批量api,让它在你的数据上自由传播。你也可以找一个合作伙伴,比如Informatica,他们有很多处理大负载的经验

在后台,批量api将您的上载流式传输到(冗余、备份)磁盘,然后将上载作业排队以加载到db中,并使用并行线程(如果您有多个批处理)。这可能相当快,每小时有数百万条记录,但速度可能因多种原因而有所不同。没有保证,这是一个异步api

如果您有许多apex触发器或工作流,或者您的负载涉及共享更新(所有权更改等),这会将负载降低许多数量级

如果你真的被缓慢的加载所困扰,你也可以提交一个支持案例,让我们的perf人员跟踪你的加载过程,看看时间花在了哪里

希望有帮助