Based on my understanding of how CLOB works on Oracle.
Fetching a CLOB into a variable retrieves only a locator, not the full content. So chunking is necessary to efficiently read large data, prevent memory overflow, handle VARCHAR2 size limits, and improve performance.