在`huge / big`数据集中列出BigQuery表 - 30K-40K +表

时间:2016-10-27 00:06:36

标签: google-bigquery

任务是以编程方式列出给定数据集中超过30-40K表的所有表

我们探索的初始选项是使用tables.list API(正如我们一直对普通数据集所做的那样,其中包含合理数量的表)

看起来此API返回最多1000个条目(即使我们尝试将maxResults设置为更大的值)
接下来的1000我们需要“等待”前一个请求的响应然后提取pageToken并重复呼叫等等 对于30K-40K +的数据集,这可能需要10-15秒甚至更多秒(在良好的天气下) 因此,对于我们来说,时间问题是我们要解决的问题!

在上述调用中,我们只返回nextPageTokentables/tableReference/tableId,因此响应的大小非常小!

  

问题:

有没有办法以某种方式增加maxResults,所以要在一个(或很少)的呼叫中获得所有表(假设它比30-40个呼叫快得多)?

我们到目前为止尝试的解决方法是将__TABLES_SUMMARY__与jobs.insertjobs.query API一起使用。 这样 - 整个结果在几秒钟内返回 - 但在我们的特定情况下 - 使用BigQuery jobs API不是一个选项,原因有多种。我们希望能够使用list API

0 个答案:

没有答案