Что означает значение totalBytesProcessedAccuracy в ответе Jobs.Insert API DryRun - PullRequest
0 голосов
/ 16 марта 2019

Я заметил поле с именем totalBytesProcessedAccuracy в ответе Jobs.Insert API при настройке конфигурации запроса на DryRun = true.


    "query": {
       "totalBytesProcessed": "341880728292",
       "totalBytesBilled": "0",
       <b>"totalBytesProcessedAccuracy": "UPPER_BOUND",</b>
       "cacheHit": false,
       "referencedTables": [
        {
         "projectId": "mydata-1470162410749",
         "datasetId": "EVALUEX_PROD",
         "tableId": "tables"
        }
       ]

Из моего эксперимента я вижу 2значения для этого поля:

  1. UPPER_BOUND: когда Я использую запрос с полем кластера в WHERE
  2. ТОЧНОСТЬ: Когда I 'я не использую запрос с полем кластера в WHERE

Я ищу документацию BigQuery для этого поля, чтобы получить более подробное объяснение этого, но не смог найти никакой ссылки

Есть идеи, как найти более подробную информацию об этом поле и что оно означает?

1 Ответ

1 голос
/ 17 марта 2019

С традиционными таблицами BigQuery точно знает, сколько байтов будет запрошено перед выполнением запроса (пробный запуск):

SELECT SUM(views) views
FROM `fh-bigquery.wikipedia_v2.pageviews_2019` 
WHERE DATE(datehour)='2019-01-05'
AND wiki='en'
AND title='Shakira'

estimated bytes to be processed:  6.36 GB
actual bytes processed:  6.36 GB

Но с кластерными таблицами трудно понять, сколько байтов будет фактически обработано. Поэтому лучшее, что может сделать BigQuery на данный момент, - это сообщить вам максимальное количество байтов, которое может быть обработано:

SELECT SUM(views) views
FROM `fh-bigquery.wikipedia_v3.pageviews_2019` 
WHERE DATE(datehour)='2019-01-05'
AND wiki='en'
AND title='Shakira'

estimated bytes to be processed:  6.36 GB (upper bound)
actual bytes processed:  148 MB 

При переключении с моих v2 таблиц на v3 (те, которые я сгруппировал) этот запрос экономит 98% затрат на обработку данных. С другой стороны, вы должны признать, что пробный прогон может дать вам только «верхнюю границу» того, что будет стоить.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...