An Azure service for ingesting, preparing, and transforming data at scale.
What you’re observing is expected behavior when using Azure Data Factory (ADF) Copy activity with Azure Data Explorer (ADX). The integration is designed for high-throughput bulk ingestion, so when a large dataset (like your ~95M rows) becomes available, it is ingested as quickly as possible, resulting in a short but intense ingestion spike.
Currently, there is no native mechanism in ADF or ADX to intentionally throttle or rate-limit a single ingestion job. Controls such as DIUs in ADF do not apply to ADX ingestion behavior, and ADX itself is optimized to ingest data as fast as possible, not to spread ingestion over time.
To smooth ingestion over a longer window (for example, 1–2 hours), the recommended approach is to reshape the ingestion pattern upstream rather than trying to slow down the ingestion engine.
The most effective pattern is to partition the dataset into smaller chunks and ingest them in a controlled sequence. Instead of a single large Copy activity, split the data into multiple smaller files or logical partitions (for example, by range, shard, or time slice), and process them using a ForEach activity in ADF. By limiting concurrency (for example, 1–2 parallel executions) and optionally introducing small delays between batches, you can distribute ingestion over the desired time window.
If your current ingestion is based on a single large file, splitting it into multiple smaller files upstream is particularly important. ADX handles multiple smaller ingestion units more flexibly, which allows better control over how ingestion load is distributed.
It is also important to note that ADX ingestion batching policies are designed to optimize ingestion of many small files and improve efficiency, but they do not provide a way to control or smooth ingestion rate for large batch loads.
Azure Data Explorer is designed to handle bursty ingestion patterns, and smoothing ingestion requires controlling how data is fed into the system (partitioning and orchestration) rather than relying on service-side throttling.
References:
https://learn.microsoft.com/en-us/azure/data-explorer/data-factory-integration
https://learn.microsoft.com/en-us/azure/data-explorer/ingest-data-overview
Hope this helps, Please let us know if you have any questions and concerns.