we have a package that imports around 1 mio. rows daily from CSV files from an SFTP server into Salesforce.
The 1 mio rows are unevenly distributed through 15 CSV files.
Each CSV file maps to a distinct object in Salesforce.
There are no lookups, expressions, etc. in the package's tasks and no workflows, triggers, etc. listening to the SF objects. Also the objects are not detail objects in a master-detail relationship - they don't have parent objects. We simply move data from CSVs to Salesforce.
We use Salesforce Buik API.
However this package takes around 4-5 hours to execute.
When I run the same files sequentially through Apex Data Loader I'm done in less than 30 minutes.
Is there any way for use to reduce the execution time of this package? 4-5 hours is way too long for our use case.
What I tried so far without success:
- Switch to SOAP API
- Checking "Preserve Task Order" for the package