Partilhar via


O que são esquemas lakehouse (Preview)?

Lakehouse suporta a criação de esquemas personalizados. Os esquemas permitem agrupar suas tabelas para melhor descoberta de dados, controle de acesso e muito mais.

Criar um esquema lakehouse

Para habilitar o suporte a esquemas para sua lakehouse, marque a caixa ao lado de Lakehouse schemas (Public Preview) ao criá-la.

Captura de tela mostrando a nova caixa de diálogo lakehouse.

Importante

Os nomes dos espaços de trabalho devem conter apenas caracteres alfanuméricos devido a limitações de visualização. Se caracteres especiais forem usados em nomes de espaços de trabalho, alguns dos recursos do Lakehouse não funcionarão.

Depois de criar a casa do lago, você pode encontrar um esquema padrão chamado dbo em Tabelas. Este esquema está sempre lá e não pode ser alterado ou removido. Para criar um novo esquema, passe o mouse sobre Tabelas, selecione ..., e escolha Novo esquema. Digite o nome do esquema e selecione Criar. Você verá seu esquema listado em Tabelas em ordem alfabética.

Captura de tela mostrando a nova caixa de diálogo do esquema lakehouse.

Armazenar tabelas em esquemas lakehouse

Você precisa de um nome de esquema para armazenar uma tabela em um esquema. Caso contrário, ele vai para o esquema dbo padrão.

df.write.mode("Overwrite").saveAsTable("contoso.sales")

Você pode usar o Lakehouse Explorer para organizar suas tabelas e arrastar e soltar nomes de tabelas em esquemas diferentes.

Animação de tabelas móveis entre esquemas.

Atenção

Se você modificar a tabela, também deverá atualizar itens relacionados, como código de bloco de anotações ou fluxos de dados, para garantir que eles estejam alinhados com o esquema correto.

Traga várias tabelas com atalho de esquema

Para fazer referência a várias tabelas Delta de outro Fabric lakehouse ou armazenamento externo, use o atalho de esquema que exibe todas as tabelas sob o esquema ou pasta escolhidos. Quaisquer alterações nas tabelas no local de origem também aparecem no esquema. Para criar um atalho de esquema, passe o mouse sobre Tabelas, selecione ..., e escolha Novo atalho de esquema. Em seguida, selecione um esquema em outro lakehouse ou uma pasta com tabelas Delta em seu armazenamento externo, como o Azure Data Lake Storage (ADLS) Gen2. Isso cria um novo esquema com suas tabelas referenciadas.

Captura de tela mostrando o novo atalho do esquema lakehouse.

Acessar esquemas lakehouse para relatórios do Power BI

Para criar o seu modelo semântico, basta escolher as tabelas que pretende utilizar. As tabelas podem estar em esquemas diferentes. Se tabelas de esquemas diferentes compartilharem o mesmo nome, você verá números ao lado de nomes de tabelas quando estiver na visualização de modelo.

Esquemas Lakehouse no caderno

Quando você olha para um lakehouse habilitado para esquema no explorador de objetos do bloco de anotações, você vê que as tabelas estão em esquemas. Você pode arrastar e soltar a tabela em uma célula de código e obter um trecho de código que se refere ao esquema onde a tabela está localizada. Use este namespace para se referir a tabelas em seu código: "workspace.lakehouse.schema.table". Se você deixar de fora qualquer um dos elementos, o executor usa a configuração padrão. Por exemplo, se você fornecer apenas o nome da tabela, ele usará o esquema padrão (dbo) do lakehouse padrão para o bloco de anotações.

Importante

Se você quiser usar esquemas em seu código, certifique-se de que o lakehouse padrão para o bloco de anotações esteja habilitado para esquema.

Consultas SQL do Spark entre espaços de trabalho

Use o namespace "workspace.lakehouse.schema.table" para fazer referência a tabelas em seu código. Dessa forma, você pode unir tabelas de diferentes espaços de trabalho se o usuário que executa o código tiver permissão para acessar as tabelas.

SELECT * 
    FROM operations.hr.hrm.employees as employees 
    INNER JOIN global.corporate.company.departments as departments
    ON employees.deptno = departments.deptno;

Importante

Certifique-se de unir tabelas somente de lakehouses que tenham esquemas habilitados. Unir tabelas de casas de lagos que não têm esquemas habilitados não funcionará.

Limitações da pré-visualização pública

Os recursos/funcionalidades não suportados listados abaixo são para a versão atual da visualização pública. Eles serão resolvidos nas próximas versões antes da disponibilidade geral.

Funcionalidades/funcionalidades não suportadas Notas
Casa de lago compartilhada Usar o espaço de trabalho no namespace para lakehouses compartilhadas não funcionará, por exemplo, wokrkspace.sharedlakehouse.schema.table. O usuário deve ter a função de espaço de trabalho para usar o espaço de trabalho no namaspace.
Esquema de tabela não delta e gerenciado Não há suporte para a obtenção de esquema para tabelas gerenciadas e não formatadas em Delta (por exemplo, CSV). Expandir essas tabelas no lakehouse explorer não mostra nenhuma informação de esquema na UX.
Mesas de faísca externas Não há suporte para operações externas da tabela Spark (por exemplo, descoberta, obtenção de esquema, etc.). Essas tabelas não são identificadas na UX.
API pública APIs públicas (Listar tabelas, Carregar tabela, expor a propriedade estendida defaultSchema, etc.) não são suportadas para o Lakehouse habilitado para esquema. APIs públicas existentes chamadas em um esquema habilitado para Lakehouse resulta em um erro.
Manutenção de tabelas Não suportado.
Atualizar propriedades da tabela Não suportado.
Nome do espaço de trabalho contendo caracteres especiais Espaço de trabalho com caracteres especiais (por exemplo, espaço, barras) não é suportado. Um erro do usuário é mostrado.
Vistas faíscas Não suportado.
Características específicas do Hive Não suportado.
Spark.catalog API Não suportado. Em vez disso, use o Spark SQL.
USE <schemaName> Não funciona entre espaços de trabalho, mas tem suporte no mesmo espaço de trabalho.
Migração Não há suporte para a migração de Lakehouses existentes sem esquema para Lakehouses baseadas em esquema.