An Azure search service with built-in artificial intelligence capabilities that enrich information to help identify and explore relevant content at scale.
Because embeddings are generated in the Databricks notebook before the Documents Push call, this is most likely Azure OpenAI deployment throttling—not an Azure AI Search indexing limit. A Standard Search tier will not remove that 429.
The useful change is a single, deployment-wide rate limiter shared by all Databricks tasks. Do not let every partition retry independently. Queue embedding calls by deployment, cap in-flight calls, and when one call gets 429, pause the whole queue for the returned retry-after-ms period (plus jitter), then retry only the failed documents using their existing deterministic Search keys.
Similar documents can appear random because request rate is evaluated in short windows, not only as a per-minute total. Log x-ratelimit-limit/remaining-requests, x-ratelimit-limit/remaining-tokens, and retry-after-ms for each embedding call. That will show whether RPM or TPM is exhausted.
If those limits are routinely near zero, allocate more TPM or use a separate embedding deployment for bulk indexing so query traffic cannot contend with it. If the 429 says temporary capacity rather than rate limit, Search scaling will not help; reduce concurrency and retry after the supplied delay.