Как импортировать многораздельную таблицу из Bigquery, для которой требуется фильтр разделов, в Power BI? - PullRequest
1 голос
/ 02 марта 2020

Есть ли способ импортировать (не Direct Query) из Bigquery многораздельную таблицу, для которой требуется фильтр разделов?

Вот ошибка, которую я получаю (слегка отредактировано)

DataSource.Error: ODBC: ERROR [42000] [Microsoft][BigQuery] (70) Invalid query:
Cannot query over table 'project_name.dataset.table' without a filter over column(s)
'date' that can be used for partition elimination

Detalhes:
    DataSourceKind=GoogleBigQuery
    DataSourcePath=GoogleBigQuery
    OdbcErrors=[Table]

Вот последовательность шагов в Power BI (также слегка отредактированная)

= GoogleBigQuery.Database([BillingProject="project_name"])
= Table.SelectRows(Source, each ([Name] = "project_name"))
= #"project_name"{[Name="dataset_name",Kind="Schema"]}[Data]
= datasetName_Schema{[Name="table_name",Kind="Table"]}[Data]

Заранее спасибо!

1 Ответ

1 голос
/ 03 марта 2020

Обновление: подтверждено, что решение работает для PowerBI

Никогда ничего не импортировалось в PowerBI, просто предложите что-нибудь, насколько мне известно.

Я надеюсь, что PowerBI не Не различайте guish между BigQuery VIEW и TABLE, пожалуйста, попробуйте сначала. Если это правда, обходной путь может заключаться в жестком коде фильтра разделов в VIEW, затем импортируйте VIEW:

CREATE VIEW project_name.dataset.view AS 
SELECT * FROM project_name.dataset.table
WHERE date BETWEEN date_1 AND date_2;

Альтернатива @ HuaZhang

Если вы не хотите указывать диапазон дат, тогда ниже VIEW проще

CREATE VIEW project_name.dataset.view AS 
SELECT * FROM project_name.dataset.table
WHERE date IS NULL OR date IS NOT NULL
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...