BigQuery - СОЗДАТЬ ВНЕШНЮЮ ТАБЛИЦУ

Как использовать оператор CREATE EXTERNAL TABLE DDL в BigQuery?

У других крупных хранилищ данных, таких как SnowFlake и Hive Based (Presto, AWS Athena ...), он есть, и он очень полезен.


person Émerson Engroff    schedule 05.10.2020    source источник
comment
вы видели где-нибудь упоминание CREATE EXTERNAL TABLE DDL? Я не думаю, что он доступен в BigQuery. поэтому вы можете сделать запрос функции - Issueetracker.google.com/issues/   -  person Mikhail Berlyant    schedule 06.10.2020
comment
CREATE EXTERNAL TABLE выпущен сегодня (14.10.2020), проверьте это: cloud.google.com/bigquery/docs/reference/standard-sql/   -  person Yun Zhang    schedule 14.10.2020
comment
@MikhailBerlyant, CREATE EXTERNAL TABLE выпущен сегодня   -  person Yun Zhang    schedule 14.10.2020
comment
отлично ! спасибо за обновление: o)   -  person Mikhail Berlyant    schedule 14.10.2020
comment
вау, это впечатляющий список в сегодняшнем выпуске !!! отличная работа, команда BigQuery !! Спасибо!!   -  person Mikhail Berlyant    schedule 14.10.2020
comment
@YunZhang Cool ????   -  person Émerson Engroff    schedule 18.10.2020
comment
@YunZhang Невозможно установить {"hivePartitioningOptions": {"mode": "STRINGS"} эквивалент, как в bq mk --external_table_definition, и AUTO по умолчанию, что для меня пока нереально.   -  person Émerson Engroff    schedule 18.10.2020
comment
@YunZhang Еще одна важная мысль для меня - это information_schema.columns работа с внешними таблицами, как и с собственными таблицами. bq show отлично работает с внешними таблицами.   -  person Émerson Engroff    schedule 18.10.2020
comment
@ ÉmersonEngroff: Для большей ясности я добавил в заголовок префикс BigQuery. Если вам не нравится, пожалуйста, отозвите его!   -  person Soumendra Mishra    schedule 20.10.2020


Ответы (1)


Обновление 14.10.2020, CREATE EXTERNAL TABLE выпущен сегодня.

CREATE EXTERNAL TABLE dataset.table 
OPTIONS (
  format = 'NEWLINE_DELIMITED_JSON',
  uris = ['gs://bucket/*.json']
);

Параметр CREATE EXTERNAL TABLE недоступен в BigQuery, но в качестве альтернативы для этого можно использовать интерфейс командной строки BigQuery:

Создать файл определения таблицы:

$ bq mkdef --autodetect --source_format=NEWLINE_DELIMITED_JSON "gs://gcp-bucket/*.json" > myschema

Создать внешнюю таблицу:

$ bq mk --external_table_definition=myschema bq_dataset.bq_ext_table

Ссылка на документацию:
https://cloud.google.com/bigquery/external-data-sources

person Soumendra Mishra    schedule 06.10.2020
comment
Я это вижу, но это не стандарт в этой области. - person Émerson Engroff; 06.10.2020
comment
Я согласен. При желании вы можете использовать клиентский API BigQuery! - person Soumendra Mishra; 06.10.2020
comment
Да, но я предпочитаю что-то более близкое к стандарту ANSI / ISO для SQL, стандарту де-факто на рынке. - person Émerson Engroff; 07.10.2020