Yes. You close the job (mark it
"UploadComplete") to allow Salesforce to begin processing the job. You'll create a new job for each discrete Bulk API operation.
From the Walkthrough for Bulk Insert (Bulk API v2.0):
- Close the job.
Once you're done submitting data, you can inform Salesforce that the job is ready for processing by closing the job.
The overall job lifecycle runs like this:
Salesforce queues a new job for processing once you’ve created it, uploaded data for the job, and moved the job to the UploadComplete state. Once the job is de-queued, Salesforce starts processing the job operation and moves the job to the InProgress state. Once the job has been fully processed, Salesforce moves the job to the JobComplete state, or Failed state, depending on if the job was successfully processed or not