Use a API do Livy para enviar e executar trabalhos do Spark
Observação
A API do Livy para Engenharia de Dados do Fabric está em versão prévia.
Aplica-se a:✅ Engenharia e Ciência de Dados no Microsoft Fabric
Comece com a API do Livy para Engenharia de Dados do Fabric criando um Lakehouse; autenticando com um token de aplicativo Microsoft Entra; enviando trabalhos em lote ou sessão de um cliente remoto para a computação do Spark do Fabric. Você também descobrirá o ponto de extremidade da API do Livy; enviará trabalhos; e monitorará os resultados.
Pré-requisitos
Capacidade Premium ou de Teste do Fabric com um LakeHouse
Habilite a Configuração de Administrador do Locatário para a API do Livy (versão prévia)
Um cliente remoto como o Visual Studio Code com suporte para Jupyter Notebooks, PySpark, e Microsoft Authentication Library (MSAL) para Python
Um token de aplicativo do Microsoft Entra é necessário para acessar a API Rest do Fabric. Registrar um aplicativo na plataforma de identidade da Microsoft
Escolhendo um cliente de API REST
Você pode usar várias linguagens de programação ou clientes GUI para interagir com ponto de extremidades de API REST. Neste artigo, usaremos o Visual Studio Code. O Visual Studio Code precisa ser configurado com Jupyter Notebooks, PySpark, e a Microsoft Authentication Library (MSAL) para Python
Como autorizar as solicitações da API do Livy
Para trabalhar com APIs do Fabric, incluindo a API do Livy, você primeiro precisa criar um aplicativo Microsoft Entra e obter um token. Seu aplicativo precisa ser registrado e configurado adequadamente para executar chamadas de API no Fabric. Para obter mais informações, confira Registrar um aplicativo na plataforma de identidade da Microsoft.
São necessárias muitas permissões de escopo do Microsoft Entra para executar trabalhos do Livy. Esse é um exemplo de código Spark simples + acesso a armazenamento + SQL:
- Code.AccessAzureDataExplorer.All
- Code.AccessAzureDataLake.All
- Code.AccessAzureKeyvault.All
- Code.AccessFabric.All
- Code.AccessStorage.All
- Item.ReadWrite.All
- Lakehouse.Execute.All
- Lakehouse.Read.All
- Workspace.ReadWrite.All
Observação
Durante a visualização pública, adicionaremos alguns escopos granulares adicionais, e se você usar essa abordagem, quando adicionarmos esses escopos adicionais, seu aplicativo Livy será interrompido. Verifique essa lista, pois ela será atualizada com os escopos adicionais.
Alguns clientes querem permissões mais granulares do que a lista anterior. Você poderia remover Item.ReadWrite.All e substituir por essas permissões de escopo mais granulares:
- Code.AccessAzureDataExplorer.All
- Code.AccessAzureDataLake.All
- Code.AccessAzureKeyvault.All
- Code.AccessFabric.All
- Code.AccessStorage.All
- Lakehouse.Execute.All
- Lakehouse.ReadWrite.All
- Workspace.ReadWrite.All
- Notebook.ReadWrite.All
- SparkJobDefinition.ReadWrite.All
- MLModel.ReadWrite.All
- MLExperiment.ReadWrite.All
- Dataset.ReadWrite.All
Depois de registrar seu aplicativo, você precisará da ID do Aplicativo (cliente) e da ID do Diretório (locatário).
A pessoa autenticada chamando a API do Livy precisa ser um membro do workspace onde tanto a API quanto os itens da fonte de dados estão localizados com um papel de Contribuidor. Para obter mais informações, consulte Conceder aos usuários acesso a espaços de trabalho.
Como descobrir o ponto de extremidade da API do Livy do Fabric
Um artefato Lakehouse é necessário para acessar o ponto de extremidade do Livy. Uma vez que o Lakehouse é criado, o ponto de extremidade da API do Livy pode ser localizado dentro do painel de configurações.
O ponto de extremidade da API do Livy seguiria esse padrão:
https://api.fabric.microsoft.com/v1/workspaces/<ws_id>/lakehouses/<lakehouse_id>/livyapi/versions/2023-12-01/
A URL é anexada com <sessões> ou <lotes>, dependendo do que você escolher.
Integração com Ambientes do Fabric
Para cada workspace do Fabric, um pool inicial padrão é provisionado, a execução de todo o código spark usa esse pool inicial por padrão. Você pode usar Ambientes do Fabric para personalizar os trabalhos do Spark da API do Livy.
Enviar trabalhos da API do Livy
Agora que você completou a configuração da API do Livy, você poderá escolher enviar trabalhos em lote ou sessão.
Como monitorar o histórico de solicitações
Você pode usar o Hub de Monitoramento para ver seus envios anteriores da API do Livy e depurar quaisquer erros de envios.
Conteúdo relacionado
- Documentação API REST Apache Livy
- Comece com as configurações de administrador para sua Capacidade do Fabric
- Configurações de administração do espaço de trabalho do Apache Spark no Microsoft Fabric
- Registrar um aplicativo na plataforma de identidade da Microsoft
- Visão geral de permissões e consentimentos do Microsoft Entra
- Escopos da API REST do Fabric
- Visão geral do monitoramento do Apache Spark
- Detalhes do aplicativo Apache Spark