Compute serverless vs. clássico para pipelines
Todo pipeline do Lakeflow Pipelines executa suas atualizações em compute serverless ou clássico. O tipo de compute é uma configuração por pipeline que você escolhe nas configurações do pipeline. Não é automático: um pipeline entra em execução em compute serverless apenas quando você habilita a configuração Serverless , e entra em execução em compute clássico caso contrário. Esta página compara as duas opções para que você possa escolher a correta para cada pipeline.
O Databricks recomenda compute serverless para quase todos os pipelines. Com o serverless, o Databricks gerencia a infraestrutura para você. Não há clusters para dimensionar, configurar, proteger ou conceder permissões, e você obtém recursos que o compute clássico não pode oferecer, como refresh incremental e autoscale vertical. Com o compute clássico, essa infraestrutura é de sua responsabilidade configurar e manter. O serverless suporta quase tudo o que o compute clássico faz. As exceções são o Hive metastore legado e algumas configurações de rede. Para a maioria dos pipelines, escolher o compute clássico significa assumir um trabalho manual que o serverless trataria automaticamente.
O refresh incremental para views materializadas está disponível apenas em pipelines serverless. Views materializadas em execução no compute clássico são sempre totalmente recalculadas. Se o refresh incremental for um requisito para sua carga de trabalho, use o compute serverless. Consulte Refresh incremental para views materializadas.
Comparar opções de compute
A tabela a seguir compara o compute serverless e o compute classic em relação aos recursos que mais frequentemente determinam a escolha:
Capacidade | Serverless | Clássico |
|---|---|---|
Gerenciamento de infraestrutura | A Databricks gerencia toda a infraestrutura. Não há configuração de clusters. | Você deve configurar clusters, incluindo autoscale, tipos de instância e políticas de cluster. |
Refresh incremental para views materializadas | Suportado. As views materializadas são atualizadas de forma incremental sempre que for economicamente eficiente, para reduzir os custos de compute. Consulte Refresh incremental para views materializadas. | Não suportado. Visualizações materializadas são sempre totalmente recomputadas. |
Dimensionamento automático | Autoscale aprimorado que escala horizontalmente (mais executores) e verticalmente (executores maiores). Consulte Otimizar a utilização do cluster de LakeFlow Pipelines com autoscale. | Autoscale aprimorado que realiza escala horizontalmente. Você seleciona os tipos de instância. |
Pipeline de transmissão | Habilitado por default. Microbatches têm execução simultânea para melhorar o throughput e a latência. Consulte Configurar um pipeline serverless. | Não disponível. |
Permissão de criação de compute | Não obrigatório. Todos os usuários do workspace podem executar pipelines serverless por default. | Obrigatório. Os usuários precisam de permissão de criação de cluster irrestrita ou acesso a uma política de compute. |
Políticas de compute e tipos de instância | Gerenciado pelo Databricks. Você não define tipos de instância ou uma política de compute. | Você aplica manualmente uma política de compute e seleciona os tipos de instância de worker e driver. |
Unity Catalog | Sempre usa o Unity Catalog. | Pode usar o Unity Catalog ou o Hive metastore legado. |
Atribuição de custo | Aplique tags personalizadas com uma política de uso serverless. | Aplique tags personalizadas ao pipeline. Você deve fazer join manualmente dos dados de tag aos dados de faturamento. |
Clusters de atualização e manutenção | Gerenciado pelo Databricks. | Você configura os clusters de atualização e manutenção separadamente. |
Compute de nó único | Não é necessário. O Databricks dimensiona o compute para a carga de trabalho automaticamente. | Você configura o compute de nó único para cargas de trabalho pequenas ou não distribuídas. |
Quando usar compute serverless
Use compute serverless para qualquer pipeline que não atinja uma das limitações exclusivas do clássico abaixo. Em particular, o serverless é a escolha certa quando:
- Você deseja que o Databricks gerencie a infraestrutura para você, incluindo autoscale vertical e seleção de instâncias, em vez de configurar e manter clusters por conta própria.
- Você deseja refresh incremental para views materializadas para reduzir os custos de refresh.
- Você deseja que os usuários do Workspace façam a execução de pipelines sem permissões de criação de clusters.
Pipelines serverless exigem um workspace com o Unity Catalog habilitado e uma região com suporte a serverless. Para requisitos e configuração, consulte Configurar um pipeline serverless.
Quando usar compute clássico
O Serverless oferece suporte a quase todas as cargas de trabalho de pipeline, portanto, use o compute clássico apenas quando o serverless não puder executar seu pipeline:
- Suas tabelas usam o Hive metastore legado em vez do Unity Catalog. Para migrar tabelas do Hive metastore para o Unity Catalog e ativar o serverless, consulte Atualizar tabelas e views do Hive para o Unity Catalog.
- Seu pipeline requer rede privada que o serverless não suporta.
- Seu pipeline está em execução em uma região onde o Serverless não está disponível.
Com o compute clássico, políticas de compute, tipos de instância, compute de nó único e clusters separados de atualização e manutenção são de sua responsabilidade configurar e manter, trabalho que o serverless faz para você.
Para opções de configuração e instalação, consulte Configurar compute clássico para pipelines.
Definir o tipo de compute
Você escolhe o tipo de compute nas configurações de Compute do pipeline, ativando ou desativando a configuração Serverless . Novos pipelines usam serverless por default. Você também pode converter um pipeline existente configurado com o Unity Catalog para serverless.
- Para configurar e converter pipelines serverless, consulte Configurar um pipeline serverless.
- Para configurar o compute clássico, consulte Configurar compute clássico para pipelines.