Bulk import and export in Rest API - Time & Space Complexity
When working with bulk import and export in REST APIs, it's important to understand how the time to process data grows as the amount of data increases.
We want to know how the number of operations changes when we import or export many items at once.
Analyze the time complexity of the following code snippet.
POST /api/items/bulk-import
Request body: [item1, item2, ..., itemN]
for each item in request body:
validate(item)
save_to_database(item)
Response: success or error
This code receives a list of items to import, then validates and saves each item one by one.
- Primary operation: Looping through each item to validate and save.
- How many times: Once for each item in the input list (N times).
As the number of items increases, the total work grows proportionally.
| Input Size (n) | Approx. Operations |
|---|---|
| 10 | About 10 validations and saves |
| 100 | About 100 validations and saves |
| 1000 | About 1000 validations and saves |
Pattern observation: Doubling the input roughly doubles the work done.
Time Complexity: O(n)
This means the time to complete the import grows directly with the number of items.
[X] Wrong: "Bulk import runs in constant time because it is one API call."
[OK] Correct: Even though it's one call, the server still processes each item individually, so time grows with the number of items.
Understanding how bulk operations scale helps you design efficient APIs and explain performance clearly in real projects.
"What if the API validated all items in parallel instead of one by one? How would the time complexity change?"