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


Сочетания клавиш OneLake

Сочетания клавиш в Microsoft OneLake позволяют объединить данные между доменами, облаками и учетными записями, создав одно виртуальное озеро данных для всего предприятия. Все интерфейсы Fabric и аналитические подсистемы могут напрямую подключаться к существующим источникам данных, таким как Azure, Amazon Web Services (AWS) и OneLake через единое пространство имен. OneLake управляет всеми разрешениями и учетными данными, поэтому вам не нужно отдельно настраивать каждую рабочую нагрузку Fabric для подключения к каждому источнику данных. Кроме того, можно использовать сочетания клавиш для устранения избыточных копий данных и уменьшения задержки процесса, связанной с копиями данных и их размещением.

Что такое сочетания клавиш?

Ярлыки — это объекты в OneLake, ссылающиеся на другие места хранения. Расположение может быть внутренним или внешним для OneLake. Расположение, на которое указывает ярлык, называется целевым путем ярлыка. Место, где отображается ярлык, называется путем ярлыка. Ярлыки отображаются как папки в OneLake, и любая рабочая нагрузка или служба, имеющие доступ к OneLake, могут их использовать. Ярлыки ведут себя как символьные ссылки. Он является независимым объектом от целевого объекта. При удалении ярлыка объект остается неизменным. При перемещении, переименовании или удалении целевого пути ярлык может перестать работать.

Схема, показывающая, как ярлык подключает файлы и папки, хранящиеся в других расположениях.

Где можно создать ярлыки?

Создавать ярлыки можно в лейкхаусах и базах данных на языке запросов Kusto (KQL). Кроме того, ярлыки, созданные в этих элементах, могут указывать на другие расположения OneLake, Azure Data Lake Storage (ADLS) 2-го поколения, учетные записи хранения Amazon S3 или Dataverse. Вы даже можете создавать ярлыки к локальным ресурсам или ресурсам с сетевыми ограничениями, используя локальный шлюз данных Fabric (OPDG).

Пользовательский интерфейс Fabric можно использовать для интерактивного создания ярлыков и использовать REST API для программного создания ярлыков.

Лейкхаус

При создании ярлыков в Lakehouse необходимо понять структуру папок объекта. Lakehouses состоит из двух папок верхнего уровня: папки "Таблицы " и папки "Файлы ". Папка "Таблицы" представляет управляемую часть озера для структурированных наборов данных. Хотя папка "Файлы" является неуправляемой частью платформы lakehouse, предназначенной для неструктурированных или полуструктурированных данных.

В папке "Таблицы" можно создавать ярлыки только на верхнем уровне. Ярлыки не поддерживаются в подкаталогах папки таблиц . Сочетания клавиш в разделе таблиц обычно указывают на внутренние источники в OneLake или ссылаются на другие ресурсы данных, соответствующие формату таблицы Delta. Если целевой объект ярлыка содержит данные в формате Delta\Parquet, lakehouse автоматически синхронизирует метаданные и распознает папку как таблицу. Сочетания клавиш в разделе таблиц могут ссылаться на одну таблицу или схему, которая является родительской папкой для нескольких таблиц.

Примечание.

Формат Delta не поддерживает таблицы с пробелами в имени. Любой ярлык, содержащий пробел в имени, не будет распознан как таблица Delta в Lakehouse.

В папке "Файлы" нет ограничений на создание ярлыков. Их можно создать на любом уровне иерархии папок. Обнаружение таблиц не происходит в папке "Файлы ". Ярлыки здесь могут указывать как на внутренние (OneLake), так и внешние системы хранения с данными в любом формате.

Схема, показывающая представление

База данных KQL

При создании ярлыка в базе данных KQL он отображается в папке "Ярлыки " базы данных. База данных KQL обрабатывает такие сочетания клавиш, как внешние таблицы. Чтобы запросить ярлык, используйте функцию external_table языка запросов Kusto.

Снимок экрана: ярлыки в базе данных KQL.

