Both methods are using Bulk API
Differences:
- Upsert bulk - single operation offered by Salesforce connector which creates a new Job in Salesforce and creates a Batch within the Job. After batch is processed you need to make sure Job will be closed.
- Create Job -> Create Batch - two separate operations of the Salesforce connector to create a new Job and add a new Batch within the Job. After batch(es) is processed you need to make sure Job will be closed.
Both options are pretty similar.
Which one is better for you? I would check the Bulk API limits first and then decide -> Salesforce Bulk API Limits
Depending on the volume of data you are going to process you may want to create one or multiple batches (or maybe use multiple jobs).