Поделиться через


Устранение неполадок с помощью CREATE EXTERNAL TABLE AS SELECT (CETAS) в бессерверных пулах SQL Azure Synapse

Область применения: Azure Synapse Analytics

Инструкция CREATE EXTERNAL TABLE AS SELECT (также известная как CETAS) в бессерверных пулах SQL Azure Synapse используется для создания внешних таблиц и экспорта результатов запросов в служба хранилища Azure BLOB-объектов или Azure Data Lake Storage 2-го поколения. Это руководство поможет вам реализовать рекомендации и обходные пути для часто задаваемых вопросов о экспорте данных с помощью CETAS.

Часто задаваемые вопросы

Вопросы Рекомендация
Можно ли экспортировать результаты в один файл? № Из-за высокой параллелизма и масштабируемой природы бессерверного обработчика запросов SQL бессерверный SQL не имеет возможности контролировать количество файлов при сохранении результатов запроса в хранилище с помощью CETAS.

Решение:
В качестве альтернативы можно экспортировать данные в хранилище с помощью записной книжки Spark. См. статью "Создание CSV-файлов и файлов Parquet" в учетной записи хранения, чтобы понять, как экспортировать данные в один CSV-файл и файл Parquet.
Можно ли изменить экспортированные данные после первого экспорта? № После сохранения результатов данные во внешней таблице не могут быть изменены. CETAS не перезаписывает базовые данные, созданные в первом выполнении.

Решение:
В качестве альтернативы можно создать новую внешнюю таблицу, которая выполняет запись в другой папке.
Какие форматы файлов для экспорта поддерживаются? Сейчас поддерживаются только PARQUET и DELIMITEDTEXT.
Сжатие Gzip формата DELIMITEDTEXT не поддерживается.

Дополнительные сведения см. в статье CETAS в бессерверном пуле SQL.
Почему я получаю сбои при подключении к хранилищу? — Убедитесь, что вы создали соответствующие учетные данные для исходных и целевых учетных записей хранения, как указано в контроле доступа к хранилищу для бессерверного пула SQL.

— Убедитесь, что у вас есть соответствующие разрешения на исходные и целевые учетные записи хранения.
Как сделать свои инструкции CETAS более производительной? — Убедитесь, что конечная учетная запись хранения находится в регионе, в котором находится конечная точка бессерверного пула SQL. В портал Azure можно найти учетные записи хранения и регионы рабочей области в области обзора учетной записи хранения или рабочей области.

— Убедитесь, что используются типы данных, поддерживаемые CETAS.