Carregando dados no BigQuery por meio do Cloud Functions e do Google Cloud Storage – Excedendo o limite de cota de tráfego de soquete

Carregando dados no BigQuery por meio do Cloud Functions e do Google Cloud Storage – Excedendo o limite de cota de tráfego de soquete

Eu tenho uma função Google Cloud (GCF) que monitora o Google Cloud Storage (GCS). Quando um arquivo cai em um bucket específico, o GCF aciona um LoadJob informando ao Big Query (BQ) para importar o arquivo.

estou usando oFunção LoadJob do NodeJSisso (pelo que entendi) deveria apenas instruir o BQ a importar o arquivo diretamente. Em outras palavras, o BQ deveria conversar com o GCS, em vez de meu GCF ser um intermediário e transmitir os dados de alguma forma.

No entanto, quando minha função é executada em vários arquivos ao mesmo tempo, recebo o seguinte erro de cota do GCF: Outgoing socket traffic for region us-central1 : per 100 seconds

O valor da cota padrão é 10737418240, que presumo estar em bytes, tornando a cota ~ 10 GB a cada 100 segundos.

Por que meu GCF deveria estar fazendoqualquertráfego de soquete de saída? A única coisa que estou fazendo é configurar um trabalho BQ para importar. Tudo isso deveria ser interno e, além disso, tudo deveria ser feito diretamente entre BQ e GCS, sem usar minhas cotas/largura de banda do GCF. Os arquivos são bem grandes, mas não é exatamente esse o objetivo de carregar no BQ diretamente do GCS?

Nota: Ao ler meu código um pouco mais de perto, também estou fazendo uma consulta para mover dados de uma tabela BQ para outra. No entanto, semelhante ao trabalho de carregamento, este é umConsultarJobque especifica uma tabela de destino para colocar os resultados nela. Portanto, nenhum desses dados deveria ser transmitido através do meu GCF e, em vez disso, toda a transferência de dados deveria ocorrer dentro do BQ.

Responder1

Na verdade, a transferência de dados vem da descompactação de um arquivo no GCS. Recebo um grande .tar.gz contendo vários arquivos, então descompacto (como um stream) no GCS. É daí que vem toda a transferência de dados.

É um pouco estranho para mim que isso seja considerado tráfego de soquete de saída, já que é interno ao datacenter do Google.

informação relacionada