Где можно получить доступ к ярлыкам?

Любые службы типа Fabric или другого типа, которые могут получить доступ к данным в OneLake, могут использовать ссылки. Ярлыки прозрачны для любой службы, обращаюющейся к данным через API OneLake. Ярлыки отображаются как ещё одна папка в озере. Apache Spark, SQL, Аналитика в режиме реального времени и службы Analysis Services могут использовать сочетания клавиш при запросе данных.

Apache Spark

Записные книжки Apache Spark и задания Apache Spark могут использовать сочетания клавиш, создаваемые в OneLake. Относительные пути к файлам можно использовать для непосредственного чтения данных из сочетаний клавиш. Кроме того, если вы создаете ссылку в разделе Таблицы озера и она находится в формате Delta, её можно прочитать как управляемую таблицу с помощью синтаксиса Apache Spark SQL.

df = spark.read.format("delta").load("Tables/MyShortcut")
display(df)
df = spark.sql("SELECT * FROM MyLakehouse.MyShortcut LIMIT 1000")
display(df)

SQL

Ярлыки можно считывать в разделе "Таблицы " озера через конечную точку аналитики SQL для озера. Вы можете получить доступ к конечной точке аналитики SQL с помощью селектора режима Lakehouse или SQL Server Management Studio (SSMS).

SELECT TOP (100) *
FROM [MyLakehouse].[dbo].[MyShortcut]

Аналитика в режиме реального времени

Ярлыки в базах данных KQL распознаются как внешние таблицы. Чтобы запросить ярлык, используйте функцию external_table языка запросов Kusto.

external_table('MyShortcut')
| take 100

Службы анализа

Вы можете создавать семантические модели для lakehouse, содержащие ярлыки в разделе Таблицы lakehouse. При запуске семантической модели в режиме Direct Lake службы Analysis Services могут считывать данные непосредственно через кратчайший путь.

Нетканый материал

Приложения и службы за пределами Fabric также могут получить доступ к ярлыкам через API OneLake. OneLake поддерживает подмножество API ADLS Gen2 и хранилища BLOB Storage. Дополнительные сведения об API OneLake см. в статье OneLake access with API.

https://onelake.dfs.fabric.microsoft.com/MyWorkspace/MyLakhouse/Tables/MyShortcut/MyFile.csv

Типы сочетаний клавиш

Сочетания клавиш OneLake поддерживают несколько источников данных файловой системы. К ним относятся внутренние расположения OneLake, Azure Data Lake Storage (ADLS) 2-го поколения, Amazon S3, S3 Совместимый, Google Cloud Storage (GCS) и Dataverse.

Внутренние сочетания клавиш OneLake

Встроенные ярлыки OneLake позволяют ссылаться на данные в существующих элементах Fabric, в том числе:

  • Базы данных KQL
  • Озерные домики
  • Дублируемые каталоги Azure Databricks
  • Зеркальные базы данных
  • Семантические модели
  • Базы данных SQL
  • Склады

Ярлык может указывать на расположение папки в одном элементе, между элементами в одной рабочей области или даже между элементами в разных рабочих областях. При создании ярлыка между элементами их типы могут не совпадать. Например, вы можете создать ярлык в лейкхаусе, который указывает на данные в хранилище данных.

Когда пользователь обращается к данным через ссылку на другое расположение OneLake, OneLake использует удостоверение вызывающего пользователя для авторизации доступа к данным в целевом пути ссылки. Этот пользователь должен иметь разрешения в целевом расположении для чтения данных.

Внимание

Когда пользователи получают доступ к сочетаниям клавиш через семантические модели Power BI или T-SQL, удостоверение вызывающего пользователя не передается в целевой объект ярлыка. Вместо этого передается удостоверение личности владельца вызывающего элемента, делегируя доступ вызывающему пользователю.

Ярлыки Azure Data Lake Storage

