Você pode trabalhar com dados de um depósito ou ponto de extremidade de análise SQL no mesmo espaço de trabalho ou em vários espaços de trabalho.
O ponto de extremidade de análise SQL de um Lakehouse é descoberto automaticamente com base no contexto do espaço de trabalho.
O conector tem uma API simplificada do Spark, abstrai a complexidade subjacente e opera com apenas uma linha de código.
Enquanto você acessa uma tabela ou um modo de exibição, o conector mantém os modelos de segurança definidos no nível do mecanismo SQL. Esses modelos incluem segurança em nível de objeto (OLS), segurança em nível de linha (RLS) e segurança em nível de coluna (CLS).
O conector vem pré-instalado no runtime do Fabric, o que elimina a necessidade de instalação separada.
Observação
Atualmente, o conector está em versão prévia. Para obter mais informações, confira limitações atuais posteriormente neste artigo.
Autenticação
A autenticação do Microsoft Entra é uma abordagem de autenticação integrada. Os usuários entram no espaço de trabalho do Microsoft Fabric e suas credenciais são automaticamente passadas para o mecanismo SQL para autenticação e autorização. As credenciais são mapeadas automaticamente, e os usuários não precisarão fornecer as opções de configuração específicas.
Permissões
Para se conectar ao mecanismo SQL, os usuários precisam de pelo menos permissão Leitura (semelhante à permissão CONNECT no SQL Server) no depósito ou no ponto de extremidade da análise SQL (nível de item). Os usuários também precisam de permissões granulares no nível do objeto para ler dados de tabelas ou exibições específicas. Para saber mais, consulte Segurança para Data Warehousing no Microsoft Fabric.
Modelos e exemplos de código
Usar uma assinatura de método
O comando a seguir mostra a assinatura do método synapsesql para a solicitação de leitura. O argumento de três partes tableName é necessário para acessar tabelas ou exibições de um depósito e o ponto de extremidade de análise SQL de um lakehouse. Atualize o argumento com os seguintes nomes, com base no seu cenário:
Além de ler diretamente de uma tabela ou exibição, esse conector também permite especificar uma consulta personalizada ou de passagem, que é passada para o mecanismo SQL e o resultado retornado ao Spark.
Para acessar e ler dados de um warehouse ou lakehouse em diferentes workspaces, você pode especificar a ID do workspace onde seu warehouse ou lakehouse está localizado e, em seguida, a ID do item do lakehouse ou warehouse. A linha a seguir fornece um exemplo de como ler dados de uma tabela ou visualização em um DataFrame do Spark do warehouse ou lakehouse com a ID do workspace e a ID do lakehouse/warehouse especificadas:
# For lakehouse
df = spark.read.option(Constants.WorkspaceId, "<workspace id>").synapsesql("<lakehouse name>.<schema name>.<table or view name>")
df = spark.read.option(Constants.WorkspaceId, "<workspace id>").option(Constants.LakehouseId, "<lakehouse item id>").synapsesql("<lakehouse name>.<schema name>.<table or view name>")
# For warehouse
df = spark.read.option(Constants.WorkspaceId, "<workspace id>").synapsesql("<warehouse name>.<schema name>.<table or view name>")
df = spark.read.option(Constants.WorkspaceId, "<workspace id>").option(Constants.DatawarehouseId, "<warehouse item id>").synapsesql("<warehouse name>.<schema name>.<table or view name>")
Observação
Ao executar o notebook, por padrão, o conector procura o depósito ou lakehouse especificado no espaço de trabalho do lakehouse anexado ao notebook. Para fazer referência a um warehouse ou lakehouse de outro workspace, especifique a ID do workspace e a ID do item do lakehouse ou warehouse como mostrado acima.
Crie uma tabela do lakehouse com base nos dados de um depósito
Essas linhas de código fornecem um exemplo de como ler dados de uma tabela ou visualização em um DataFrame do Spark e usá-los para criar uma tabela em um lakehouse:
Após a conclusão, o snippet de resposta de leitura aparecerá na saída da célula. A falha na célula atual também cancela as execuções de células subsequentes do notebook. As informações detalhadas de erros estarão disponíveis nos logs do aplicativo Spark.
Limitações atuais
Atualmente, o conector:
Oferece suporte à recuperação de dados de depósitos do Fabric e pontos de extremidade de análise SQL de itens do lakehouse.
O DW de estrutura agora dá suporte ao Time Travel, mas esse conector não funciona para uma consulta com sintaxe de viagem no tempo.
Mantém a assinatura de uso como a fornecida com o Apache Spark para Azure Synapse Analytics para consistência. No entanto, não é compatível com versões anteriores para se conectar e trabalhar com o pool SQL dedicado no Azure Synapse Analytics.
Os nomes de coluna com caracteres especiais serão tratados com a adição de caracteres de escape antes que a consulta, com base no nome da tabela/exibição de 3 partes, seja enviada. No caso de uma leitura personalizada ou baseada em consulta de passagem, os usuários devem escapar nomes de coluna que poderiam conter caracteres especiais.
Tables in a Microsoft Fabric lakehouse are based on the Delta Lake technology commonly used in Apache Spark. By using the enhanced capabilities of delta tables, you can create advanced analytics solutions.