Usar Machine Learning (ML) com o Amazon Athena - Amazon Athena

Usar Machine Learning (ML) com o Amazon Athena

O Machine Learning (ML) com Amazon Athena permite que você use o Athena para escrever instruções SQL que executam inferências de Machine Learning (ML) por meio do Amazon SageMaker. Esse recurso simplifica o acesso a modelos de ML para análise de dados, eliminando a necessidade de usar métodos de programação complexos para executar inferências.

Para usar ML com Athena, você define uma função ML com Athena usando a cláusula USING EXTERNAL FUNCTION. A função aponta para o endpoint do modelo do SageMaker que você deseja usar e especifica os nomes das variáveis e os tipos de dados para transmitir ao modelo. As cláusulas subsequentes na consulta fazem referência à função para passar os valores para o modelo. O modelo executa inferências com base nos valores que a consulta passa e retorna os resultados da inferência. Para obter mais informações sobre o SageMaker e como os endpoints dele funcionam, consulte o Guia do desenvolvedor do Amazon SageMaker.

Para ver um exemplo que usa ML com inferência do Athena e do SageMaker para detectar um valor anômalo em um conjunto de resultados, consulte o artigo no Blog de Big Data da AWS: Detectar valores anômalos invocando a função de inferência de machine learning do Amazon Athena (em inglês).

Considerações e limitações

  • Regiões disponíveis: o recurso de ML do Athena é um recurso das Regiões da AWS compatível para a versão 2 ou posteriores do mecanismo do Athena.

  • O endpoint do modelo do SageMaker deve aceitar e retornar text/csv: para obter mais informações sobre formatos de dados, consulte Common data formats for inference (Formatos de dados comuns para inferência) no Guia do desenvolvedor do Amazon SageMaker.

  • O Athena não envia cabeçalhos CSV: se seu endpoint do SageMaker for text/csv, o manipulador de entrada não deverá presumir que a primeira linha da entrada seja um cabeçalho CSV. Como o Athena não envia cabeçalhos CSV, a saída retornada ao Athena conterá uma linha a menos do que o esperado pelo Athena e causará um erro.

  • Escalabilidade do endpoint do SageMaker: garanta que a escala do endpoint do modelo do SageMaker mencionado seja aumentada na vertical o suficiente para chamadas do Athena ao endpoint. Para obter mais informações, consulte Automatically scale SageMaker models (Escalar modelos do SageMaker automaticamente) no Guia do desenvolvedor do Amazon SageMaker e CreateEndpointConfig na Referência de API do Amazon SageMaker.

  • Permissões do IAM: para executar uma consulta que especifica uma função ML com Athena, o principal do IAM que executa a consulta deve ter permissão para executar a ação sagemaker:InvokeEndpoint no endpoint do modelo do SageMaker mencionado. Para ter mais informações, consulte Permitir acesso a ML com o Athena.

  • Não é possível usar as funções ML com Athena diretamente nas cláusulas GROUP BY