Repositório de Recursos do Databricks

O Databricks Feature Store é um registro central para os recursos usados em seus modelos de IA e ML. Quando você registra recursos e modelos no Unity Catalog, recebe governança embutida, linhagem, joins pontuais, além de compartilhamento e descoberta de recursos entre espaços de trabalho.

Você pode criar recursos usando duas estratégias.

Ambos produzem recursos governados pelo Catálogo Unity que são publicados na Online Feature Store. Veja Escolha uma estratégia de autoria.

  • Feature Views, que definem características declarativamente e permitem que o Databricks calcule e gerencie os pipelines de funcionalidades para você. Essa funcionalidade está em Visualização Pública.
  • Tabelas de características, que você preenche você mesmo escrevendo valores de características em uma tabela Delta.

Com o Databricks, todo o fluxo de trabalho de treinamento do modelo ocorre em uma única plataforma, incluindo:

  • Pipelines de dados que ingerem dados brutos, criam tabelas de recursos, treinam modelos e executam inferência em lote.
  • Pontos de extremidade de disponibilização de modelos e recursos que estão disponíveis com um único clique e fornecem milissegundos de latência.
  • Monitoramento de modelos e dados.

Quando você utiliza recursos do Databricks Feature Store para treinar modelos, o modelo rastreia automaticamente a linhagem até os recursos que foram usados no treinamento. Em tempo de inferência, o modelo pesquisa automaticamente os valores de características mais recentes. O Databricks Feature Store também fornece computação sob demanda de funcionalidades para aplicativos em tempo real, gerenciando todas as tarefas de computação de funcionalidades. Isso elimina o viés de treinamento/serviço, garantindo que os cálculos de características usados na inferência sejam os mesmos usados durante o treinamento do modelo. Ele também simplifica significativamente o código do lado do cliente, pois todas as pesquisas de recursos e a computação são tratadas pelo Repositório de Recursos do Databricks.

Observação

Esta página descreve o Databricks Feature Store para workspaces habilitados para o Unity Catalog. Se o workspace não estiver habilitado para o Unity Catalog, consulte Workspace Feature Store (preterido).

Visão geral conceitual

Para obter uma visão geral de como o Databricks Feature Store funciona e um glossário de termos, consulte a visão geral e o glossário do Databricks Feature Store.

Escolha uma estratégia de autoria

A Feature Store suporta duas formas de criar recursos. Ambos criam recursos governados pelo Catálogo Unity e ambos podem publicar na Online Feature Store. Em geral, as Feature Views são recomendadas para a maioria dos novos casos, embora as feature tables sejam as mais adequadas para cargas de trabalho flexíveis e em lote em múltiplas etapas.

Strategy Mais adequado para Como funciona
Visualizações de Recursos (recomendado) A maioria dos novos projetos, agregações com janelas de tempo e recursos de streaming. Defina características declarativamente como objetos do Catálogo Feature Unity. O Databricks cria e gerencia os pipelines de funcionalidades. Você pode experimentar características definidas localmente em um notebook antes de registrá-las e materializar pipelines de características. As Visualizações de Funcionalidades em Stream suportam dados frescos de recursos em menos de segundo com gravações diretas do modo em tempo real para a Online Feature Store.
Tabelas de recursos Recursos que você calcula usando Lakeflow ou Spark Declarative Pipelines, e cargas de trabalho que precisam de Delta Sharing, uma loja online de terceiros ou um caminho de autoria disponível apenas para GA. Escreva valores de características em uma tabela Delta no Unity Catalog que tenha uma chave primária. Você é dono do pipeline que preenche e atualiza a tabela.

Desenvolver funcionalidades

Característica Description
Visualizações de Destaque Defina e calcule características declarativamente usando Visualizações de Características, incluindo agregações com janelas de tempo e recursos de streaming.
Visualizações de Recursos do Materialize Visualizações de Recursos Materializáveis para treinamento offline ou atendimento online.
Tabelas de recursos no Catálogo do Unity Crie e trabalhe com tabelas de funcionalidades.

Descobrir e compartilhar recursos

