Inferência de modelo no Snowflake¶
O Snowflake usa dois mecanismos de computação distintos:
O warehouse (mecanismo SQL)
Snowpark Container Services
O Snowflake Model Registry oferece uma interface unificada para ambos os mecanismos. O ambiente ideal para seus casos de uso depende da latência, dos tipo de dados e dos requisitos de dimensionamento. O Snowflake oferece as seguintes abordagens para fluxos de trabalho de inferência:
Inferência em tempo real (API REST): projetada para casos de uso de baixa latência e em tempo real. As solicitações são facilitadas por meio de pontos de extremidade HTTP e são ideais para operar aplicativos externos.
Inferência em lote nativa do Snowflake (SQL): projetada para cargas de trabalho em lote que exigem integração com o ecossistema SQL do Snowflake. Por exemplo, as cargas de trabalho em lote podem ser integradas a tabelas dinâmicas, ao Snowpark, a DBT e tarefas do usuário. Você pode usar uma função SQL para incorporar inteligência diretamente a seus pipelines de dados existentes sem mover os dados nem gerenciar a infraestrutura externa.
Inferência em lote baseada em trabalhos: essa abordagem foi projetada para processamento distribuído de alta taxa de transferência, em que a inferência é tratada como uma área de preparação de computação independente. Ao desacoplar a inferência do mecanismo SQL, você pode otimizar preço e desempenho. Você pode usar a inferência em lote para ajudá-lo a processar conjuntos de dados grandes ou atender a requisitos computacionais complexos. Isso é ideal para processar arquivos, como imagens, vídeos e áudios, diretamente das áreas de preparação do Snowflake.
Quando escolher¶
Use a tabela a seguir para alinhar seus requisitos específicos de carga de trabalho ao padrão de computação correto.
Recurso |
Inferência em tempo real (SPCS) |
Inferência em lote nativa (SQL) |
Lote baseado em trabalhos (SPCS) |
|---|---|---|---|
Principal objetivo |
Respostas interativas: feedback de baixa latência em subsegundos para usuários ativos |
Inteligência em linha: incorporação perfeita de modelos a pipelines de dados SQL |
Processamento autônomo: computação desacoplada em grande escala para dados não estruturados |
Melhor para… |
• Web/Mobile app backends.
• Real-time user interactions.
• High-concurrency request spikes.
|
• Upstream pipelines (Dynamic Tables, Snowpark).
• SQL-first users (Analysts/DEs).
• Tools like dbt.
|
• Processing files (Images, Video, Audio).
• Large-scale historical backfills.
• Multi-modal data processing.
|
Fonte de dados |
Pequenas entradas passadas por carga útil HTTP |
Dados que residem em tabelas do Snowflake |
Dados que residem em áreas de preparação do Snowflake (arquivos) |
Escalabilidade |
Dimensionamento automático horizontal para atender ao volume de solicitações |
Dimensionamento sem servidor via warehouses |
Processamento distribuído de alta taxa de transferência para dados em massa |
Vantagem principal |
Complexidade Zero Ops: o Snowflake processa a orquestração de contêineres, a entrada e a aplicação automática de patches de segurança automaticamente |
Infraestrutura zero: considere seu modelo como uma função SQL nativa |
Otimização de custo: eficiência significativa para áreas de preparação de computação distintas e de alto volume |