Можно ли еще удалить фильтр раздела = обязательный параметр из таблицы BigQuery? - PullRequest
0 голосов
/ 16 апреля 2020

Я пытаюсь убрать требование фильтровать столбец раздела в многораздельной таблице BigQuery. Представленный здесь ответ , похоже, не работает: запрос выполняется, показывает результат

"This statement altered the table named project:dataset.table"

Есть даже кнопка для go таблицы , но он все еще требует фильтра разделов.

EDIT : включая конфигурации таблиц и используемый запрос

Data location: US 
Table type: Partitioned 
Partitioned by: Day 
Partitioned on field: date 
Partition filter :Required
Clustered by: column_name1, column_name2, column_name3

Я пробовал оба запроса в точности так, как указано в ответе :

ALTER TABLE IF EXISTS dataset.table
SET OPTIONS(
    require_partition_filter = false
)

, а также

ALTER TABLE dataset.table
SET OPTIONS(
    require_partition_filter = false
)

Для второго, например, у меня есть следующая информация в моей истории запросов:

Запрос успешно выполнен

Query completed in 0.159 sec
Job ID: job_id 
User: user
Location: United States (US)
Creation time: creation_time
Start time: start_time
End time: end_time
Duration: 0.2 sec 
Bytes processed: 0 B 
Bytes billed :0 B 
Job priority: INTERACTIVE 
Destination table: project:dataset.table
Write preference:
Use legacy SQL: false

"проект", "набор данных", "таблица", "job_id", "пользователь", "creation_time", "start_time", "end_time" заменены

Любая помощь?

1 Ответ

0 голосов
/ 20 апреля 2020

Чтобы внести дополнительный вклад в сообщество, этот ответ основан на моем последнем комментарии.

В то время как команда ALTER должна работать, согласно документация . Существует еще одна опция для обновления набора данных, таблицы, представления или модели, которая является командой bq update.

В этой команде есть различные флаги, включая require_partition_filter и norequire_partition_filter , чтобы установить раздел фильтр на True или False, соответственно. В вашем случае вы можете использовать эту команду следующим образом:

bq update --norequire_partition_filter --time_partitioning_field=your_partition_field project:dataset.table

После отправки команды вы должны получить следующее сообщение:

Table 'project_id_dataset_table_name' successfully updated.

Следовательно, ваша таблица не потребует фильтр по столбцу разделения больше.

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