При создании ярлыков для учетных записей хранения Azure Data Lake Storage (ADLS) 2-го поколения целевой путь может указывать на любую папку в иерархическом пространстве имен. Как минимум, целевой путь должен содержать имя контейнера.

Примечание.

Для учетной записи хранения ADLS 2-го поколения необходимо включить иерархические пространства имен.

Доступ

Ярлыки ADLS должны указывать на конечную точку DFS для учетной записи хранения.

Пример: https://accountname.dfs.core.windows.net/

Если учетная запись хранения защищена брандмауэром хранилища, можно настроить доступ к доверенной службе. Дополнительные сведения см. в разделе "Доверенный доступ к рабочей области"

Авторизация

Сочетания клавиш ADLS используют делегированную модель авторизации. В этой модели создатель ярлыка указывает учетные данные для ярлыка ADLS, а доступ к этому ярлыку разрешен с помощью этих учетных данных. Сочетания клавиш ADLS поддерживают следующие делегированные типы авторизации:

  • Учетная запись организации — должна иметь одну из следующих ролей в учетной записи хранения: "Читатель данных BLOB-объектов хранилища", "Участник данных BLOB-объектов хранилища" или "Владелец данных BLOB-объектов хранилища"; либо роль "Делегатор" в учетной записи хранения плюс доступ к файлам или каталогам, предоставленный в учетной записи хранения.
  • Субъект-служба — должен иметь роли "Читатель объектов данных BLOB-хранилища", "Участник объектов данных BLOB-хранилища" или "Владелец объектов данных BLOB-хранилища" в учетной записи хранения; либо роль "Делегатор" в учетной записи хранения, плюс предоставленный доступ к файлам или каталогам в этой учетной записи.
  • Удостоверение рабочей области — должна быть роль "Читатель данных BLOB-объектов хранилища", "Участник данных BLOB-объектов хранилища" или "Владелец данных BLOB-объектов хранилища" в учетной записи хранения; либо роль Delegator в учетной записи хранения плюс доступ к файлам или каталогам, предоставленным в учетной записи хранения.
  • Подпись общего доступа (SAS) должна включать по крайней мере следующие разрешения: чтение, просмотр содержимого и выполнение.

Для делегированных типов авторизации Microsoft Entra ID (учетная запись организации, основной субъект службы или удостоверение рабочей области) требуется действие создание ключа делегирования пользователя на уровне учетной записи хранения. Эта операция входит в состав ролей Storage Blob Data Reader, Storage Blob Data Contributor, Storage Blob Data Owner и Delegator. Если вы не хотите предоставлять пользователю разрешения на чтение, участие или владение для всей учетной записи хранения, назначьте ему роль Delegator. Затем определите подробные права доступа к данным с помощью списков управления доступом (ACL) в Azure Data Lake Storage.

Внимание

Требование создания ключа делегирования пользователя в настоящее время не применяется, если для рабочей области настроено удостоверение, а тип аутентификации ADLS — учетная запись организации, служебная учётная запись или удостоверение рабочей области. Однако это поведение будет ограничено в будущем. Рекомендуется убедиться, что все делегированные удостоверения имеют действие "Создать ключ делегирования пользователей ", чтобы убедиться, что доступ пользователей не затрагивается при изменении этого поведения.

Сочетания клавиш хранилища BLOB-объектов Azure

Доступ

Ярлык хранилища BLOB-объектов Azure может указывать на имя учетной записи или URL-адрес учетной записи хранения.

Пример: accountname или https://accountname.blob.core.windows.net/.

Авторизация

