Executar cargas de trabalho do Spark a partir de VS Code, Jupyter Notebooks ou um terminal.¶
Você pode executar cargas de trabalho do Spark interativamente por meio de notebooks Jupyter, VS Code ou qualquer interface baseada em Python sem precisar gerenciar um cluster Spark. As cargas de trabalho são executadas na infraestrutura do Snowflake.
Por exemplo, você pode executar as seguintes tarefas:
Confirme que você tem os pré-requisitos.
Configuração de seu ambiente para se conectar com Snowpark Connect for Spark no Snowflake.
Instale Snowpark Connect for Spark.
Execute código PySpark de seu cliente para executar no Snowflake.
Pré-requisitos¶
Confirme se suas instalações do Python e do Java são baseadas na mesma arquitetura de computador. Por exemplo, se Python for baseado em ARM64, Java também deverá ser ARM64 (e não x86_64, por exemplo).
Configure seu ambiente¶
Você pode configurar seu ambiente de desenvolvimento garantindo que seu código possa se conectar ao Snowpark Connect for Spark no Snowflake. Para conectar-se ao código do cliente Snowflake, você usará um arquivo .toml contendo detalhes da conexão.
Se você tiver Snowflake CLI instalado, você pode usá-lo para definir uma conexão. Caso contrário, você pode escrever manualmente os parâmetros de conexão em um arquivo config.toml.
Adicione uma conexão usando Snowflake CLI¶
Você pode usar Snowflake CLI para adicionar propriedades de conexão que Snowpark Connect for Spark pode usar para se conectar ao Snowflake. Suas alterações são salvas em um arquivo config.toml.
Execute o seguinte comando para adicionar uma conexão usando o comando de conexão snow: comado
add.Siga as instruções para definir uma conexão.
Certifique-se de especificar
spark-connectcomo o nome da conexão.Este comando adiciona uma conexão ao seu arquivo
config.toml, como no exemplo a seguir:Execute o seguinte comando para confirmar que a conexão funciona.
Você poderá testar a conexão dessa maneira quando a adicionar usando Snowflake CLI.
Adição de uma conexão gravando manualmente um arquivo de conexão¶
Você pode escrever ou atualizar manualmente um arquivo connections.toml para que seu código possa se conectar ao Snowpark Connect for Spark no Snowflake.
Execute o seguinte comando para garantir que seu arquivo
connections.tomlpermita que somente o proprietário (usuário) tenha acesso de leitura e gravação.Edite o arquivo
connections.tomlpara que ele contenha uma conexão[spark-connect]com as propriedades de conexão no exemplo a seguir.Certifique-se de substituir os valores por suas próprias especificações de conexão.
Instalação do Snowpark Connect for Spark¶
Você pode instalar Snowpark Connect for Spark como um pacote Python.
Crie um ambiente virtual Python.
Confirme se a sua versão do Python é 3.10 ou posterior e anterior a 3.13 executando
python3 --version.Instale o pacote Snowpark Connect for Spark.
Adicione o código Python para iniciar um Snowpark Connect for Spark e crie uma sessão de Snowpark Connect for Spark.
Execução de código Python do seu cliente¶
Quando você já tem uma conexão autenticada, pode escrever um código como de costume.
Você pode executar o código PySpark que se conecta a Snowpark Connect for Spark usando a biblioteca de cliente PySpark.
Executar código Scala a partir do seu cliente¶
Você pode executar aplicativos Scala que se conectam ao Snowpark Connect for Spark usando a biblioteca cliente do Spark Connect.
Este guia orienta você na configuração do Snowpark Connect e na conexão de seus aplicativos Scala ao servidor Snowpark Connect for Spark.
Etapa 1: Configurar seu ambiente Snowpark Connect for Spark¶
Configure seu ambiente usando as etapas descritas nos tópicos a seguir:
Etapa 2: Criar um script de servidor Snowpark Connect for Spark e iniciar o servidor¶
Criar um script Python para iniciar o servidor Snowpark Connect for Spark.
Inicie o servidor Snowpark Connect for Spark.
Etapa 3: Configurar seu aplicativo Scala¶
Adicione a dependência do cliente Spark Connect ao seu arquivo build.sbt.
Execute o código do Scala para conectar-se ao servidor Snowpark Connect for Spark.
Compile e execute o aplicativo.
Compatibilidade com UDF do Scala no Snowpark Connect for Spark¶
Ao usar funções definidas pelo usuário ou código personalizado, siga um destes procedimentos:
Registre um localizador de classes para monitorar e enviar arquivos de classe.
Carregue as dependências de JAR, se necessário. Você poderá incluir o próprio JAR da carga de trabalho se um localizador de classe não for usado.
Use um JAR preparado.
Usando o Scala 2.13¶
Por padrão, o Snowpark Connect for Spark usa o Scala 2.12. As cargas de trabalho criadas com o Scala 2.13 devem especificar a versão do Scala usando a opção de configuração «snowpark.connect.scala.version».
Solução de problemas de instalação de Snowpark Connect for Spark¶
Com a lista de verificações a seguir, você pode solucionar problemas de instalação e de uso do Snowpark Connect for Spark.
Certifique-se de que Java e Python sejam baseados na mesma arquitetura.
Use o arquivo do pacote Snowpark Connect for Spark mais recente conforme descrito em Instalação do Snowpark Connect for Spark.
Confirme que o comando :com:`Python` Comando com o código PySpark está funcionando corretamente para execução local, ou seja, sem conectividade do Snowflake.
Por exemplo, execute um comando como o seguinte:
Clientes de código aberto¶
É possível usar softwares de código aberto padrão (OSS) e pacotes de clientes Spark (como PySpark e clientes Spark para Java ou Scala) em seus ambientes locais preferidos, incluindo Jupyter Notebooks e VS Code. Dessa forma, você pode evitar a instalação de pacotes específicos do Snowflake.
Isso pode ser útil se você quiser escrever código Spark localmente e usar os recursos de computação e governança corporativa do Snowflake. Neste cenário, você realiza autenticação e autorização por meio de tokens de acesso programáticos (PATs).
As seções a seguir abordam a instalação, a configuração e a autenticação. Você também encontrará um exemplo simples de PySpark para validar sua conexão.
Etapa 1: Instalar os pacotes necessários¶
Instale
pyspark. Você não precisa instalar nenhum pacote Snowflake.
Etapa 2: Configuração e autenticação¶
Gere um token de acesso programático (PAT).
Para obter mais informações, consulte os seguintes tópicos:
O exemplo a seguir adiciona um PAT chamado
TEST_PATpara o usuáriosysadmine define a expiração para 30 dias.Encontre o URL do host do Snowflake Spark Connect.
Execute o seguinte SQL no Snowflake para encontrar o nome do host da sua conta:
Etapa 3: Conectar-se ao servidor Spark Connect¶
Para se conectar ao servidor Spark Connect, use um código como o seguinte: