Создание и изменение разностных внешних таблиц на служба хранилища 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'
)
Ограничения
- Перемещение по времени не поддерживается. Используется только последняя версия разностной таблицы.