Ярлыки хранилища объектов BLOB используют делегированную модель авторизации. В этой модели создатель ярлыка указывает учетные данные для ярлыка, а доступ к этому ярлыку разрешен с помощью этих учетных данных. Ярлыки BLOB поддерживают следующие типы делегирования авторизации:

  • Учетная запись организации — должна иметь одну из следующих ролей в учетной записи хранения: "Читатель данных BLOB-объектов хранилища", "Участник данных BLOB-объектов хранилища" или "Владелец данных BLOB-объектов хранилища"; либо роль "Делегатор" в учетной записи хранения плюс доступ к файлам или каталогам, предоставленный в учетной записи хранения.
  • Субъект-служба — должен иметь роли "Читатель объектов данных BLOB-хранилища", "Участник объектов данных BLOB-хранилища" или "Владелец объектов данных BLOB-хранилища" в учетной записи хранения; либо роль "Делегатор" в учетной записи хранения, плюс предоставленный доступ к файлам или каталогам в этой учетной записи.
  • Удостоверение рабочей области — должна быть роль "Читатель данных BLOB-объектов хранилища", "Участник данных BLOB-объектов хранилища" или "Владелец данных BLOB-объектов хранилища" в учетной записи хранения; либо роль Delegator в учетной записи хранения плюс доступ к файлам или каталогам, предоставленным в учетной записи хранения.
  • Подпись общего доступа (SAS) должна включать по крайней мере следующие разрешения: чтение, просмотр содержимого и выполнение.

Сочетания клавиш S3

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

Примечание.

Ярлыки S3 доступны только для чтения. Они не поддерживают операции записи независимо от разрешений пользователя.

Доступ

Ярлыки S3 должны указывать на конечную точку https для хранилища S3.

Пример: https://bucketname.s3.region.amazonaws.com/

Примечание.

Вам не нужно отключать настройку S3 Block Public Access для вашей учетной записи S3, чтобы работал ярлык S3.

Доступ к конечной точке S3 не должен быть заблокирован брандмауэром хранилища или виртуальным частным облаком.

Авторизация

Ярлыки S3 используют делегированную модель авторизации. В этой модели создатель ярлыка задает учетные данные для ярлыка S3, а доступ к этому ярлыку разрешен с помощью этих учетных данных. Поддерживаемые делегированные учетные данные — это ключ и секрет для пользователя IAM.

Пользователь IAM должен иметь следующие разрешения в контейнере, на который указывает ярлык:

  • S3:GetObject
  • S3:GetBucketLocation
  • S3:ListBucket

Ярлыки S3 поддерживают корзины S3, использующие ключи корзин S3 для шифрования SSE-KMS. Чтобы получить доступ к данным, зашифрованным с помощью шифрования SSE-KMS, пользователь должен иметь разрешения на шифрование и расшифровку ключа контейнера, в противном случае они получают ошибку "Запрещено" (403). Дополнительные сведения см. в статье Настройка контейнера для использования ключа контейнера S3 с SSE-KMS для новых объектов.

Сочетания клавиш Google Cloud Storage

Ярлыки можно создать в Google Cloud Storage(GCS) с помощью XML-API для GCS. При создании ярлыков в Google Cloud Storage целевой путь должен содержать имя хранилища как минимум. Кроме того, можно ограничить область ярлыка, указав дополнительно префикс/папку, на которую нужно указать в иерархии хранилища.

Примечание.

Ярлыки GCS доступны только для чтения. Они не поддерживают операции записи независимо от разрешений пользователя.

Доступ

При настройке соединения для ярлыка GCS можно указать глобальную конечную точку службы хранилища или использовать конечную точку для конкретной корзины.

  • Пример глобальной конечной точки: https://storage.googleapis.com
  • Пример конечной точки для конкретного контейнера: https://<BucketName>.storage.googleapis.com

Авторизация

Сочетания клавиш GCS используют делегированную модель авторизации. В этой модели создатель ярлыка указывает учетные данные для ярлыка GCS, а доступ к этому ярлыку разрешен с помощью этих учетных данных. Поддерживаемые делегированные учетные данные — это ключ HMAC и секрет для учетной записи службы или учетной записи пользователя.

Учетная запись должна иметь разрешение на доступ к данным в контейнере GCS. Если в соединении для ярлыка использовалась конечная точка, специфичная для bucket'а, учетная запись должна иметь следующие разрешения:

  • storage.objects.get
  • stoage.objects.list

Если в соединении для ярлыка использовался глобальный конечный узел, учетная запись должна иметь следующие разрешения:

  • storage.buckets.list

Сочетания клавиш Dataverse

Прямая интеграция Dataverse с Microsoft Fabric позволяет организациям расширить свои корпоративные приложения Dynamics 365 и бизнес-процессы в Fabric. Эта интеграция выполняется с помощью сочетаний клавиш, которые можно создать двумя способами: через портал PowerApps maker или напрямую через Fabric.

Примечание.

Ярлыки Dataverse доступны только для чтения. Они не поддерживают операции записи независимо от разрешений пользователя.

Создание ярлыков с помощью портала разработчика PowerApps

Авторизованные пользователи PowerApps могут получить доступ к порталу разработчика PowerApps и использовать функцию Link to Microsoft Fabric . Из этого одного действия в Fabric создается озерохранилище, а в среде Dataverse автоматически генерируются ссылки для каждой таблицы.

Дополнительные сведения см. в разделе "Прямая интеграция Dataverse с Microsoft Fabric".

Создание сочетаний клавиш с помощью Fabric

Пользователи Fabric также могут создавать ярлыки для Dataverse. При создании ярлыков пользователи могут выбрать Dataverse, указать URL-адрес среды и просмотреть доступные таблицы. Благодаря этому пользователи могут выбрать, какие таблицы переносить в Fabric, вместо того чтобы переносить все таблицы.

Примечание.

Таблицы dataverse сначала должны быть доступны в Управляемом озере Dataverse, прежде чем они отображаются в пользовательском интерфейсе создания сочетаний клавиш Fabric. Если таблицы не отображаются из Fabric, используйте функцию Link to Microsoft Fabric на портале PowerApps maker.

Авторизация

Ярлыки Dataverse используют делегированную модель авторизации. В этой модели создатель ярлыка указывает учетные данные для ярлыка Dataverse, а доступ к этому ярлыку разрешен с помощью этих учетных данных. Поддерживаемый тип делегированных учетных данных — это учетная запись организации (OAuth2). Учетная запись организации должна иметь разрешение системного администратора для доступа к данным в Dataverse Managed Lake.

Примечание.

Ярлыки Dataverse в настоящее время не поддерживают представителей службы в качестве типа аутентификации.

Кэширование

Кэширование сокращенного пути может снизить затраты на исходящий трафик, связанные с межоблачным доступом к данным. Поскольку файлы считываются посредством внешней ссылки, они хранятся в кэше рабочей области Fabric. Последующие запросы на чтение обслуживаются из кэша, а не от поставщика удаленного хранилища. Срок хранения кэшированных файлов можно задать от 1 до 28 дней. Каждый раз при доступе к файлу срок хранения обнуляется. Если файл в поставщике удаленного хранилища более поздний, чем файл в кэше, запрос обслуживается от поставщика удаленного хранилища, а обновленный файл будет сохранен в кэше. Если файл не был получен более выбранного периода хранения, он удаляется из кэша. Отдельные файлы размером больше 1 ГБ не кэшируются.

Примечание.

Кэширование ярлыков в настоящее время поддерживается для ярлыков GCS, S3, совместимых с S3, и локальных шлюзов данных.

Чтобы включить кэширование для сочетаний клавиш, откройте панель параметров рабочей области . Выберите вкладку OneLake . Переключите параметр кэша на "Вкл ." и выберите период хранения.

Кэш также можно очистить в любое время. На той же странице параметров нажмите кнопку "Сброс кэша ". Это действие удаляет все файлы из кэша ярлыков в этой рабочей области.

Снимок экрана: панель параметров рабочей области с выбранной вкладкой OneLake.

Использование облачных подключений с помощью сочетаний клавиш

