Entity Bulk CSV Operations Guide¶
This page gives practical guidance for running bulk create and bulk update at good speed without triggering heavy throttling.
Commands¶
# Bulk create from CSV
pvw entity bulk-create-csv \
--csv-file .\\create.csv \
--batch-size 50 \
--throttle-ms 200 \
--max-retries 4 \
--retry-backoff-ms 1500 \
--retry-mode exponential \
--error-csv .\\create_failed.csv
# Bulk update from CSV
pvw entity bulk-update-csv \
--csv-file .\\update.csv \
--batch-size 50 \
--throttle-ms 200 \
--max-retries 4 \
--retry-backoff-ms 1500 \
--retry-mode exponential \
--error-csv .\\update_failed.csv
Use pvw to ensure you are running the latest source in this repo.
Performance Options¶
Both commands support these options:
--batch-size(default:100)--throttle-ms(default:0)--max-retries(default:3)--retry-backoff-ms(default:1000)--retry-mode(fixedorexponential, default:exponential)--dry-run--error-csv--debug
Preset Profiles¶
Fast¶
--batch-size 100 --throttle-ms 50 --max-retries 3 --retry-backoff-ms 1000 --retry-mode fixed
Use when API throttling is rare and you need max throughput.
Balanced¶
--batch-size 50 --throttle-ms 200 --max-retries 4 --retry-backoff-ms 1500 --retry-mode exponential
Recommended default for most tenants.
Safe¶
--batch-size 25 --throttle-ms 500 --max-retries 5 --retry-backoff-ms 2000 --retry-mode exponential
Use when your tenant is sensitive to burst traffic or you see frequent throttling.
The commands use the latest source from this repo when you run pvw from a local checkout, or the installed CLI if you already published it.
Practical Examples¶
Balanced bulk create¶
pvw entity bulk-create-csv \
--csv-file .\\create.csv \
--batch-size 50 \
--throttle-ms 200 \
--max-retries 4 \
--retry-backoff-ms 1500 \
--retry-mode exponential \
--error-csv .\\create_failed.csv
Balanced bulk update¶
pvw entity bulk-update-csv \
--csv-file .\\update.csv \
--batch-size 50 \
--throttle-ms 200 \
--max-retries 4 \
--retry-backoff-ms 1500 \
--retry-mode exponential \
--error-csv .\\update_failed.csv
Tuning Rules¶
- If you get throttled often: lower
--batch-sizeand increase--throttle-ms. - If runs are stable and too slow: increase
--batch-sizeor reduce--throttle-ms. - Keep
--retry-mode exponentialfor unstable environments.
CSV Notes¶
bulk-create-csvexpectstypeNameandqualifiedName.bulk-update-csvsupports GUID-driven rows ortypeName + qualifiedNamerows and now uses bulk payload calls per batch.- Use
--error-csvto capture failed rows for reprocessing. - Use
--dry-runto preview batch behavior without changing Purview.