Desenvolvimento de aplicativos e extensões¶
Você pode escrever aplicativos que estendem o Snowflake, atuar como cliente ou atuar como um componente integrador.
Consulta e processamento de dados com a API Snowpark¶
Usando as APIs Snowpark em Java, Python ou Scala, é possível criar aplicativos que processam dados no Snowflake sem mover os dados para o sistema em que o código do aplicativo é executado.
Com o Snowpark, você pode:
Criar aplicativos, pipelines e lógica de processamento definidos como Java, Python ou Scala.
Criar instruções de dados usando bibliotecas que se integram nativamente com as linguagens suportadas.
Reduzir a sobrecarga da transferência de dados de e para o Snowflake ao processar os dados.
Criar funções definidas pelo usuário ao escrever em Java, Python ou Scala. Snowflake gera o código SQL necessário nos bastidores.
Para uma Visão geral do Snowpark, consulte API Snowpark.
Guias do desenvolvedor¶
Guia |
Descrição |
---|---|
Um guia e uma referência para escrever código do Snowpark em Java. |
|
Um guia e uma referência para escrever código do Snowpark em Python. |
|
Um guia e uma referência para escrever código do Snowpark em Scala. |
|
Um guia para escrever código para registrar mensagens de log armazenadas em uma tabela de eventos. |
|
Um guia para escrever código para registrar dados de rastreamento armazenados em uma tabela de eventos. |
Guias de início rápido¶
Você pode usar os seguintes tutoriais de início rápido para obter uma introdução prática ao Snowpark.
ML Snowpark¶
Snowpark ML é uma biblioteca Python para aprendizado de máquina e ciência de dados no Snowflake, incluindo pré-processamento, modelagem, gerenciamento de modelo e ingestão de dados. Funciona com o Snowpark Python, permitindo que você use o Snowpark DataFrames para dados de treinamento e teste.
Extensão do Snowflake com procedimentos, funções definidas pelo usuário e funções externas¶
Você pode melhorar e estender o Snowflake escrevendo procedimentos, funções definidas pelo usuário e funções externas.
Com um procedimento, você pode realizar operações programadas ou sob demanda executando instruções de código ou SQL. Você escreve a lógica em uma das linguagens de programação suportadas.
Com uma função definida pelo usuário (UDF), você pode executar a lógica para calcular e retornar dados. UDFs são úteis para o processamento em lote e para integrar lógica personalizada em SQL. Você escreve a lógica em uma das linguagens de programação suportadas.
Com uma função externa, você pode configurar uma integração entre o Snowflake e o código personalizado executado fora do Snowflake, depois use o código personalizado como se fosse uma função definida pelo usuário.
Para saber mais sobre a escolha entre estas duas opções, consulte Escolha se deseja escrever um procedimento armazenado ou uma função definida pelo usuário.
Guias do desenvolvedor¶
Guia |
Descrição |
---|---|
Um guia sobre como escrever procedimentos armazenados, como escrever os manipuladores nas linguagens suportadas. |
|
Um guia sobre como escrever UDFs, como escrever os manipuladores nas linguagens suportadas. |
|
Diretrizes de projeto e restrições para funções e procedimentos |
Diretrizes gerais sobre segurança, convenções e muito mais. |
Informações sobre como criar o código do manipulador que você manterá em um estágio. |
|
Um guia para escrever funções externas, com as quais você pode invocar código em outros sistemas. |
|
Um guia para escrever código para registrar mensagens de log que são armazenadas em uma tabela de eventos. |
|
Um guia para escrever código para registrar dados de rastreamento que são armazenados em uma tabela de eventos. |
Como criar um aplicativo de cliente com drivers e APIs¶
Você pode integrar as operações Snowflake em um aplicativo de cliente. Além da API Snowpark, você também pode usar drivers específicos da linguagem e plataforma.
Drivers¶
Os drivers permitem que você se conecte a partir de seu código ou aplicativos ao Snowflake. Usando linguagens como C#, Go e Python, você pode desenvolver aplicativos que realizam operações no Snowflake. Para obter informações específicas sobre cada um dos drivers que você pode utilizar para acessar o Snowflake, consulte as seções seguintes.
Guias do desenvolvedor¶
RESTful API¶
Usando a RESTful API SQL Snowflake, você pode acessar e atualizar dados por HTTPS e REST. Por exemplo, você pode enviar instruções SQL, criar e executar procedimentos armazenados, provisionar usuários etc.
Na REST API SQL, você envia uma instrução SQL para execução no corpo de uma solicitação POST
. Em seguida, você verifica o status de execução e busca os resultados com solicitações GET
.
Para o guia de desenvolvedores de REST API SQL, consulte REST API SQL Snowflake.
Integração com outros sistemas¶
Snowflake inclui conectores com APIs para integração com sistemas fora do Snowflake. Consulte os guias do desenvolvedor abaixo para obter detalhes.
Guias do desenvolvedor¶
Conector |
Descrição |
---|---|
O Apache Kafka é uma plataforma de transmissão de eventos. Este conector pode enviar eventos de Kafka para Snowflake para ingestão. |
|
Apache Spark é um mecanismo de análise para processamento de dados em grande escala. O conector Spark pode ser integrado em cargas de trabalho Spark para fazer mais processamento de dados diretamente no Snowflake para reduzir a transferência de dados e melhorar significativamente o desempenho. |
Você também pode integrar o Snowflake com muitos outros sistemas para troca de dados, realizando análises com machine learning, aumentando a segurança, e muito mais. Para saber mais sobre a integração do Snowflake com estes sistemas, consulte Ecossistema do Snowflake.
Linguagens suportadas¶
Snowflake oferece suporte a várias linguagens para a criação de aplicativos e extensões. A tabela a seguir lista as linguagens suportadas para desenvolvimento no Snowflake, juntamente com o que você pode criar com cada uma delas.
Linguagem |
Recurso Snowflake |
---|---|
Java |
Você pode:
|
JavaScript |
Você pode:
|
PHP |
Você pode:
|
Python |
Você pode:
|
Scala |
Você pode:
|
Script Snowflake |
Você pode:
|
SQL |
Você pode:
|