Авторизация ярлыков ADLS и S3 делегируется через облачные соединения. При создании новой ссылки ADLS или S3 можно установить новое подключение или выбрать уже существующее для источника данных. Установление подключения для ярлыка — это операция привязки. Только пользователи с разрешением на подключение могут выполнять операцию привязки. Если у вас нет разрешений на подключение, вы не можете создавать новые ярлыки с помощью этого подключения.

Безопасность ярлыков или сочетаний клавиш

Сочетания клавиш требуют определенных разрешений для управления и использования. Безопасность ярлыков OneLake проверяет разрешения, необходимые для создания ярлыков и доступа к данным при их использовании.

Как сочетания клавиш обрабатывают удаление?

Комбинации клавиш не выполняют каскадные удаления. При удалении ярлыка удаляется только объект ярлыка. Данные в целевом объекте ярлыка остаются неизменными. Тем не менее, если удалить файл или папку в ярлыке, и у вас есть разрешения на выполнение операции удаления, файлы или папки удаляются в целевом объекте.

Например, рассмотрим лейкхаус со следующим путем в нем: MyLakehouse\Files\MyShortcut\Foo\Bar. MyShortcut — это ярлык, указывающий на учетную запись ADLS 2-го поколения, содержащую каталоги Foo\Bar .

Вы можете выполнить операцию удаления по следующему пути: MyLakehouse\Files\MyShortcut. В этом случае ярлык MyShortcut удаляется из lakehouse, но файлы и каталоги в учетной записи ADLS Gen2 Foo\Bar остаются без изменений.

Вы также можете выполнить операцию удаления по следующему пути: MyLakehouse\Files\MyShortcut\Foo\Bar. В этом случае, если вы записываете разрешения в учетной записи ADLS Gen2, каталог Bar удаляется из учетной записи ADLS Gen2.

Просмотр истории рабочей области

При создании ярлыков между несколькими элементами Fabric в рабочей области вы можете визуализировать связи между ярлыками с помощью представления взаимосвязей рабочей области. Нажмите кнопку Lineage view ( ) в правом верхнем углу обозревателя рабочей области.

Снимок экрана экрана просмотра родословной для визуализации отношений ярлыков.

Примечание.

Представление линии ограничивается одним рабочим пространством. Ярлыки для расположений вне выбранной рабочей области не отображаются.

Рекомендации и ограничения

  • Максимальное количество сочетаний клавиш для элемента Fabric составляет 100 000. В этом контексте термин "элемент" означает: приложения, озерохранилища, склады, отчеты и т. д.
  • Максимальное количество сочетаний клавиш в одном пути OneLake — 10.
  • Максимальное количество прямых ярлыков для ссылок на ярлыки составляет 5.
  • Пути сокращенных ссылок ADLS и S3 не могут содержать зарезервированные символы согласно разделу 2.2 RFC 3986. Допустимые символы см. в разделе RFC 3968 2.3.
  • Ярлыки OneLake, родительские пути и целевые пути не могут содержать символы "%" или "+".
  • Сочетания клавиш не поддерживают символы, отличные от латиниц.
  • API копирования BLOB-объектов не поддерживается для шорткатов ADLS или S3.
  • Функция копирования не работает с ярлыками, которые непосредственно указывают на контейнеры ADLS. Рекомендуется создавать ярлыки ADLS для каталога, находящегося как минимум на одном уровне ниже контейнера.
  • Другие сочетания клавиш не могут быть созданы внутри сочетаний клавиш ADLS или S3.
  • История ярлыков для хранилищ данных и семантических моделей в настоящее время недоступна.
  • Ярлык Fabric синхронизируется с источником практически мгновенно, но время распространения может отличаться из-за производительности источника данных, кэшированных представлений или проблем с сетевым подключением.
  • Для распознавания новых ярлыков API таблиц может потребоваться до минуты.
  • Ярлыки OneLake не поддерживают подключения к учетным записям хранения ADLS Gen2, которые используют управляемые частные конечные узлы. Дополнительные сведения см. в статье об управляемых частных конечных точках для Fabric.