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


Создание и изменение разностных внешних таблиц на служба хранилища Azure

Область применения: ✅Microsoft Fabric✅Azure Data Explorer

Команды, приведенные в этой статье, можно использовать для создания или изменения разностной внешней таблицы в базе данных, из которой выполняется команда. Разностная внешняя таблица ссылается на данные таблицы Delta Lake, расположенные в Хранилище BLOB-объектов Azure, Azure Data Lake Store 1-го поколения или Azure Data Lake Store 2-го поколения.

Примечание.

Если таблица существует, .create команда завершится ошибкой. Используйте .create-or-alter или .alter измените существующие таблицы.

Чтобы ускорить запросы по внешним разностным таблицам, см . политику ускорения запросов.

Разрешения

Чтобы .create требуется по крайней мере разрешения пользователя базы данных, и требуется .alter по крайней мере разрешения администратора таблицы.

Для .create-or-alter внешней таблицы с использованием проверки подлинности управляемого удостоверения требуются разрешения AllDatabasesAdmin .

Синтаксис

(.create | | .alter.create-or-alter) external table TableName [(Schema)] kind delta =(StorageConnectionString ) [with (Свойство [, ...]])

Дополнительные сведения о соглашениях синтаксиса.

Параметры

Имя (название) Type Обязательно Описание
TableName string ✔️ Имя внешней таблицы, которое соответствует правилам имен сущностей . Внешняя таблица не может иметь то же имя, что и обычная таблица в той же базе данных.
Схема string Необязательная схема внешних данных — это разделенный запятыми список одного или нескольких имен столбцов и типов данных, где каждый элемент следует формату ColumnName : ColumnType. Если он не указан, он будет автоматически выводиться из разностного журнала на основе последней версии разностной таблицы.
StorageConnectionString string ✔️ Путь к корневой папке разностной таблицы, включая учетные данные. Может указывать на Хранилище BLOB-объектов Azure контейнер больших двоичных объектов, файловую систему Azure Data Lake 2-го поколения или контейнер Azure Data Lake 1-го поколения. Тип хранилища внешней таблицы определяется указанным строка подключения. См. строка подключения хранилища.
Свойство string Пара свойств key-value в формате PropertyName = PropertyValue. См . необязательные свойства.

Примечание.

  • Если указана настраиваемая схема, не существующие столбцы или столбцы с несовместимыми типами будут заполнены значениями NULL.
  • Сведения о секциях автоматически выводится из разностного журнала. Столбцы секционирования добавляются в качестве виртуальных столбцов в схему таблицы. Дополнительные сведения см. в разделе "Виртуальные столбцы".
  • Формат пути автоматически выводится из сведений о секционирования. Дополнительные сведения см. в формате пути

Совет

Для пользовательской схемы можно использовать подключаемый модуль infer_storage_schema для вывода схемы на основе содержимого внешнего файла.

Проверка подлинности и авторизация

Метод проверки подлинности для доступа к внешней таблице основан на строка подключения, предоставленной во время его создания, а разрешения, необходимые для доступа к таблице, зависят от метода проверки подлинности.

Поддерживаемые методы проверки подлинности совпадают с поддерживаемыми служба хранилища Azure внешними таблицами.

Необязательные свойства

Свойство Type Описание
folder string Папка таблицы
docString string Строка документирования таблицы
namePrefix string Если задано, указывает префикс файлов. При операциях записи все файлы будут записываться с помощью этого префикса. При операциях чтения с этим префиксом считываются только файлы.
fileExtension string Если задано, указывает расширения файлов. При записи имена файлов будут заканчиваться суффиксом. При чтении будут считываться только файлы с этим расширением.
encoding string Указывает, как кодируется текст: UTF8NoBOM (по умолчанию) или UTF8BOM.
dryRun bool Если задано, определение внешней таблицы не сохраняется. Этот параметр полезен для проверки определения внешней таблицы, особенно в сочетании с параметром или sampleUris параметромfilesPreview.

Примечание.

Во время создания доступ к внешней разностной таблице осуществляется для вывода сведений о секционирования и, при необходимости, схемы. Убедитесь, что определение таблицы является допустимым и что хранилище доступно.

Примеры

Создание или изменение разностной внешней таблицы с выводимой схемой

В следующей внешней таблице схема автоматически выводится из последней версии разностной таблицы.

.create-or-alter external table ExternalTable  
kind=delta 
( 
   h@'https://storageaccount.blob.core.windows.net/container1;secretKey'
) 

Создание разностной внешней таблицы с пользовательской схемой

В следующей внешней таблице указана настраиваемая схема и переопределяет схему разностной таблицы. Если в некоторое время необходимо заменить настраиваемую схему схемой на основе последней версии разностной таблицы, выполните .alter | .create-or-alter команду без указания схемы, как в предыдущем примере.

.create external table ExternalTable (Timestamp:datetime, x:long, s:string) 
kind=delta
( 
   h@'abfss://filesystem@storageaccount.dfs.core.windows.net/path;secretKey'
)

Ограничения

  • Перемещение по времени не поддерживается. Используется только последняя версия разностной таблицы.