[英]How to fetch 8 million records of Google Cloud using bigquery API in Node.js?
我正在使用Bigquery查詢Google雲數據。
當我運行查詢時,它返回約800萬行。 但這會引發錯誤:
響應太大而無法返回
我如何獲得所有800萬條記錄,任何人都可以幫忙。
1.大查詢響應的最大大小是多少?
正如在配額策略查詢中提到的,最大響應大小:壓縮128 MB(返回大型查詢結果時不受限制)
2.我們如何選擇查詢請求中未使用“導出方法”的所有記錄?
如果計划運行可能返回更大結果的查詢,則可以在作業配置中將allowLargeResults
設置為true。
即使結果集很小,返回大結果的查詢也將花費更長的時間執行,並且受到其他限制 :
在此處詳細了解如何進行分頁以獲得結果,並從BigQuery Analytics書籍 (從第200頁開始)開始閱讀,其中解釋了Jobs :: getQueryResults如何與maxResults
參數和int的阻止模式一起使用。
更新:
查詢結果大小限制-有時很難知道128 MB壓縮數據的含義。
當您在BigQuery中運行普通查詢時,響應大小限制為128 MB壓縮數據。 有時,很難知道128 MB壓縮數據的含義。 它會壓縮2倍嗎? 10倍? 結果在其各自的列中被壓縮,這意味着壓縮率趨於非常好。 例如,如果您有一列是一個國家的名稱,則可能只有幾個不同的值。 當您只有幾個不同的值時,這意味着沒有很多唯一信息,並且該列通常會很好地壓縮。 如果返回加密的數據塊,則它們可能無法很好地壓縮,因為它們大部分是隨機的。 (這在上面第220頁的鏈接的書中進行了說明)
嘗試這個,
在查詢窗口下,有一個“顯示選項”按鈕,單擊該按鈕,然后您將看到一些選項,
運行您的查詢,並查看它是否有效。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.