Заметка
Доступ к этой странице требует авторизации. Вы можете попробовать войти в систему или изменить каталог.
Доступ к этой странице требует авторизации. Вы можете попробовать сменить директорию.
В этой статье рассматривается поддержка SqlPackage для Azure Synapse Analytics. В ней содержатся сведения о следующих разделах:
- интеграция с хранилищем BLOB-объектов Azure для доступа к данным в файлах Parquet
- поддержка бессерверных пулов SQL
Выделенные и бессерверные пулы SQL не поддерживают действия импорта и экспорта в SqlPackage или .bacpac файлах. SqlPackage поддерживает Azure Synapse Analytics с .dacpac файлами и может читать и записывать данные в файлах формата parquet в службе хранилища блогов Azure. Чтобы импортировать или экспортировать данные из выделенного пула SQL, необходимо использовать действия публикации или извлечения с данными, как описано ниже.
Извлечение (экспорт данных)
Чтобы экспортировать данные из базы данных Azure Synapse Analytics в хранилище Azure Blob Storage, действие SqlPackage extract используется со следующими свойствами:
- /p:AzureStorageBlobEndpoint
- /p:AzureStorageContainer
- /p:AzureStorageKey
Доступ базы данных к контейнеру BLOB-хранилища разрешен с помощью ключа учетной записи хранения. Схема базы данных (DACPAC-файл) записывается в локальный клиент, на котором выполняется SqlPackage, и данные записываются в хранилище BLOB-объектов Azure в формате parquet.
Дополнительный параметр является необязательным, который задает корневой путь хранилища в контейнере:
- /p:AzureStorageRootPath
Без этого свойства путь по умолчанию имеет значение servername/databasename/timestamp/. Данные хранятся в отдельных папках с именами таблиц из 2 частей.
Пример
В следующем примере извлекается база данных с именем databasename с сервера с именем yourserver.sql.azuresynapse.net в локальный файл с именем databaseschema.dacpac в текущем каталоге. Данные записываются в контейнер с именем containername в учетной записи хранения с именем storageaccount с помощью ключа учетной записи хранения с именем storageaccountkey. Данные записываются в путь по умолчанию servername/databasename/timestamp/ в контейнере.
SqlPackage /Action:Extract /SourceServerName:yourserver.sql.azuresynapse.net /SourceDatabaseName:databasename /SourceUser:sqladmin /SourcePassword:{your_password} /TargetFile:databaseschema.dacpac /p:AzureStorageBlobEndpoint=https://storageaccount.blob.core.windows.net /p:AzureStorageContainer=containername /p:AzureStorageKey=storageaccountkey
Дополнительные примеры доступных типов проверки подлинности см. в извлечении SqlPackage.
Публикация (импорт данных)
Чтобы импортировать данные из файлов Parquet в Azure Blob Storage в базу данных Azure Synapse Analytics, действие publish SqlPackage используется со следующими свойствами:
- /p:AzureStorageBlobEndpoint
- /p:AzureStorageContainer
- /p:AzureStorageRootPath
- /p:AzureStorageKey или /p:AzureSharedAccessSignatureToken
Доступ к публикации можно авторизовать с помощью ключа учетной записи для хранения или маркера разделенного доступа (SAS). Схема базы данных (DACPAC-файл) считывается из локального клиента, где работает SqlPackage, а данные считываются из хранилища Blob Azure в формате Parquet.
Пример
В следующем примере база данных с именем databasename публикуется на сервере с именем yourserver.sql.azuresynapse.net из локального файла с именем databaseschema.dacpac в текущем каталоге. Данные считываются из контейнера с именем containername в учетной записи хранения с именем storageaccount с помощью ключа учетной записи хранения с именем storageaccountkey. Данные считываются из отдельных папок для каждой таблицы по пути yourserver.sql.azuresynapse.net/databasename/6-12-2022_8-09-56_AM/ в контейнере.
SqlPackage /Action:Publish /SourceFile:databaseschema.dacpac /TargetServerName:yourserver.sql.azuresynapse.net /TargetDatabaseName:databasename /TargetUser:sqladmin /TargetPassword:{your_password} /p:AzureStorageBlobEndpoint=https://storageaccount.blob.core.windows.net /p:AzureStorageContainer=containername /p:AzureStorageKey=storageaccountkey /p:AzureStorageRootPath="yourserver.sql.azuresynapse.net/databasename/6-12-2022_8-09-56_AM/"
См. публикацию SqlPackage для получения дополнительных примеров доступных типов проверки подлинности в.
Поддержка бессерверных пулов SQL
Бессерверные пулы SQL Synapse поддерживаются как для действий извлечения, так и для публикации. Область поверхности T-SQL бессерверных пулов SQL ограничена внешними таблицами, внешними представлениями, хранимыми процедурами, функциями, статистикой и учетными данными. Следующие функции включены в поддержку бессерверных пулов SQL:
- Формат разностного внешнего файла
- Поставщик OPENROWSET CosmosDB с указанными параметрами PROVIDER, CONNECTION, OBJECT и CREDENTIAL или SERVER_CREDENTIAL
-
with ()предложение в OPENROWSET
Дальнейшие шаги
- Узнайте больше о экстракте
- Узнайте больше о публикации
- Дополнительные сведения о хранилище BLOB-объектов Azure
- Узнайте больше о ключах учетной записи хранения Azure