Hi databricksuser-5173 Thanks for confirming that you're using a standalone Azure Data Explorer (ADX) cluster.
You're right to point this out, ADX has a 32 MB limit per column value, and that’s enforced by design to ensure stable performance and efficient querying.
If you’re working with large files (like a 100MB XML or 50MB JSON), you’ll typically need to approach it differently, since such payloads can't be ingested directly as a single column value.
Here are a few practical approaches:
- Break the file into smaller parts before ingestion. For example, if it’s a large JSON array or XML with repeated elements, you can split it into individual objects or nodes and ingest them as separate rows. That keeps each row’s value well within the limit.
- Ingest only references or metadata into ADX – You can store the full payload in ADLS Gen2 and ingest only the path, metadata (like size or schema), and a reference ID into ADX. That way, ADX remains optimized for querying, and you can retrieve the full file separately when needed.
- Use compression – In some cases, compressing the payload (e.g., Base64-encoded GZIP) before ingestion can bring it under 32 MB, though that depends on the content and may require decompression logic during querying.
And this 32 MB limit is documented by Microsoft. The BigObject32 encoding policy explicitly states:
Overrides MaxValueSize property in the encoding Policy to 32 MB.
You can refer to the official documentation here for confirmation: https://learn.microsoft.com/en-us/kusto/management/alter-encoding-policy?view=microsoft-fabric#policy-encoding
If this answers your query, do click Accept Answer and Yes for was this answer helpful. And, if you have any further query do let us know.