Crie e configure projetos do FeatureStore para conectar fontes de dados offline e online. Cada projeto é isolado, mas as tabelas dentro de um mesmo projeto são compartilhadas.
Pré-requisitos
Crie fontes de dados offline e armazenamentos online. Para mais informações, consulte Criar uma nova fonte de dados.
-
Armazene a tabela de rótulos no armazenamento offline.
As tabelas de rótulos contêm os rótulos de treinamento, incluindo o atributo alvo e o JoinId que vincula às entidades de recursos. Em cenários de recomendação, derive as tabelas de rótulos a partir de tabelas de comportamento agrupando por campos como user_id, item_id ou request_id.
Criar um projeto
Faça login no PAI console. No painel de navegação à esquerda, clique em . Selecione um workspace e clique em Enter FeatureStore.
-
Clique em Create Project e configure os parâmetros do projeto.
Principais parâmetros:
Parâmetro
Descrição
Offline Store
Selecione uma fonte de dados offline existente.
Online Store
Selecione uma fonte de dados online existente.
Offline Table Lifecycle
Ciclo de vida das tabelas que o FeatureStore cria e armazena automaticamente no MaxCompute.
Clique em Submit.
Criar uma entidade de recurso
Entidades de recurso agrupam tabelas de recursos relacionadas. Em um sistema de recomendação, defina duas entidades de recurso: usuário e item.
Clique no nome do projeto na lista de projetos de recursos.
-
Na aba Feature Entity, clique em Create Entity. Na caixa de diálogo, configure os parâmetros da entidade de recurso.
Principais parâmetros:
Parâmetro
Descrição
Feature Entity Name
Insira um nome personalizado. Para cenários de recomendação, crie duas entidades de recurso: usuário e item.
Join Id
Os Join IDs são campos nas tabelas de recursos que vinculam visualizações de recursos a entidades de recursos. Cada entidade possui um Join ID que une múltiplas visualizações de recursos.
Cada visualização de recurso tem uma chave primária (chave de índice) para buscar dados de recursos. Os nomes das chaves de índice podem diferir dos nomes dos Join IDs.
Para cenários de recomendação, defina os Join IDs como user_id e item_id (chaves primárias das tabelas de usuário e item).
Clique em Submit.
Criar uma visualização de recurso
Visualizações de recurso armazenam recursos e seus derivados. Cada visualização representa um subconjunto do conjunto completo de recursos de uma entidade e mapeia tanto tabelas de recursos offline quanto online.
Na página de detalhes do projeto, acesse a aba Feature View e clique em Create Feature View.
-
Configure os parâmetros da visualização e clique em Submit.
Crie uma visualização de recurso offline para registrar dados de recursos offline no FeatureStore.
Crie uma visualização de recurso em tempo real para registrar dados de recursos em tempo real no FeatureStore.
Criar uma visualização de recurso offline
Principais parâmetros:
|
Parâmetro |
Descrição |
|
Type |
Selecione Offline para registrar dados de recursos offline como uma visualização de recurso no FeatureStore. |
|
Write Mode |
Propriedades dos campos:
|
|
Synchronize Online Feature Table |
Ative a sincronização automática para copiar dados de recursos desta visualização para a fonte de dados online. |
|
Feature Entity |
Selecione a entidade de recurso para vincular a esta visualização. Nota
É possível vincular múltiplas visualizações de recurso a uma única entidade de recurso. |
|
Feature Lifecycle |
Defina o ciclo de vida para esta visualização de recurso. Dados em tempo real recém-gravados usam este ciclo de vida. |
Criar uma visualização de recurso em tempo real
Principais parâmetros:
|
Parâmetro |
Descrição |
|
View Name |
Siga as instruções do console para configurar este parâmetro. |
|
Type |
Selecione Real Time para registrar dados de recursos online como uma visualização de recurso no FeatureStore. |
|
Feature Entity |
Selecione a entidade de recurso para vincular a esta visualização. Nota
É possível vincular múltiplas visualizações de recurso a uma única entidade de recurso. |
|
Write Mode |
Visualizações de recurso em tempo real suportam apenas Customize Table Schema. Defina um novo esquema para esta visualização. Adicione campos manualmente e configure suas propriedades. Propriedades dos campos:
|
|
Feature Field |
Insira o número de campos necessários.
|
|
Feature Lifecycle |
Defina um valor maior que 1. O padrão é 30 dias. |
|
Advanced Settings |
Configure opções avançadas no formato JSON. |
Criar uma tabela de rótulos
Tabelas de rótulos armazenam rótulos de treinamento, incluindo atributos alvo e join IDs que vinculam a entidades de recursos. Para cenários de recomendação, gere tabelas de rótulos a partir de tabelas de comportamento usando operações como GROUP BY user_id, item_id, or request_id.
Na página de detalhes do projeto, acesse a aba Label Table e clique em Create Label Table.
Selecione a fonte de dados e o nome da tabela para a tabela de rótulos.
-
Configure os campos da tabela de rótulos e clique em Submit.
Configuração de campo
Descrição
Feature Field
Se a tabela de rótulos contiver recursos, selecione os campos correspondentes como campos de recurso.
FG Reserved Fields
Nenhuma configuração necessária no momento.
Event Time
Selecione o campo de carimbo de data/hora que registra quando o comportamento ocorreu.
Label Field
Selecione o campo de rótulo na tabela de rótulos.
Partition Field
Selecione o campo de partição na tabela de rótulos.
Criar recursos de modelo
Recursos de modelo são conjuntos de recursos usados durante o treinamento e a publicação. Após selecionar recursos para criar um modelo, o MaxCompute cria uma tabela de conjunto de treinamento para treinamento offline. Posteriormente, especifique recursos de modelo do EAS e do FeatureStore no PAI-Rec para recuperar automaticamente dados de recursos para inferência.
Na página de detalhes do projeto, acesse a aba Model Features e clique em Create Model Feature.
-
Configure os parâmetros do recurso de modelo e clique em Submit.
Parâmetro
Descrição
Select Feature
Selecione recursos da visualização offline atual e atribua aliases.
Label Table Name
Selecione o nome de uma tabela de rótulos existente.
Export Table Name
Após o envio, o FeatureStore cria uma tabela de conjunto de treinamento no MaxCompute para treinamento offline.
Visão geral de recursos em tempo real
Termos
Recursos em tempo real mudam rapidamente, muitas vezes em milissegundos. Eles são gerados ou atualizados velozmente no lado do servidor e usados imediatamente para processamento e tomada de decisão. Recursos em tempo real são geralmente construídos e consumidos em sistemas de fluxo de dados em tempo real, exigindo alta pontualidade e resposta rápida.
Esses recursos são extraídos de fluxos de dados. Sistemas de processamento de fluxo, como o Flink, calculam e geram esses dados para refletir as condições atuais. Todo o pipeline oferece alto desempenho e baixa latência. Recursos em tempo real são atualizados dinamicamente e o sistema os recalcula continuamente.
Casos de uso
Casos de uso comuns:
Publicidade online: Ajuste o conteúdo do anúncio em tempo real com base no comportamento de navegação do usuário.
Detecção de fraudes: Identifique transações financeiras suspeitas em tempo real e acione alertas ou bloqueie transações.
Recomendações personalizadas: Atualize listas de recomendação em tempo real usando atividade atual e dados históricos.
Sistemas IoT: Monitore e controle dispositivos em tempo real. Gere e utilize recursos em tempo real para responder a mudanças ambientais.
Recursos em tempo real em sistemas de recomendação e publicidade
Processo de gravação de recursos em tempo real
Após criar uma visualização de recurso em tempo real no FeatureStore, o sistema cria automaticamente uma tabela correspondente no mecanismo de dados online para armazenar e servir dados de recursos em tempo real. Ao usar fontes de dados como FeatureDB, TableStore ou Hologres, seu backend se conecta ao Alibaba Cloud DataHub. O DataHub encaminha os dados para o Flink. O Flink processa e computa recursos em tempo real e grava os resultados na tabela da fonte de dados online. Encontre o nome exato da tabela na página de detalhes da visualização de recurso em tempo real.
Leitura de recursos online
Ao utilizar o EasyRec Processor, o SDK C++ integrado do FeatureStore analisa o nome do recurso do modelo (fs_model) para identificar recursos em tempo real e lê-los automaticamente. Ao usar o SDK Go ou Java do FeatureStore, configure a leitura de recursos conforme descrito na documentação do SDK.
Exportação de amostras offline
O FeatureStore une automaticamente as tabelas no mecanismo de dados offline que correspondem a uma visualização de recurso e exporta os resultados. Para visualizações de recursos em tempo real, o FeatureDB grava automaticamente dados no modo online na tabela offline do mecanismo de dados offline. Se não estiver usando o FeatureDB, crie uma tarefa para gravar dados na tabela offline do mecanismo de dados offline. Alternativamente, use o algoritmo de recomendação no PAI-Rec para gerar dados simulados em tempo real offline, que servem como source de dados para a tabela offline da visualização de recurso em tempo real correspondente.
Visualizações de recursos em tempo real no FeatureStore
Fluxo de trabalho da visualização de recurso em tempo real
As visualizações de recursos em tempo real no FeatureStore lidam com recursos que mudam em tempo real. Elas usam DataHub e Flink para gravar recursos no armazenamento online. Em seguida, o EasyRec Processor consulta recursos periodicamente, ou os SDKs do FeatureStore os leem diretamente, permitindo que serviços downstream detectem mudanças de recursos no nível de milissegundos.
Operação de exportação
Selecione múltiplas visualizações de recursos em tempo real e offline para criar recursos de modelo. Após criar os recursos de modelo, exporte-os. O FeatureStore suporta exportação automática. A origem da tabela offline para uma visualização de recurso em tempo real depende da sua configuração:
|
Fonte de dados online |
FeatureDB |
Hologres/TableStore |
|
|
Mecanismo de recomendação |
Ambos |
PAI-REC (usar personalização de algoritmo de recomendação) |
Outro |
|
Método de exportação |
Exportar diretamente usando o FeatureStore. |
Importar dados simulados da personalização do algoritmo de recomendação para a tabela offline da visualização de recurso em tempo real e exportar usando o FeatureStore. |
Exportar manualmente dados da tabela offline da visualização de recurso em tempo real e exportar usando o FeatureStore. |
Operação de sincronização
Sincronize dados de duas maneiras:
Grave usando SDKs. Para mais informações, consulte Referência do SDK do FeatureStore.
Referências
Após configurar um projeto do FeatureStore, aprenda como utilizá-lo. Para mais informações, consulte Usar o FeatureStore para gerenciar recursos em um sistema de recomendação.