Подключение к Microsoft OneLake
Microsoft OneLake предоставляет открытый доступ ко всем элементам Fabric с помощью существующих API-интерфейсов Azure Data Lake Storage (ADLS) 2-го поколения и пакетов SDK. Вы можете получить доступ к данным в OneLake с помощью любого API, пакета SDK или средства, совместимого с ADLS 2-го поколения, только с помощью URI OneLake. Вы можете передать данные в lakehouse через обозреватель служба хранилища Azure или прочитать разностную таблицу с помощью ярлыка из Azure Databricks.
Так как OneLake является программным обеспечением как услуга (SaaS), некоторые операции, такие как управление разрешениями или обновление элементов, должны выполняться с помощью интерфейсов Fabric вместо API ADLS 2-го поколения. Полный список изменений в этих API см. в разделе "Четность API OneLake".
Так как OneLake существует во всем клиенте Microsoft Fabric, вы можете ссылаться на все, что находится в клиенте по своей рабочей области, элементу и пути:
https://onelake.dfs.fabric.microsoft.com/<workspace>/<item>.<itemtype>/<path>/<fileName>
Ескерім
Так как можно повторно использовать имена элементов в нескольких типах элементов, необходимо указать тип элемента в расширении. Например, .lakehouse
для озера и .datawarehouse
для склада.
OneLake также поддерживает ссылки на рабочие области и элементы с глобальными уникальными идентификаторами (GUID). OneLake назначает идентификаторы GUID и идентификаторы GUID не изменяются, даже если имя рабочей области или элемента изменяется. На портале Fabric можно найти связанный GUID для рабочей области или элемента в URL-адресе. Идентификаторы GUID необходимо использовать как для рабочей области, так и для элемента, и не требуется тип элемента.
https://onelake.dfs.fabric.microsoft.com/<workspaceGUID>/<itemGUID>/<path>/<fileName>
При внедрении средства для использования над OneLake вместо ADLS 2-го поколения используйте следующее сопоставление:
- Имя учетной записи всегда
onelake
. - Имя контейнера — это имя рабочей области.
- Путь к данным начинается с элемента. Например:
/mylakehouse.lakehouse/Files/
.
OneLake также поддерживает драйвер файловой системы BLOB-объектов Azure (ABFS) для обеспечения большей совместимости с ADLS 2-го поколения и Хранилище BLOB-объектов Azure. Драйвер ABFS использует собственный идентификатор abfs
схемы и другой формат URI для обращения к файлам и каталогам в учетных записях ADLS 2-го поколения. Чтобы использовать этот формат URI для OneLake, переключите рабочую область для файловой системы и включите тип элемента и элемента.
abfs[s]://<workspace>@onelake.dfs.fabric.microsoft.com/<item>.<itemtype>/<path>/<fileName>
URI драйвера abfs не разрешает специальные символы, например пробелы, в имени рабочей области. В этих случаях можно ссылаться на рабочие области и элементы с глобальными уникальными идентификаторами (GUID), как описано ранее в этом разделе.
Вы можете пройти проверку подлинности API OneLake с помощью идентификатора Microsoft Entra, передав заголовок авторизации. Если средство поддерживает вход в учетную запись Azure для включения сквозного руководства маркера, можно выбрать любую подписку. OneLake требует только маркер пользователя и не заботится о подписке Azure.
При вызове OneLake через API-интерфейсы DFS напрямую можно пройти проверку подлинности с помощью маркера носителя для учетной записи Microsoft Entra. Дополнительные сведения о запросе маркеров носителя и управлении ими для вашей организации см. в библиотеке проверки подлинности Майкрософт.
Для быстрого нерегламентированного тестирования OneLake с помощью прямых вызовов API вот простой пример использования PowerShell для входа в учетную запись Azure, получения маркера с областью хранения и его копирования в буфер обмена для простого использования в другом месте. Дополнительные сведения о получении маркеров доступа с помощью PowerShell см. в разделе Get-AzAccessToken.
Ескерім
OneLake поддерживает только маркеры в Storage
аудитории. В следующем примере мы задали аудиторию с помощью ResourceTypeName
параметра.
Connect-AzAccount
$testToken = Get-AzAccessToken -ResourceTypeName Storage
# Retrieved token is of string type which you can validate with the "$testToken.Token.GetTypeCode()" command.
$testToken.Token | Set-Clipboard
Если вы используете глобальную конечную точку ('https://onelake.dfs.fabric.microsoft.com) для запроса данных в регионе, отличном от региона рабочей области, существует вероятность того, что данные могут оставить регион во время процесса разрешения конечных точек. Если вы обеспокоены расположением данных, используя правильную региональную конечную точку для рабочей области, данные остаются в текущем регионе и не пересекают региональные границы. Вы можете обнаружить правильную региональную конечную точку, проверив регион емкости, к которому подключена рабочая область.
Региональные конечные точки OneLake соответствуют одному и тому же формату: https://<region>-onelake.dfs.fabric.microsoft.com
Например, рабочая область, подключенная к емкости в регионе "Западная часть США", будет доступна через региональную конечную точку https://westus-onelake.dfs.fabric.microsoft.com
.
Если средство или пакет, совместимый с ADLS 2-го поколения, не работает над OneLake, наиболее распространенной проблемой является проверка URL-адресов. Так как OneLake использует другую конечную точку (dfs.fabric.microsoft.com
), чем ADLS 2-го поколения,dfs.core.windows.net
некоторые средства не распознают конечную точку OneLake и блокируют ее. Некоторые средства позволяют использовать пользовательские конечные точки (например, PowerShell). В противном случае это часто простое исправление для добавления конечной точки OneLake в качестве поддерживаемой конечной точки. Если вы обнаружите проблему проверки URL-адреса или у вас возникли другие проблемы, связанные с подключением к OneLake, сообщите нам об этом.
Создать файл
Запросить | КЛАСТЬ https://onelake.dfs.fabric.microsoft.com/{workspace}/{item}.{itemtype}/Files/sample?resource=file |
---|---|
Заголовки | Authorization: Bearer <userAADToken> |
Response | ResponseCode: 201 Created Заголовки: x-ms-version : 2021-06-08 x-ms-request-id : 272526c7-0995-4cc4-b04a-8ea3477bc67b x-ms-content-crc64 : OAJ6r0dQWP0= x-ms-request-server-encrypted : true ETag : 0x8DA58EE365 Текст. |