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

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

Что такое ярлыки?

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

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

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

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

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

Гибридное решение "хранилище и озеро данных"

При создании ярлыков в lakehouse необходимо понять структуру папок элемента. Lakehouses состоит из двух папок верхнего уровня: папки "Таблицы " и папки "Файлы ". Папка "Таблицы" представляет управляемую часть озера, а папка "Файлы " является неуправляемой частью lakehouse. В папке "Таблицы" можно создавать ярлыки только на верхнем уровне. Ярлыки не поддерживаются в других подкаталогах папки "Таблицы ". Если целевой объект ярлыка содержит данные в формате Delta\Parquet, lakehouse автоматически синхронизирует метаданные и распознает папку как таблицу. В папке "Файлы" нет ограничений на создание ярлыков. Их можно создать на любом уровне иерархии папок. Обнаружение таблиц не происходит в папке "Файлы ".

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

База данных KQL

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

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

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

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

Spark

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

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

Примечание.

Формат Delta не поддерживает таблицы с пробелами в имени. Любое сочетание клавиш, содержащее пробел в имени, не будет обнаружено в виде таблицы Delta в lakehouse.

SQL

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

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

Анализ в реальном времени

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

external_table('MyShortcut')
| take 100

Службы Analysis Services

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

Non-Fabric

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

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

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

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

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

Внутренние сочетания клавиш OneLake позволяют ссылаться на данные в существующих элементах Fabric. К этим элементам относятся озера, базы данных KQL и хранилища данных. Ярлык может указывать на расположение папки в одном элементе, между элементами в одной рабочей области или даже между элементами в разных рабочих областях. При создании ярлыка между элементами типы элементов не должны соответствовать. Например, можно создать ярлык в лейкхаусе, который указывает на данные в хранилище данных.

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

Внимание

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

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

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

Открыть

Сочетания клавиш ADLS должны указывать на конечную точку DFS для учетной записи хранения. Пример: https://accountname.dfs.core.windows.net/

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

Авторизация

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

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

Примечание.

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

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

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

Открыть

Сочетания клавиш S3 должны указывать на конечную точку https для контейнера S3.

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

Примечание.

Отключить параметр общего доступа S3 для учетной записи S3 для ярлыка S3 для функции не требуется.

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

Авторизация

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

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

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

Примечание.

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

Сочетания клавиш Google Cloud служба хранилища (предварительная версия)

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

Открыть

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

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

Авторизация

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

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

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

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

  • storage.buckets.list

Примечание.

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

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

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

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

Авторизованные пользователи PowerApps могут получить доступ к порталу разработчика PowerApps и использовать функцию Link to Microsoft Fabric . Из этого одного действия в Fabric создается Lakehouse, а ярлыки создаются автоматически для каждой таблицы в среде 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. Последующие запросы на чтение обслуживаются из кэша, а не от поставщика удаленного хранилища. Кэшированные файлы имеют период хранения 24 часа. Каждый раз, когда файл обращается к периоду хранения, сбрасывается. Если файл в поставщике удаленного хранилища более поздний, чем файл в кэше, запрос обслуживается у поставщика удаленного хранилища, а обновленный файл будет храниться в кэше. Если файл не был получен более 24 часов, он очищается из кэша. Отдельные файлы размером больше 1 ГБ не кэшируются.

Примечание.

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

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

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

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

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

Разрешения

Сочетание разрешений в пути ярлыка и целевом пути управляет разрешениями для сочетаний клавиш. Когда пользователь обращается к ярлыку, применяется самое строгое разрешение двух расположений. Таким образом, пользователь, имеющий разрешения на чтение и запись в lakehouse, но только разрешения на чтение в целевом объекте ярлыка не могут записываться в путь к ярлыку. Аналогичным образом, пользователь, имеющий только разрешения на чтение в lakehouse, но чтение и запись в целевом объекте ярлыка также не может записываться в путь к ярлыку.

Роли рабочей области

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

Возможность Администратор Член Участник Зритель
Создание ярлыка Да1 Да1 Да1 -
Чтение содержимого файла и папки ярлыка Да2 Да2 Да2 -
Запись в целевое расположение ярлыка Да3 Да3 Да3 -
Чтение данных из ярлыков в разделе таблицы lakehouse с помощью конечной точки TDS Да Да Да Да

1 Пользователи должны иметь роль, которая предоставляет разрешение на запись ярлыка и по крайней мере разрешение на чтение в целевом расположении.

2 Пользователи должны иметь роль, которая предоставляет разрешение на чтение как в расположении ярлыка, так и в целевом расположении.

3 Пользователи должны иметь роль, которая предоставляет разрешение на запись как в ярлыке, так и в целевом расположении.

Роли доступа к данным OneLake (предварительная версия)

Роли доступа к данным OneLake — это новая функция, которая позволяет применять управление доступом на основе ролей (RBAC) к данным, хранящимся в OneLake. Вы можете определить роли безопасности, предоставляющие доступ для чтения к определенным папкам в элементе Fabric, и назначать их пользователям или группам. Разрешения доступа определяют, какие папки пользователи видят при доступе к представлению озера данных через интерфейс UX Lakehouse, записные книжки или API OneLake. Для элементов с включенной функцией предварительной версии роли доступа к данным OneLake также определяют доступ пользователя к ярлыку.

Пользователи в ролях Администратор, участника и участника имеют полный доступ к чтению данных из ярлыка независимо от определенных ролей доступа к данным OneLake. Однако они по-прежнему нуждаются в доступе как к источнику, так и к целевому объекту ярлыка, как упоминание в ролях рабочей области.

Пользователи в роли просмотра или у которых есть общий доступ к lakehouse, имеют доступ напрямую, если у пользователя есть доступ через роль доступа к данным OneLake. Дополнительные сведения о модели управления доступом с сочетаниями клавиш см. в разделе "Модель контроль доступа данных" в OneLake.

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

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

Пример удаления

Пользователь A имеет lakehouse со следующим путем в нем:

MyLakehouse\Files\MyShortcut\Foo\Bar

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

Удаление ярлыка

Пользователь А выполняет операцию удаления по следующему пути:

MyLakehouse\Files\MyShortcut

В этом случае MyShortcut удаляется из озера. Ярлыки не выполняют каскадные удаления, поэтому файлы и каталоги в учетной записи ADLS 2-го поколения Foo\Bar остаются не затронутыми.

Удаление содержимого, на который ссылается ярлык

Пользователь А выполняет операцию удаления по следующему пути:

MyLakehouse\Files\MyShortcut\Foo\Bar

В этом случае, если пользователь A имеет разрешения на запись в учетной записи ADLS 2-го поколения, каталог линейчатой строки удаляется из учетной записи ADLS 2-го поколения.

Представление происхождения рабочей области

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

Снимок экрана: экран представления происхождения.

Примечание.

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

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

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