Característica Description
Explorar tabelas de recursos no Catálogo do Unity Explore e gerencie tabelas de recursos usando o Gerenciador de Catálogos e a interface do usuário de recursos.
Usar marcações com tabelas de recursos e recursos no Unity Catalog Use pares de chave-valor simples para categorizar e gerenciar suas tabelas de recursos e recursos.
Explorar exibições de recursos no catálogo do Unity Navegue pelas definições de Feature View e pelo status de materialização na UI do Databricks.

Usar funcionalidades em fluxos de trabalho de treinamento

Característica Description
Treinar modelos com tabelas de recursos Use recursos para treinar modelos.
Uniões de recursos de ponto no tempo Use a precisão pontual para criar um conjunto de dados de treinamento que reflita os valores das características a partir do momento em que uma observação de rótulo foi registrada.
API Python de Engenharia de Atributos Referência da API do Python

Funcionalidades de servidor

Característica Description
Repositórios de recursos do Databricks Online Forneça dados de características para aplicativos online e modelos de machine learning em tempo real. Alimentado pelo Databricks Lakebase.
Servidor de modelos com busca automática de recursos Pesquise os valores de características automaticamente de uma loja online.
Pontos de extremidade do Feature Serving Forneça recursos para modelos e aplicativos fora do Databricks.
Computação de características sob demanda Calcular valores de características no momento da inferência.

Governança e linhagem de recursos

Característica Description
Governança e linhagem de recursos Use o Catálogo do Unity para controlar o acesso a tabelas de recursos e exibir a linhagem de uma tabela de recursos, modelo ou função.

Tutorials

Tutorial Description
Exemplo de blocos de anotações para começar Notebook básico Mostra como criar uma tabela de recursos, usá-la para treinar um modelo e executar a pontuação em lote usando a pesquisa automática de recursos. Também mostra a interface do usuário da Engenharia de Recursos para pesquisar recursos e exibir a linhagem.
Exemplo de notebook de táxi. Mostra o processo de criar recursos, atualizá-los e usá-los para treinamento de modelo e inferência em lote.
Exemplo: implantar e consultar um ponto de extremidade de serviço de recursos Tutorial e exemplo de notebook mostrando como implantar e consultar um ponto de extremidade de serviço do recurso.
Exemplo: usar recursos com aplicativos RAG estruturados Tutorial mostrando como usar tabelas online do Databricks e pontos de extremidade de serviço de recursos para aplicações RAG (Geração Aumentada de Recuperação).

Requisitos

Para usar o Databricks Feature Store, seu espaço de trabalho deve estar habilitado para o Unity Catalog. Se o workspace não estiver habilitado para o Unity Catalog, consulte Workspace Feature Store (preterido).

Tipos de dados com suporte

O Repositório de Recursos do Databricks e o Repositório de Recursos de Workspace herdado dão suporte aos seguintes tipos de dados do PySpark:

  • IntegerType
  • FloatType
  • BooleanType
  • StringType
  • DoubleType
  • LongType
  • TimestampType
  • DateType
  • ShortType
  • ArrayType
  • BinaryType [1]
  • DecimalType [1]
  • MapType [1]
  • StructType [2]

[1] há suporte para BinaryType, DecimalTypee MapType em todas as versões da Engenharia de Recursos no Catálogo do Unity e no Repositório de Recursos do Workspace v0.3.5 ou superior. [2] StructType é suportado no Feature Engineering v0.6.0 ou em versões mais recentes.

Os tipos de dados listados acima dão suporte a tipos de recursos comuns em aplicativos de machine learning. Por exemplo:

  • Você pode armazenar vetores, tensores e inserções densos como ArrayType.
  • Você pode armazenar vetores, tensores e inserções esparsos como MapType.
  • Você pode armazenar texto como StringType.

Quando publicados em repositórios online, os recursos ArrayType e MapType são armazenados no formato JSON.

A interface do Armazém de Funcionalidades exibe metadados sobre os tipos de dados de funcionalidades.

Exemplo de tipos dados complexos

Mais informações

Para saber mais sobre as melhores práticas, baixe o Guia abrangente dos repositórios de recursos.