Uma consulta pode ser concluída com êxito e ainda assim falhar ao baixar o seu resultado para o pandas. A biblioteca BigQuery Python pode usar um cliente BigQuery Storage API separado para esse download.

A interface RowIterator.to_dataframe documenta create_bqstorage_client, cujo valor predefinido é true, e um argumento bqstorage_client. Leia essas definições juntamente com as dependências presentes na aplicação. O êxito no caminho normal da consulta não prova que o transporte opcional de download tenha o mesmo suporte de proxy ou a mesma configuração.

EtapaO que inspecionar
Obtenção de credenciaisO transporte de credenciais e o endpoint de identidade
Envio e consulta de estado de uma consultaO caminho do pedido do cliente BigQuery
Download através do Storage APIO cliente Storage API e o seu transporte

Para uma comparação controlada, a opção documentada create_bqstorage_client=False evita a criação automática desse cliente adicional. Isso pode ajudar a identificar qual caminho falha. É uma escolha de transporte com implicações de desempenho, não prova de que o próprio proxy tenha sido reparado.

Se a aplicação fornecer o seu próprio cliente Storage API, configure esse cliente deliberadamente. Não presuma que um objeto HTTP personalizado ligado a outro cliente o reconfigura.

Exemplos mais antigos discutem implementações obsoletas de httplib2 ou hooks privados de construtor. Ajuste a integração à geração da biblioteca instalada e mantenha a etapa de falha no relatório. Um erro de conversão para DataFrame e uma ligação de rede rejeitada são resultados diferentes, mesmo quando ocorrem na mesma chamada de método.

Artigos relacionados