admin管理员组

文章数量:1352192

I'm trying to read large 60M rows delta table from Databricks to Oracle using SQL Warehouse API with disposition=EXTERNAL_LINKS option, JSON_ARRAY format (with pl/sql). As far as I can see the API divides source dataset into JSON chunks of size about of 20Mb and for my table it's ~ 170 chunks. To decrease the data I've removed all unnecessary columns already (like audit fields, IDs, etc.)

So to read the data I have to perform steps like below:

  1. Read whole table and get next chunk internal link- 1 POST request
  2. Go in the loop into each chunk to get external link - 170 POST requests
  3. Get the data frim external link - 170 GET requests

So eventually the amount of requests becomes a bottleneck and it takes 20+ minutes to read whole table, which doesn't fulfil our existing requirements.

Hence my question is whether it's possible to avoid chunking by some additional option adding and read whole file using external link in one go? Or maybe some other possible actions to improve the performance for this use case?

Thank you in advance!

本文标签: Databricks sql api chunks read performanceStack Overflow