Compartilhar via


Migrar a definição de trabalho do Spark do Azure Synapse para o Fabric

Para mover as definições de trabalho do Spark (SJD) do Azure Synapse para o Fabric, você tem duas opções diferentes:

  • Opção 1: criar a definição de trabalho do Spark manualmente no Fabric.
  • Opção 2: você pode usar um script para exportar definições de trabalho do Spark do Azure Synapse e importá-las no Fabric usando a API.

Para considerações sobre a definição de trabalho do Spark, consulte as diferenças entre o Fabric e o Spark do Azure Synapse e o .

Pré-requisitos

Se você ainda não tiver um, crie um workspace do Fabric no seu locatário.

Opção 1: criar definição de trabalho do Spark manualmente

Para exportar uma definição de trabalho do Spark do Azure Synapse:

  1. Abra o Synapse Studio: entre no Azure. Navegue até o workspace do Azure Synapse e abra o Synapse Studio.
  2. Localize o trabalho do Python/Scala/R Spark: localize e identifique a definição de trabalho do Python/Scala/R Spark que você deseja migrar.
  3. Exportar a configuração de definição de trabalho:
    • No Synapse Studio, abra a definição de trabalho do Spark.
    • Exporte ou anote as configurações, incluindo localização do arquivo de script, dependências, parâmetros e quaisquer outros detalhes relevantes.

Para criar uma nova definição de trabalho do Spark (SJD) com base nas informações da SJD exportadas no Fabric:

  1. Acessar o workspace do Fabric: entre no Fabric e acesse seu workspace.
  2. Crie uma nova definição de trabalho do Spark no Fabric:
    • No Fabric, acesse a página inicial de Engenharia de Dados.
    • Selecione Definição de trabalho do Spark.
    • Configure o trabalho usando as informações exportadas do Synapse, incluindo localização do script, dependências, parâmetros e configurações de cluster.
  3. Adaptar e testar: faça qualquer adaptação necessária ao script ou à configuração para adequar o ambiente do Fabric. Teste o trabalho no Fabric para garantir que ele seja executado corretamente.

Captura de tela mostrando a criação da definição de trabalho do Spark.

Depois que a definição de trabalho do Spark for criada, valide as dependências:

  • Certifique-se de usar a mesma versão do Spark.
  • Valide a existência do arquivo de definição principal.
  • Valide a existência dos arquivos, dependências e recursos referenciados.
  • Serviços vinculados, conexões de fonte de dados e pontos de montagem.

Como criar uma definição de trabalho do Apache Spark no Fabric.

Opção 2: usar a API do Fabric

Siga estas etapas importantes para migração:

  • Pré-requisitos.
  • Etapa 1: exportar a definição de trabalho do Spark do Azure Synapse para o OneLake (.json).
  • Etapa 2: importar a definição de trabalho do Spark automaticamente para o Fabric usando a API do Fabric.

Pré-requisitos

Os pré-requisitos incluem ações que você precisa considerar antes de iniciar a migração da definição de trabalho do Spark para o Fabric.

  • Um workspace do Fabric.
  • Se você ainda não tiver um, crie uma Lakehouse do Fabric no seu workspace.

Etapa 1: exportar a definição de trabalho do Spark do workspace do Azure Synapse

O foco da Etapa 1 é exportar a definição de trabalho do Spark do workspace do Azure Synapse para o OneLake no formato json. Esse processo é o seguinte:

  • 1.1) Importar o notebook de migração da SJD para o workspace do Fabric. Esse notebook exporta todas as definições de trabalho do Spark de um determinado workspace do Azure Synapse para um diretório intermediário no OneLake. A API do Synapse é usada para exportar a SJD.
  • 1.2) Configure os parâmetros no primeiro comando para exportar a definição de trabalho do Spark para um armazenamento intermediário (OneLake). Isso exporta apenas o arquivo de metadados json. O snippet a seguir é usado para configurar os parâmetros de origem e destino. Certifique-se de substituí-los por seus próprios valores.
# Azure config
azure_client_id = "<client_id>"
azure_tenant_id = "<tenant_id>"
azure_client_secret = "<client_secret>"

# Azure Synapse workspace config
synapse_workspace_name = "<synapse_workspace_name>"

# Fabric config
workspace_id = "<workspace_id>"
lakehouse_id = "<lakehouse_id>"
export_folder_name = f"export/{synapse_workspace_name}"
prefix = "" # this prefix is used during import {prefix}{sjd_name}

output_folder = f"abfss://{workspace_id}@onelake.dfs.fabric.microsoft.com/{lakehouse_id}/Files/{export_folder_name}"
  • 1.3) Execute as duas primeiras células do notebook de exportação/importação para exportar metadados de definição de trabalho do Spark para o OneLake. Depois que as células são concluídas, essa estrutura de pastas no diretório de saída intermediário é criada.

Captura de tela mostrando a exportação da definição de trabalho do Spark no OneLake.

Etapa 2: importar a definição de trabalho do Spark para o Fabric

A etapa 2 acontece quando as definições de trabalho do Spark são importadas do armazenamento intermediário para o workspace do Fabric. Esse processo é o seguinte:

  • 2.1) Valide as configurações em 1.2 para garantir que o workspace e o prefixo certos sejam indicados para importar as definições de trabalho do Spark.
  • 2.2) Execute a terceira célula do notebook de exportação/importação para importar todas as definições de trabalho do Spark da localização intermediária.

Observação

A opção de exportação gera um arquivo de metadados json. Verifique se os arquivos executáveis de definição de trabalho do Spark, os arquivos de referência e os argumentos estão acessíveis no Fabric.