Use o Feature Store com SDK para Python (Boto3) - Amazon SageMaker

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Use o Feature Store com SDK para Python (Boto3)

O grupo de recursos é o principal recurso da Feature Store que contém seus dados e metadados de aprendizado de máquina (ML) armazenados na Amazon SageMaker Feature Store. Um grupo de recursos é um agrupamento lógico de recursos e registros. A definição de um grupo de atributos é composta por configurações para seu armazenamento on-line e offline e uma lista de definições de atributos que são usados para descrever os valores de seus registros. As definições do atributo devem incluir um nome de identificador de registro e um nome de horário do evento. Para obter mais informações sobre conceitos de arquivo de atributos, consulte Conceitos do Feature Store.

Antes de usar um arquivo de atributos, você normalmente carrega seu conjunto de dados, executa transformações e configura seus atributos para ingestão. Esse processo tem muitas variações e depende muito dos seus dados. O código de exemplo nos tópicos a seguir se refere aos notebooks de exemplo Introdução à Feature Store e Detecção de Fraudes com a Amazon SageMaker Feature Store, respectivamente. Ambos usam o AWS SDK for Python (Boto3). Para obter mais exemplos e recursos da Feature Store, consulteRecursos da Amazon SageMaker Feature Store.

O Feature Store suporta os seguintes tipos de recursos:String, Fractional (valor de ponto flutuante de 64 IEEE bits) e Integral (Int64 - valor integral assinado de 64 bits). O tipo de padrão é definido como String. Isso significa que, se uma coluna em seu conjunto de dados não for do tipo de atributo float ou long, o padrão será String em seu arquivo de atributos.

Você pode usar um esquema para descrever as colunas e os tipos de dados dos seus dados. Você passa esse esquema para FeatureDefinitions, um parâmetro obrigatório para o FeatureGroup. Você pode usar o SDK for Python (Boto3), que tem detecção automática do tipo de dados quando você usa a função. load_feature_definitions

O comportamento padrão quando um novo registro de atributo é adicionado com uma ID de registro já existente é o seguinte. No armazenamento off-line, o novo registro será anexado. No armazenamento on-line, se o horário do evento do novo registro for menor que o horário do evento existente, nada acontecerá, mas se o horário do evento do novo registro for maior ou igual ao horário do evento existente, o registro será sobrescrito.

Ao criar um novo grupo de atributos, você pode escolher um dos seguintes formatos de tabela:

  • AWS Glue (Padrão)

  • Apache Iceberg

A ingestão de dados, especialmente durante o streaming, pode resultar em um grande número de arquivos pequenos depositados no armazenamento offline. Isso pode afetar negativamente o desempenho da consulta devido ao maior número de operações de arquivo necessárias. Para evitar possíveis problemas de desempenho, use o formato de tabela Apache Iceberg ao criar novos grupos de atributos. Com o Iceberg, você pode compactar os pequenos arquivos de dados em menos arquivos grandes na partição, resultando em consultas significativamente mais rápidas. Essa operação de compactação é simultânea e não afeta as operações contínuas de leitura e gravação no grupo de atributos. Se você escolher a opção Iceberg ao criar novos grupos de recursos, a Amazon SageMaker Feature Store criará as tabelas Iceberg usando o formato de arquivo Parquet e registrará as tabelas com o. AWS Glue Data Catalog

Importante

Observe que, para grupos de atributos no formato de tabela Iceberg, você deve especificar String como o valor do horário do evento. Se você especificar qualquer outro tipo, não poderá criar o grupo de atributos com êxito.

A seguir, listamos alguns recursos gerenciados do Feature Store disponíveis.