O que é o Amazon EMR Sem Servidor? - Amazon EMR

O que é o Amazon EMR Sem Servidor?

O Amazon EMR Sem Servidor é uma opção de implantação do Amazon EMR que fornece um ambiente de runtime com tecnologia sem servidor. Isso simplifica a operação de aplicações de analytics que usam as estruturas de código aberto mais recentes, como o Apache Spark e o Apache Hive. Com o EMR Sem Servidor, você não precisa configurar, otimizar, proteger ou operar clusters para executar aplicações com essas estruturas.

O EMR Sem Servidor ajuda você a evitar o provisionamento excessivo ou insuficiente de recursos em trabalhos de processamento de dados. O EMR Sem Servidor determina automaticamente os recursos de que a aplicação precisa, faz com que esses recursos processem seus trabalhos e os libera quando os trabalhos são concluídos. Em casos de uso em que as aplicações precisam de uma resposta em segundos, como análise interativa de dados, você pode pré-inicializar os recursos de que a aplicação precisa ao criá-la.

Com o EMR Sem Servidor, você continuará a obter os benefícios do Amazon EMR, como compatibilidade de código aberto, simultaneidade e performance de runtime otimizada para estruturas populares.

O EMR Sem Servidor é adequado para clientes que desejam facilidade na operação de aplicações usando estruturas de código aberto. Ele oferece inicialização rápida de trabalhos, gerenciamento automático de capacidade e controles de custos diretos.

Conceitos

Nesta seção, abordamos os termos e conceitos do EMR Sem Servidor que aparecem no Guia do usuário do EMR Sem Servidor.

Versão de lançamento

Uma versão do Amazon EMR corresponde a um conjunto de aplicações de código aberto do ecossistema de big data. Cada versão inclui diferentes aplicações, componentes e recursos de big data que você seleciona para que o EMR Sem Servidor implante e configure, de modo que eles possam executar suas aplicações. Ao criar uma aplicação, você deve especificar sua versão de lançamento. Escolha a versão de lançamento do Amazon EMR e a versão da estrutura de código aberto que deseja usar na aplicação. Para saber mais sobre versões de pré-lançamento, consulte Versões de lançamento do Amazon EMR Sem Servidor.

Aplicativo

Com o EMR Sem Servidor, você pode criar uma ou mais aplicações do EMR Sem Servidor que usam estruturas de analytics de código aberto. Para criar uma aplicação, é necessário especificar os seguintes atributos:

  • A versão de lançamento do Amazon EMR para a versão da estrutura de código aberto que você deseja usar. Para determinar sua versão de lançamento, consulte Versões de lançamento do Amazon EMR Sem Servidor.

  • O runtime específico que você deseja que a aplicação use, como o Apache Spark ou o Apache Hive.

Depois de criar uma aplicação, você pode enviar trabalhos de processamento de dados ou solicitações interativas para ela.

Cada aplicação do EMR Sem Servidor é executada em uma Amazon Virtual Private Cloud (VPC) segura, estritamente separada de outras aplicações. Além disso, você pode usar políticas do AWS Identity and Access Management (IAM) para definir quais usuários e perfis podem acessar a aplicação. Você também pode especificar limites para controlar e rastrear os custos de uso incorridos pela aplicação.

Considere criar várias aplicações quando precisar fazer o seguinte:

  • Usa diferentes estruturas de código aberto

  • Usar versões diferentes de estruturas de código aberto para diferentes casos de uso

  • Executar testes A/B ao atualizar de uma versão para outra

  • Manter ambientes lógicos separados para cenários de teste e produção

  • Fornecer ambientes lógicos separados para equipes diferentes com controles de custos e rastreamento de uso independentes

  • Separar diferentes aplicações de linha de negócios

O EMR Sem Servidor é um serviço regional que simplifica a forma como as workloads são executadas em várias zonas de disponibilidade em uma região. Para saber mais sobre como usar aplicações com o EMR Sem Servidor, consulte Como interagir e configurar uma aplicação do EMR Sem Servidor.

Execução de trabalho

A execução de um trabalho é uma solicitação enviada a uma aplicação do EMR Sem Servidor que a aplicação executa e acompanha de forma assíncrona até a conclusão. Exemplos de trabalhos incluem uma consulta do HiveQL que você envia para uma aplicação do Apache Hive ou um script de processamento de dados do PySpark que você envia para uma aplicação do Apache Spark. Ao enviar um trabalho, você deve especificar um perfil de runtime, criado no IAM, que o trabalho usa para acessar recursos da AWS, como objetos do Amazon S3. Você pode enviar várias solicitações de execução de trabalho para uma aplicação, e cada execução de trabalho pode usar um perfil de runtime diferente para acessar recursos da AWS. Uma aplicação do EMR Sem Servidor começa a executar trabalhos assim que os recebe e executa várias solicitações de trabalho simultaneamente. Para saber mais sobre como o EMR Sem Servidor executa trabalhos, consulte Execução de trabalhos.

Operadores

Uma aplicação do EMR Sem Servidor usa trabalhadores internamente para executar workloads. Os tamanhos padrão desses trabalhadores são baseados no tipo de aplicação e na versão de lançamento do Amazon EMR. Ao programar uma execução de trabalho, você pode substituir esses tamanhos.

Quando você envia um trabalho, o EMR Sem Servidor calcula os recursos que a aplicação precisa para o trabalho e agenda os trabalhadores. O EMR Sem Servidor divide as workloads em tarefas, baixa imagens, provisiona e configura trabalhadores e os desativa quando o trabalho é concluído. O EMR Sem Servidor escala automaticamente os trabalhadores com base na workload e no paralelismo necessários em cada estágio do trabalho. Esse ajuste de escala automático elimina a necessidade de estimar o número de trabalhadores que a aplicação precisa para executar as workloads.

Capacidade pré-inicializada

O EMR Sem Servidor fornece um recurso de capacidade pré-inicializada que mantém os trabalhadores inicializados e prontos para responder em segundos. Essa capacidade cria efetivamente um grupo de aquecimento de trabalhadores para uma aplicação. Para configurar esse recurso para cada aplicação, defina o parâmetro initial-capacity de uma aplicação. Quando você configura a capacidade pré-inicializada, os trabalhos podem começar imediatamente para que você possa implementar aplicações iterativas e trabalhos urgentes. Para saber mais sobre trabalhadores pré-inicializados, consulte Configuração de uma aplicação ao trabalhar com o EMR Sem Servidor.

EMR Studio

O EMR Studio é o console do usuário que você pode usar para gerenciar aplicações do EMR Sem Servidor. Se não existir um EMR Studio em sua conta quando criar sua primeira aplicação do EMR Sem Servidor, criaremos um para você automaticamente. Você pode acessar o EMR Studio no console do Amazon EMR ou ativar o acesso federado do seu provedor de identidades (IdP) por meio do IAM ou do Centro de Identidade do IAM. Ao fazer isso, os usuários podem acessar o Studio e gerenciar aplicações do EMR Sem Servidor sem acesso direto ao console do Amazon EMR. Para saber mais sobre como as aplicações do EMR Sem Servidor funcionam com o EMR Studio, consulte Criação de uma aplicação do EMR Sem Servidor usando o console do EMR Studio e Execução de trabalhos no console do EMR Studio.