Что возвращает пробный прогон BigQuery?

Документы BigQuery говорят:

"Протестируйте свои запросы на меньших разделах таблицы, а не на одной большой таблице. Если вы используете API, проверьте запросы на синтаксис и получите статистику обработки данных с помощью флага dryRun".

Но они также говорят, для dryRun:

"Если установлено, на самом деле не запускать запрос. Действительный запрос возвратит пустой ответ, в то время как неверный запрос возвратит ту же ошибку, что и если бы это был не пробный запуск. Значение по умолчанию - false".

Это кажется противоречивым, или я что-то упустил?

2 ответа

Решение

Я вижу, как они немного не синхронизированы и могут использовать некоторые пояснения.

Вот еще одно описание dryRun это более точно. На https://cloud.google.com/bigquery/docs/reference/v2/jobs выполните поиск по запросу dryRun:

[Необязательно] Если установлено, на самом деле не запускайте это задание. Допустимый запрос вернет в основном пустой ответ с некоторой статистикой обработки, в то время как неверный запрос вернет ту же ошибку, что и в случае, если это не пробный запуск. Поведение заданий, не связанных с запросом, не определено.

Похоже, что в https://cloud.google.com/bigquery/launch-checklist документации просто отсутствует пункт между двумя независимыми предложениями.

Я зарегистрировал внутреннюю ошибку отслеживания для очистки этого. Спасибо, что сообщили нам об этом!

Нет, это не противоречит.

Как я вижу, первое сообщение гласит: "Попытайтесь увидеть, будет ли ваш запрос работать, включив флаг" пробного запуска "".

В то время как второе сообщение гласит: "Если у вас установлен флаг DryRun, установленный в значение true, он вернет статистику о вашем запросе, поэтому"totalBytesProcessed", без выполнения вашего запроса, если запрос действителен, и ту же ошибку, которую вы обычно получаете, если запрос недействителен

Так что думайте о "пробном запуске" как о проверке синтаксиса / проверке ошибок / проверенных байтов.

Другие вопросы по тегам