Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
O Microsoft Fabric OneLake é um data lake lógico unificado para toda a organização, projetado para ser o único local para todos os dados de análise. Ele vem automaticamente com todos os locatários do Microsoft Fabric e é criado com base no Azure Data Lake Storage (ADLS) Gen2. O OneLake suporta qualquer tipo de arquivo, estruturado ou não estruturado, e armazena todos os dados tabulares no formato Delta Parquet. Permite a colaboração entre diferentes grupos de negócios ao fornecer um único data lake, que é governado por definição com gestão distribuída, facilitando a colaboração dentro dos limites de um locatário. Os espaços de trabalho dentro de um locatário permitem que diferentes partes da organização distribuam políticas de propriedade e acesso, e todos os dados no OneLake podem ser acessados por meio de itens de dados, como Lakehouses e Armazéns. Em termos de armazenamentos de dados, o OneLake serve como o local de armazenamento comum para ingestão, transformação, insights em tempo real e visualizações de Business Intelligence. Centraliza os diferentes serviços Fabric e armazena os itens de dados consumidos por todas as cargas de trabalho no Fabric.
Microsoft Fabric Eventhouse fornece uma solução escalável para lidar e analisar grandes volumes de dados, especialmente em cenários de análise em tempo real. As casas de eventos gerenciam com eficiência fluxos de dados em tempo real, permitindo que as organizações ingeram, processem e analisem dados quase em tempo real. Eles são ideais para cenários que exigem insights oportunos e são o mecanismo preferido para análise de texto semiestruturado e livre. Um Eventhouse é um espaço de trabalho de bancos de dados que podem ser compartilhados entre projetos, otimizando o desempenho e o custo gerenciando vários bancos de dados ao mesmo tempo. As casas de eventos suportam dados de várias fontes e formatos, indexando e particionando automaticamente os dados com base no tempo de ingestão.
Como ler e gravar dados no Microsoft Fabric
O Microsoft Fabric é uma plataforma que permite o armazenamento e o gerenciamento de dados de clientes. Para ler e gravar dados no Fabric, você precisa usar as APIs REST do Fabric e os métodos de autenticação apropriados.
Permissões de API
Alguns métodos de acesso aos dados do cliente exigem o uso de outros serviços fora da Malha, como o Armazenamento do Azure ou o Banco de Dados SQL do Azure. Por exemplo, no modelo do kit de desenvolvedor do Microsoft Fabric, a permissão de API do Armazenamento do Azure user_impersonation é utilizada em conjunto com a permissão do serviço Power BI Lakehouse.Read.All para acessar dados dos Lakehouses.
Você pode usar o Banco de Dados SQL do Azure para acessar dados de tabela de itens do Depósito. Nesse caso, configure o seu aplicativo com o Banco de Dados SQL do Azure user_impersonation para consultar o banco de dados em nome do utilizador e o serviço Power BI com o Warehouse.Read.All para consultar o ponto de extremidade Get Warehouse da API REST do Fabric.
Certifique-se de configurar seu aplicativo Microsoft Entra ID de acordo com suas necessidades de desenvolvimento.
Autenticação
Antes de começar a usar as APIs REST do Fabric ou outros serviços, como o Armazenamento do Azure e o Banco de Dados SQL do Azure, em nome do usuário, você precisa autenticar usando um token. Este token pode ser obtido através de um processo de troca de tokens.
O SDK do Fabric Workload Development Kit fornece um método para adquirir um token de acesso no front-end da carga de trabalho. Por exemplo, consulte Controlador de carga de trabalho de exemplo.
Esse token de cliente deve ser passado para o back-end da carga de trabalho e trocado usando o fluxo em nome de um token com os escopos necessários para acessar os recursos necessários, como o OneLake. Por exemplo, para acessar e ler de um Lakehouse, um usuário deve autorizar o aplicativo a fazer chamadas de API em seu nome usando a permissão de Armazenamento user_impersonation do Azure. Em seguida, no backend, o token de acesso deve ser obtido com o escopo https://storage.azure.com/user_impersonation delegado para utilizar o Armazenamento do Azure.
Se você decidir usar o SQL para acessar os dados do cliente, o token de acesso deverá ser obtido com o escopo https://database.windows.net//user_impersonation de usar o Banco de Dados SQL do Azure e o namespace Microsoft.Data.SqlClient. O token de acesso deve ser usado exatamente como está, com duas barras inclinadas antes de user_impersonation, para ser validado pela classe SQLConnection.
Para obter mais exemplos de autenticação de token, consulte o Exemplo do Microsoft Fabric Developer kit.
Mais detalhes sobre como obter um token podem ser encontrados na documentação da API REST do Microsoft Fabric Workload Development.
Ler metadados
As APIs REST de malha fornecem uma maneira de acessar as propriedades do item. Por exemplo, consultar a API Get Lakehouse fornece os metadados de um determinado Lakehouse, incluindo propriedades úteis como caminhos OneLake e a cadeia de conexão SQL. Outro ponto de extremidade útil é a Get Warehouse API, que retorna as seguintes informações:
{
Id: Guid
Type: string
DisplayName: string
Description: string
WorkspaceId: Guid
Properties {
ConnectionInfo: string
CreatedDate: DateTime
LastUpdatedTime: DateTime
}
}
Aqui, a propriedade "ConnectionInfo" é o FQDN (nome de domínio totalmente qualificado) do SQL Server do Warehouse. Com esse FQDN, você pode estabelecer uma conexão SQL. Para obter mais informações, consulte Conectividade com o armazenamento de dados no Microsoft Fabric. Para obter exemplos de implementação, consulte o Microsoft Fabric Workload Development Kit.
Ler os dados
Depois de autenticar, você pode se conectar ao OneLake usando as APIs REST do Armazenamento do Azure Data Lake para ler diferentes tipos de dados. Recomendamos utilizar o protocolo Delta Lake para ler tabelas.
Como alternativa, se você optar por utilizar o Banco de Dados SQL do Azure, poderá implementar o procedimento a seguir para ler dados de um Warehouse.
Crie um contexto de autorização. Para obter um exemplo de criação de um contexto de autorização, consulte o método AuthenticateDataPlaneCall.
Adquira um token com o escopo Warehouse.Read.All em nome do usuário usando o token de portador passado do front-end.
Use o token Fabric para chamar a Get Warehouse API. É necessário aceder às informações de ligação e ao nome de apresentação do Armazém de Dados, que é o catálogo inicial do servidor.
Adquira um token com escopos SQL em nome do usuário. Para estabelecer com êxito uma conexão SQL, use o escopo
https://database.windows.net//user_impersonation.Use o token SQL e as informações de conexão para abrir uma conexão SQL:
private SqlConnection GetSqlConnection(string token, string databaseFqdn, string initialCatalog) { var builder = new SqlConnectionStringBuilder(); builder.DataSource = databaseFqdn; // ConnectionInfo from Get Warehouse API builder.InitialCatalog = initialCatalog; //display name of the Warehouse builder.ConnectTimeout = 120; var connection = new SqlConnection(); connection.AccessToken = token; // SQL token acquired with the Azure SQL Database user_impersonation scope connection.ConnectionString = builder.ConnectionString; connection.Open(); return connection; }Essa conexão agora pode ser consultada para acessar dados do Warehouse. Para obter mais informações sobre como utilizar o namespace Microsoft.Data.SqlClient, consulte Documentação do namespace Microsoft.Data.SqlClient.
Eventhouse API
Depois de autenticar, você pode executar ações como criar Eventhouse, excluir Eventhouse, obter uma lista de Eventhouses, etc. Uma maneira de fazer isso é usando o portal - visão geral do Eventhouse.
A outra maneira é usar a Eventhouse Rest API - Eventhouse Rest API overview.
- Autorizar.
- Adquira um token com o escopo FabricEventhouse.Read.All em nome do utilizador usando o token portador passado do front-end.
- Use o token Fabric para chamar a API do Get Eventhouse.
- Agora, com uma lista dos bancos de dados da casa de eventos, você pode consultar o banco de dados específico desejado, conforme descrito na seção Dados de consulta abaixo.
Consultar dados
Para consultar dados de um banco de dados KQL da Eventhouse, siga estas etapas: Primeiro, autentique-se usando o método apropriado. Em seguida, conecte-se ao Eventhouse para recuperar a lista de bancos de dados. Em seguida, consulte o banco de dados específico que você deseja acessar. É importante distinguir entre comandos de consulta, como .show tables, e consultas de dados, como <TableName> | take 10. Para obter a documentação completa sobre a KQL REST API, consulte documentação da KQL REST API.
A outra maneira é usar a Eventhouse Rest API - Eventhouse Rest API overview.
- Autorizar.
- Adquira um token com escopo KQLDatabase.ReadWrite.All em nome do usuário usando o token de portador passado do front-end.
- Use o token Kql para chamar a KQL Rest API.
Gravando dados
Além de ler dados usando o token, você também pode usar APIs ADLS para gravar dados em tabelas, conforme descrito pelo protocolo Delta Lake.
Você também pode usar as APIs para criar arquivos e diretórios.
Como alternativa, você pode usar outras cargas de trabalho do Fabric para gravar dados na plataforma. Por exemplo, você pode usar a API de carga de trabalho Lakehouse do Fabric para carregar com eficiência tipos de arquivo comuns em uma tabela Delta otimizada. Isso é feito enviando uma solicitação POST para o endpoint da API Tables - Load Table.
A conexão SQL também pode ser usada para executar comandos que inserem dados em tabelas.
Integração OneLake
Você pode optar por usar a integração OneLake em suas cargas de trabalho. Se você fizer isso, quando um novo item for criado para sua carga de trabalho, o Fabric criará automaticamente pastas para o novo item.
Para aderir, o XML de manifesto do item deve declarar isso definindo o atributo CreateOneLakeFoldersOnArtifactCreation como true.
Por exemplo:
<ItemManifestConfiguration xmlns:xsi= "http://www.w3.org/2001/XMLSchema-instance" SchemaVersion="1.101.0">
<Item TypeName="Org.WorkloadSample.SampleWorkloadItem" Category="Data" CreateOneLakeFoldersOnArtifactCreation="true">
<Workload WorkloadName="Org.WorkloadSample" />
...
</Item>
</ItemManifestConfiguration>
Observação
SchemaVersion deve ser definido como 1.101.0 (ou versões suportadas posteriores).
O mesmo SchemaVersion deve ser definido em WorkloadManifest.xml:
<WorkloadManifestConfiguration xmlns:xsi= "http://www.w3.org/2001/XMLSchema-instance" SchemaVersion="1.101.0">
<Workload WorkloadName="Org.WorkloadSample" HostingType="Remote">
...
</Workload>
</WorkloadManifestConfiguration>
Quando um novo item é criado, as seguintes pastas raiz são criadas no OneLake:
<WorkspaceID>/<ItemID>/Files
<WorkspaceID>/<ItemID>/Tables
Você pode criar pastas adicionais debaixo destas e usá-las para armazenar dados em qualquer formato (na pasta Files) ou em formato parquet (na pasta Tables).
Siga as instruções acima para ler/gravar a partir do armazenamento OneLake.