- Análises›
- Amazon Managed Service for Apache Flink›
- Perguntas frequentes
Perguntas frequentes sobre o Amazon Managed Service for Apache Flink
Geral
Abrir tudoCom o Amazon Managed Service for Apache Flink, é possível transformar e analisar dados de transmissão em tempo real com o Apache Flink. O Apache Flink é uma estrutura e um mecanismo de código aberto para o processamento de fluxos de dados. O Amazon Managed Service for Apache Flink reduz a complexidade de criar, gerenciar e integrar aplicações do Apache Flink com outros serviços da AWS.
O Amazon Managed Service for Apache Flink se encarrega de tudo o que é necessário para executar continuamente as aplicações de transmissão e escalar automaticamente para atender ao volume e ao throughput de dados recebidos. Com o Amazon Managed Service for Apache Flink, não há servidores a serem gerenciados nem taxa mínima ou custo de configuração, e você paga apenas pelos recursos que suas aplicações de transmissão utilizam.
-
As empresas estão ingerindo dados de forma mais rápida do que nunca por causa do crescimento intenso das fontes de dados em tempo real. Esteja você gerenciando dados de logs de aplicações Web e móveis, dados de compra de plataformas de comércio eletrônico ou dados de sensores de dispositivos IoT, com a ingestão de dados em tempo real você pode saber o que seus clientes, a organização e os negócios estão fazendo neste exato momento.
Você pode usar o Amazon Managed Service for Apache Flink em vários casos de uso para processar dados continuamente, obtendo insights em segundos ou minutos, em vez de esperar dias ou até semanas. O Amazon Managed Service for Apache Flink permite que você crie rapidamente aplicações de processamento de streams completas para análise de logs, análise de clickstream, Internet das Coisas (IoT), tecnologia de anúncios, jogos e muito mais. Os quatro casos de uso mais comuns são o ETL - streaming extract, transform and load (extração, transformação e carregamento), a geração contínua de métricas, a análise responsiva em tempo real e a consulta interativa de fluxos de dados.
ETL de transmissão
Com aplicações de ETL de transmissão, você pode limpar, aprimorar, organizar e transformar dados brutos antes de carregar seu data lake ou data warehouse em tempo real, reduzindo ou eliminando as etapas de ETL em lote. Essas aplicações podem armazenar em buffer pequenos registros em arquivos maiores antes da entrega, além de realizar associações complexas em fluxos e tabelas. Por exemplo, você pode criar um aplicativo que lê continuamente os dados do sensor de IoT armazenados no Amazon Managed Streaming for Apache Kafka (Amazon MSK), organizar os dados por tipo de sensor, remover dados duplicados, normalizar os dados de acordo com um esquema especificado e, em seguida, entregar os dados ao Amazon Simple Storage Service (Amazon S3).
Geração contínua de métricas
Com aplicações de geração contínua de métricas, você pode monitorar e compreender como está a tendência dos seus dados com o passar do tempo. Suas aplicações podem agregar dados de transmissão em informações essenciais e integrá-los com facilidade a bancos de dados de relatórios e serviços de monitoramento a fim de atender suas aplicações e usuários em tempo real. Com o Amazon Managed Service for Apache Flink, é possível usar o código Apache Flink (em Java, Scala, Python ou SQL) para gerar continuamente análises de séries temporais ao longo de janelas temporais. Por exemplo, você pode criar um placar ao vivo para um jogo para dispositivos móveis computando os melhores jogadores a cada minuto e enviando ao Amazon DynamoDB. Você também pode rastrear o tráfego para seu site ao calcular o número de visitantes únicos do site a cada cinco minutos e enviar os resultados processados para o Amazon Redshift.
Análise responsiva em tempo real
As aplicações de análise responsiva em tempo real enviam alarmes ou notificações em tempo real quando determinadas métricas atingem limites predefinidos ou, em casos mais avançados, quando a aplicação detecta anomalias usando algoritmos de machine learning (ML). Com essas aplicações, é possível responder imediatamente às alterações em seus negócios em tempo real, como prever o abandono do usuário em aplicações móveis e identificar sistemas degradados. Por exemplo, uma aplicação pode calcular a disponibilidade ou a taxa de sucesso de uma API do cliente com o passar do tempo e enviar os resultados ao Amazon CloudWatch. Você pode criar outra aplicação para procurar por eventos que atendam a determinados critérios e notificar automaticamente os clientes certos usando o Amazon Kinesis Data Streams e o Amazon Simple Notification Service (Amazon SNS).
Análise interativa de fluxos de dados
A análise interativa ajuda a transmitir a exploração de dados em tempo real. Com programas ou consultas ad hoc, é possível inspecionar fluxos do Amazon MSK ou do Amazon Kinesis Data Streams e visualizar a aparência dos dados nesses fluxos. Por exemplo, você pode visualizar como uma métrica em tempo real que calcula a média em uma janela de tempo se comporta e enviar os dados agregados a um destino de sua escolha. A análise interativa também ajuda no desenvolvimento iterativo de aplicações de processamento de fluxos. As consultas que você cria são atualizadas continuamente à medida que novos dados chegam. Com o Amazon Managed Service for Apache Flink, você pode implantar essas consultas para execução contínua com ajuste de escala automático e backups de estado duráveis habilitados.
Conceitos básicos
Abrir tudo-
Faça login no console do Amazon Managed Service for Apache Flink e crie uma nova aplicação de processamento de fluxos. Você também pode usar a AWS CLI e os AWS SDKs. Depois de criar uma aplicação, vá para o ambiente de desenvolvimento integrado de sua preferência, conecte-se à AWS e instale as bibliotecas Apache Flink de código aberto e AWS SDKs na linguagem de sua escolha. O Apache Flink é uma estrutura e um mecanismo de código aberto para o processamento de fluxos de dados e AWS SDKs. As bibliotecas extensíveis incluem mais de 25 operadores de processamento de fluxos predefinidos, como janela e agregado, e integrações com serviços da AWS, como Amazon MSK, Amazon Kinesis Data Streams, Amazon DynamoDB e Amazon Kinesis Data Firehose. Depois de criado, carregue o código para o Amazon Managed Service for Apache Flink. O serviço se encarregará de tudo o que é necessário para executar continuamente as aplicações em tempo real, inclusive escalar automaticamente para atender ao volume e ao throughput dos dados recebidos.
-
Usar o Apache Beam para criar sua aplicação do Amazon Managed Service for Apache Flink é muito semelhante a começar a usar o Apache Flink. Você pode seguir as instruções da pergunta acima. Instale todos os componentes necessários para que as aplicações sejam executadas no Apache Beam, seguindo as instruções do Guia do desenvolvedor. O Amazon Managed Service for Apache Flink oferece suporte ao SDK do Java somente quando executado no Apache Beam.
-
Você pode começar pelo console do Amazon Managed Service for Apache Flink e criar um novo caderno do Studio. Depois de iniciar o caderno, você pode abri-lo no Apache Zeppelin para escrever código imediatamente em SQL, Python ou Scala. É possível desenvolver aplicações de forma interativa usando a interface de caderno para o Amazon Kinesis Data Streams, Amazon MSK e Amazon S3 usando integrações integradas e outras fontes e destinos compatíveis com o Apache Flink com conectores personalizados. Você pode usar todos os operadores com suporte do Apache Flink no Flink SQL e na API de tabela para realizar consultas ad hoc de seus fluxos de dados e desenvolver sua aplicação de processamento de fluxos. Quando estiver pronto, você poderá criar e promover facilmente seu código para uma aplicação de processamento de transmissão em execução contínua com ajuste de escala automático e estado durável em poucas etapas.
-
O Amazon Managed Service for Apache Flink escala de maneira elástica a aplicação para acomodar o throughput de dados do fluxo de origem e da complexidade da consulta para a maioria dos cenários. Para obter informações detalhadas sobre os limites do serviço para aplicações do Apache Flink, acesse a seção de limites no Guia do desenvolvedor do Amazon Managed Service for Apache Flink.
Sim, usando os conectores do Apache Flink DataStream, as aplicações do Amazon Managed Service for Apache Flink podem usar o AWS Glue Schema Registry, um atributo sem servidor do AWS Glue. Você pode integrar o Apache Kafka, o Amazon MSK e o Amazon Kinesis Data Streams, como um coletor ou uma fonte, com suas workloads do Amazon Managed Service for Apache Flink. Visite o Guia do desenvolvedor do AWS Glue Schema Registry para começar e saber mais.
Principais conceitos
Abrir tudo- Entrada: a entrada é a fonte de streaming da aplicação. Na configuração de entrada, mapeie as fontes de streaming para fluxos de dados. Os dados fluem das fontes de dados para os fluxos de dados. Você processa dados desses fluxos de dados usando o código da aplicação, enviando dados processados para destinos ou fluxos de dados subsequentes. Adicione entradas ao código das aplicações do Apache Flink e dos cadernos do Studio e à API em aplicações do Amazon Managed Service for Apache Flink.
- Código da aplicação: o código da aplicação é uma série de operadores do Apache Flink que processam entradas e produzem saídas. Em sua forma mais simples, o código da aplicação pode ser um único operador do Apache Flink que lê um fluxo de dados associado a uma fonte de streaming e grava em outro fluxo de dados associado a uma saída. Para um caderno do Studio, isso poderia ser uma consulta simples de seleção do Flink SQL, com os resultados exibidos no contexto dentro do caderno. Você pode escrever o código Apache Flink nas linguagens compatíveis com aplicações do Amazon Managed Service for Apache Flink ou cadernos do Studio.
- Saída: você pode configurar, como opção, uma saída de aplicação para manter os dados em um destino externo. Adicione essas saídas ao código das aplicações do Amazon Managed Service for Apache Flink e dos cadernos Studio.
Uma aplicação é a entidade do Amazon Managed Service for Apache Flink com a qual você trabalha. As aplicações do Amazon Managed Service for Apache Flink leem e processam continuamente dados de transmissão em tempo real. Grave o código da aplicação em uma linguagem compatível com o Apache Flink para processar dados de transmissão recebidos e gerar a saída. Em seguida, o Amazon Managed Service for Apache Flink grava a saída em um destino configurado.
Cada aplicação consiste em três componentes principais:
-
O Amazon Managed Service for Apache Flink é compatível com aplicações criadas em Java, Scala e Python com as bibliotecas Apache Flink de código aberto e seu próprio código personalizado. O Amazon Managed Service for Apache Flink também é compatível com aplicações criadas em Java com as bibliotecas Apache Beam de código aberto e seu próprio código de cliente. O Amazon Managed Service for Apache Flink é compatível com código criado usando SQL, Python e Scala compatível com o Apache Flink.
Gerenciamento de aplicativos
Abrir tudo- Monitoramento do Amazon Managed Service para Apache Flink no Guia do desenvolvedor do Amazon Managed Service para Apache Flink.
- Monitoramento do Amazon Managed Service para Apache Flink no Guia do desenvolvedor do Amazon Managed Service para Apache Flink Studio.
A AWS fornece várias ferramentas que você pode usar para monitorar suas aplicações do Amazon Managed Service for Apache Flink, incluindo acesso ao Flink Dashboard para aplicações do Apache Flink. É possível configurar algumas dessas ferramentas para que façam o monitoramento para você. Para obter mais informações sobre como monitorar sua aplicação, explore os seguintes guias para desenvolvedores:
- Concessão de permissões no Guia do desenvolvedor do Amazon Managed Service para Apache Flink.
- Concessão de permissões no Guia do desenvolvedor do Amazon Managed Service para Apache Flink Studio.
O Amazon Managed Service for Apache Flink precisa de permissões para ler os registros de fontes de dados de transmissão que você especifica nas aplicações. O Amazon Managed Service for Apache Flink também precisa de permissões para gravar a saída das aplicações nos destinos especificados na configuração de saída dessas aplicações. É possível conceder essas permissões criando perfis do AWS Identity and Access Management (IAM) que o Amazon Managed Service for Apache Flink pode assumir. As permissões concedidas a esse perfil determinam o que o Amazon Managed Service for Apache Flink pode fazer quando o serviço assume o perfil. Para obter mais informações, consulte os seguintes guias:
O Amazon Managed Service for Apache Flink escala de maneira elástica a aplicação para acomodar o throughput de dados do fluxo de origem e a complexidade da consulta para a maioria dos cenários. O Amazon Managed Service for Apache Flink provisiona a capacidade na forma de KPUs da Amazon. Uma KPU fornece 1 vCPU e 4 GB de memória.
Para aplicações Apache Flink e cadernos do Studio, o Amazon Managed Service for Apache Flink atribui 50 GB de armazenamento de aplicações em execução por KPU que sua aplicação usa para pontos de verificação e está disponível para uso por meio de um disco temporário. O ponto de verificação é um backup atualizado de uma aplicação em execução que é usado para recuperação imediata após uma interrupção da aplicação. Você também pode controlar a execução paralela do Amazon Managed Service for Apache Flink para tarefas de aplicações do Apache Flink (como ler de uma fonte ou executar um operador) usando os parâmetros Parallelism e ParallelismPerKPU na API. O parâmetro Parallelism define o número de instâncias simultâneas de uma tarefa. Todos os operadores, fontes e coletores executam com um paralelismo definido no valor de 1, por padrão. O parâmetro Parallelism per KPU define a quantidade do número de tarefas paralelas que podem ser agendadas por KPU da aplicação, definido no valor de 1, por padrão. Para obter mais informações, consulte Scaling no Guia do desenvolvedor do Amazon Managed Service for Apache Flink.
Para obter informações sobre as melhores práticas para o Apache Flink, consulte a seção Melhores práticas do Guia do desenvolvedor do Amazon Managed Service para Apache Flink. A seção abrange as práticas recomendadas para lidar com tolerância a falhas, performance, registro em log, codificação e muito mais.
Para obter informações sobre as práticas recomendadas do Amazon Managed Service for Apache Flink Studio, consulte a seção Best Practices do Guia do desenvolvedor do Amazon Managed Service for Apache Flink Studio. Além das práticas recomendadas, a seção contém exemplos para aplicações SQL, Python e Scala, requisitos para implantar seu código como uma aplicação de processamento de fluxo em execução contínua, performance, registro em log e muito mais.
Sim. É possível acessar os recursos subjacentes de uma Amazon VPC. Você pode aprender a configurar seu aplicativo para acesso à VPC na seção Usando uma Amazon VPC do Guia do desenvolvedor do Amazon Managed Service for Apache Flink.
-
Se várias sub-redes forem especificadas, todas elas deverão estar na mesma VPC. Você pode se conectar a outras VPCs usando o emparelhamento de VPCs.
As aplicações do Amazon Managed Service for Apache Flink e os cadernos do Amazon Managed Service for Apache Flink Studio configurados para acessar recursos em determinada VPC não têm acesso à Internet como parte da configuração padrão. Você pode aprender a configurar o acesso à Internet para seu aplicativo na seção Acesso à Internet e a serviços do Guia do desenvolvedor do Amazon Managed Service para Apache Flink.
Preço e faturamento
Abrir tudoCom o Amazon Managed Service for Apache Flink, você paga somente pelo que usar. Não há recursos para provisionar ou custos iniciais associados ao Amazon Managed Service for Apache Flink.
É cobrada uma taxa por hora com base no número de KPUs usadas para executar a aplicação de transmissão. Uma KPU única é uma unidade de capacidade de processamento de fluxos composta por 1 vCPU e 4 GB de memória. O Amazon Managed Service for Apache Flink escala automaticamente o número de KPUs necessárias para sua aplicação de processamento de fluxo, já que as demandas de memória e de computação variam em resposta à complexidade de processamento e ao throughput de dados de transmissão processados.
Para aplicações do Apache Flink e do Apache Beam, você paga por uma KPU única adicional por aplicação para orquestração de aplicações. As aplicações do Apache Flink e do Apache Beam também são cobradas pelo armazenamento de aplicações em execução e pelos backups de aplicações duráveis. O armazenamento de aplicações em execução é usado pelos recursos de processamento com estado no Amazon Managed Service for Apache Flink e é cobrado por GB/mês. Os backups de aplicações duráveis são opcionais, cobrados por GB/mês e oferecem um ponto de recuperação do ponto anterior no tempo para aplicações.
No Amazon Managed Service for Apache Flink Studio, no modo de desenvolvimento ou interativo, você paga uma KPU adicional para orquestração de aplicações e 1 KPU para desenvolvimento interativo. Você também paga pela execução do armazenamento da aplicação. Você não paga por backups de aplicações duráveis.
Para obter mais informações sobre preços, consulte a página de preços do Amazon Managed Service para Apache Flink.
Para aplicações do Apache Flink e do Apache Beam, será cobrado um mínimo de 2 KPUs e o armazenamento de aplicação em execução de 50 GB, caso a aplicação do Amazon Managed Service for Apache Flink esteja em execução.
Para cadernos do Amazon Managed Service for Apache Flink, você pagará no mínimo por 3 KPUs e 50 GB de armazenamento de aplicação em execução, se a aplicação estiver em execução.
-
O Amazon Managed Service for Apache Flink é uma solução de processamento de fluxos gerenciada, que independe da origem de transmissão de onde lê dados e dos destinos nos quais grava os dados processados. A cobrança será realizada de forma independente pelos serviços de leitura e gravação na aplicação.
-
Não, o Amazon Managed Service for Apache Flink não está disponível atualmente no nível gratuito da AWS.
Desenvolver aplicações do Apache Flink
Abrir tudoO Apache Flink é uma estrutura e mecanismo de código aberto para processamento de dados em stream e em lote. Ele facilita a criação de aplicações de transmissão porque fornece operadores robustos e resolve os principais problemas de transmissão, como o processamento duplicado. O Apache Flink fornece distribuição de dados, comunicação e tolerância a falhas para computação distribuída em fluxos de dados.
Você pode começar baixando as bibliotecas de código aberto que incluem o AWS SDK, o Apache Flink e os conectores de serviços da AWS. Obtenha instruções sobre como baixar as bibliotecas e criar seu primeiro aplicativo no Guia do desenvolvedor do Amazon Managed Service para Apache Flink.
Você escreve o código do Apache Flink usando streams de dados e operadores de stream. Os streams de dados da aplicação são a estrutura de dados que são executadas durante o processamento em relação ao uso do seu código. Os dados fluem continuamente das origens para os fluxos de dados da aplicação. Um ou mais operadores de fluxo são usados para definir seu processamento nos fluxos de dados da aplicação, incluindo transformação, partição, agregação, associação e janelas. Os fluxos de dados e operadores podem ser conectados em cadeias seriais e paralelas. Veja abaixo um pequeno exemplo usando um pseudocódigo abaixo.
DataStream <GameEvent> rawEvents = env.addSource(
New KinesisStreamSource(“input_events”));
DataStream <UserPerLevel> gameStream =
rawEvents.map(event - > new UserPerLevel(event.gameMetadata.gameId,
event.gameMetadata.levelId,event.userId));
gameStream.keyBy(event -> event.gameId)
.keyBy(1)
.window(TumblingProcessingTimeWindows.of(Time.minutes(1)))
.apply(...) - > {...};
gameStream.addSink(new KinesisStreamSink("myGameStateStream"));
Os operadores usam um fluxo de dados do aplicativo como entrada e enviam dados processados para um fluxo de dados do aplicativo como saída. Os operadores podem ser conectados para criar aplicações com várias etapas e não exigem conhecimento avançado de sistemas distribuídos para implementação e operação.
O Amazon Managed Service for Apache Flink oferece suporte a todos os operadores do Apache Flink que podem ser usados para resolver uma grande variedade de casos de uso, como map, KeyBy, agregações, janelas, junções e muito mais. Por exemplo, o operador de mapas permite executar um processamento arbitrário, pegando um elemento de um fluxo de dados de entrada e produzindo outro elemento. O KeyBy organiza logicamente os dados usando uma chave específica para que os pontos de dados semelhantes sejam processados juntos. As agregações executam o processamento em várias chaves, como sum, min e max. O Window Join junta dois fluxos de dados em uma chave e janela específicas.
Será possível criar operadores personalizados se eles não atenderem às suas necessidades. Encontre mais exemplos na seção de operadores do Guia do desenvolvedor do Amazon Managed Service for Apache Flink. Você pode encontrar uma lista completa dos operadores do Apache Flink na documentação do Apache Flink.
- Fontes de dados de transmissão: Amazon Managed Streaming for Apache Kafka (Amazon MSK), Amazon Kinesis Data Streams Destinos ou coletores: Amazon Kinesis Data Streams
- Amazon Kinesis Data Firehose, Amazon DynamoDB, Amazon Elasticsearch Service e Simple Storage Service (Amazon S3) (por meio de integrações do coletor de arquivos)
Você pode configurar integrações pré-criadas fornecidas pelo Apache Flink com o mínimo de código ou criar sua própria integração para se conectar a praticamente qualquer fonte de dados. As bibliotecas de código aberto baseadas no Apache Flink oferecem suporte a fontes e destinos de transmissão, ou coletores, para processar a entrega de dados. Isso também inclui suporte a aprimoramento de dados por meio de conectores assíncronos de E/S. Alguns desses conectores incluem o seguinte:
Sim. Você pode usar as aplicações do Amazon Managed Service for Apache Flink para replicar dados entre o Amazon Kinesis Data Streams, Amazon MSK e outros sistemas. Um exemplo fornecido em nossa documentação demonstra como ler um tópico do Amazon MSK e escrever em outro.
Você pode adicionar uma origem ou um destino à sua aplicação tendo como base um conjunto de primitivos que permitem ler e gravar arquivos, diretórios, soquetes ou qualquer item que você possa acessar pela Internet. O Apache Flink fornece essas primitivas para fontes de dados e coletores de dados. Os primitivos vêm com configurações como a capacidade para ler e gravar dados continuamente ou de uma única vez, de forma assíncrona ou sincronizada, e muito mais. Por exemplo, você pode configurar uma aplicação para ler continuamente do Amazon S3 ao estender a integração existente de origens baseadas em arquivos.
As aplicações do Apache Flink no Amazon Managed Service for Apache Flink usarão um modelo de entrega “exatamente uma vez” se uma aplicação for criada usando operadores idempotentes, incluindo fontes e coletores. Isso significa que os dados processados afetarão os resultados posteriores somente uma vez.
Por padrão, as aplicações do Amazon Managed Service for Apache Flink usam a semântica exatamente uma vez do Apache Flink. A aplicação será compatível com a semântica de processamento exatamente uma vez se você criar suas aplicações usando fontes, operadores e coletores que utilizam a semântica exatamente uma vez do Apache Flink.
-
Sim. As aplicações do Amazon Managed Service for Apache Flink fornecem à sua aplicação 50 GB de armazenamento de aplicações em execução por KPU. O Amazon Managed Service for Apache Flink escala o armazenamento com sua aplicação. A execução do armazenamento de aplicações é usada para salvar o estado da aplicação por meio da utilização de pontos de verificação. Isso também é acessível ao código da aplicação para usar como disco temporário para armazenamento em cache de dados ou qualquer outra finalidade. O Amazon Managed Service for Apache Flink pode remover os dados do armazenamento de aplicações em execução não salvos por meio dos pontos de verificação (por exemplo, operadores, fontes e coletores) a qualquer momento. Todos os dados armazenados no armazenamento de aplicações em execução são criptografados em repouso.
O Amazon Managed Service for Apache Flink faz backup automático do estado de sua aplicação em execução usando pontos de verificação e snapshots. Os pontos de verificação salvam o estado atual da aplicação e permitem que o Amazon Managed Service for Apache Flink para aplicações do Apache Flink recupere a posição da aplicação a fim de fornecer a mesma semântica de uma execução sem falhas. Os pontos de verificação usam o armazenamento de aplicações em execução. Os pontos de verificação para aplicativos Apache Flink são fornecidos por meio da funcionalidade de ponto de verificação do Apache Flink. Os snapshots salvam um ponto de recuperação para um ponto no tempo para aplicações e usam backups de aplicações duráveis. Os snapshots são análogos aos pontos de salvamento do Flink.
-
Com snapshots, você pode criar e restaurar sua aplicação para um ponto no tempo. É possível manter o estado anterior da aplicação e reverter a aplicação a qualquer momento por causa disso. Você controla quantos snapshots tem a qualquer momento, de zero a milhares de snapshots. Os snapshots usam backups duráveis de aplicações, e o Amazon Managed Service for Apache Flink cobra você com base no tamanho deles. O Amazon Managed Service for Apache Flink criptografa os dados salvos em snapshots por padrão. Você pode excluir snapshots individuais pela API ou todos os snapshots ao excluir a aplicação.
Para saber mais sobre as versões compatíveis do Apache Flink, visite a página de notas de lançamento do Amazon Managed Service para Apache Flink. A página também inclui as versões do Apache Beam, Java, Scala, Python e AWS SDKs compatíveis com o Amazon Managed Service for Apache Flink.
Sim, o Amazon Managed Service for Apache Flink oferece suporte a aplicativos de streaming criados usando o Apache Beam. Você pode criar aplicações de transmissão do Apache Beam no Java e executá-las em outros mecanismos e serviços, incluindo o uso do Apache Flink no Amazon Managed Service for Apache Flink. Você pode encontrar informações sobre as versões compatíveis do Apache Flink e do Apache Beam no Guia do desenvolvedor do Amazon Managed Service para Apache Flink.
Desenvolver aplicações do Amazon Managed Service for Apache Flink em um caderno gerenciado
Abrir tudoVocê pode começar com os consoles do Amazon Managed Service for Apache Flink Studio, Amazon Kinesis Data Streams ou Amazon MSK em poucas etapas para iniciar um caderno sem servidor para consultar imediatamente fluxos de dados e realizar data analytics interativas.
Análise de dados interativa: você pode escrever código no notebook em SQL, Python ou Scala para interagir com seus dados de streaming, com tempos de resposta de consulta em segundos. Você pode usar visualizações integradas para explorar os dados, visualizar insights em tempo real sobre seus dados de transmissão de dentro de seu caderno e desenvolver facilmente aplicações de processamento de fluxos com o Apache Flink.
Assim que seu código estiver pronto para ser executado como uma aplicação de produção, você poderá fazer a transição com uma única etapa para uma aplicação de processamento de fluxos que processa gigabytes de dados por segundo, sem servidores.
Aplicativo de processamento de stream: quando estiver pronto para promover seu código para produção, você pode criar seu código clicando em “Implantar como aplicativo de processamento de stream” na interface do notebook ou emitir um único comando na CLI. O Studio cuida de todo o gerenciamento de infraestrutura necessário para que você execute sua aplicação de processamento de fluxos em escala, com ajuste de escala automático e estado durável habilitados, assim como em uma aplicação do Amazon Managed Service for Apache Flink.
-
Você pode gravar o código no bloco de anotações em sua linguagem preferida de SQL, Python ou Scala usando a API de tabela do Apache Flink. A API Table é uma abstração de alto nível e uma API relacional que é compatível com um superconjunto de recursos de SQL. Ele oferece operações bem conhecidas, como selecionar, filtrar, juntar, agrupar por, agregar, entre outras, junto com conceitos específicos de transmissão, como janelas. Use % para especificar a linguagem a ser usada em uma seção do caderno e alternar entre as linguagens. Os intérpretes são plug-ins do Apache Zeppelin para que você possa especificar uma linguagem ou mecanismo de processamento de dados para cada seção do caderno. Você também pode criar funções definidas pelo usuário e referenciá-las para melhorar a funcionalidade do código.
- Verificar e filtrar (SELECT, WHERE)
- Agregações (GROUP BY, GROUP BY WINDOW, HAVING)
- Conjunto (UNION, UNIONALL, INTERSECT, IN, EXISTS)
- Ordenar (ORDER BY, LIMIT)
- Junções (INNER, OUTER: janela cronológica; BETWEEN, AND: junção com tabelas temporais, tabelas que rastreiam as alterações ao longo do tempo)
- Top-N
- Eliminação de duplicação
- Reconhecimento de padrões
Você pode realizar operações SQL como estas:
Algumas dessas consultas, como GROUP BY, OUTER JOIN e Top-N são atualizações de resultados para dados de transmissão, o que significa que os resultados são atualizados continuamente à medida que os dados de transmissão são processados. Outras instruções DDL, como CREATE, ALTER e DROP, também são compatíveis. Para obter uma lista completa de consultas e exemplos, consulte a documentação de consultas do Apache Flink.
A API de tabela do Apache Flink oferece suporte a Python e Scala por meio da integração de linguagem usando strings in Python e expressões em Scala. As operações compatíveis são muito semelhantes às operações SQL compatíveis, incluindo selecionar, ordenar, agrupar, juntar, filtrar e criar janelas. Uma lista completa de operações e amostras está incluída em nosso guia do desenvolvedor.
Para saber mais sobre as versões compatíveis do Apache Flink, visite a página de notas de lançamento do Amazon Managed Service para Apache Flink. A página também inclui as versões do Apache Zeppelin, Apache Beam, Java, Scala, Python e AWS SDKs compatíveis com o Amazon Managed Service for Apache Flink.
- Fontes de dados: Amazon Managed Streaming for Apache Kafka (Amazon MSK), Amazon Kinesis Data Streams, Amazon S3
- Destinos ou depósitos: Amazon MSK, Amazon Kinesis Data Streams e Amazon S3
-
É possível configurar integrações adicionais com mais algumas etapas e linhas de código do Apache Flink (Python, Scala ou Java) para definir conexões com todas as integrações compatíveis com o Apache Flink. Isso inclui destinos como o Amazon OpenSearch Service, Amazon ElastiCache para Redis, Amazon Aurora, Amazon Redshift, Amazon DynamoDB, Amazon Keyspaces e muito mais. Você pode anexar executáveis para esses conectores personalizados ao criar ou configurar sua aplicação do Amazon Managed Service for Apache Flink Studio.
Acordo de Nível de Serviço
Abrir tudo-
Nosso acordo de serviço (SLA) garante uma porcentagem de disponibilidade mensal de pelo menos 99,9% para o Amazon Managed Service for Apache Flink.
Você se qualificará para um crédito de serviço do SLA para o Amazon Managed Service for Apache Flink nos termos do SLA do Amazon Managed Service for Apache Flink se mais de uma zona de disponibilidade na qual você está executando uma tarefa, dentro da mesma região da AWS, tiver uma porcentagem de disponibilidade mensal inferior a 99,9% durante qualquer ciclo de cobrança mensal. Para obter detalhes completos sobre todos os termos e condições do SLA, bem como detalhes sobre como enviar uma reclamação, visite a página de detalhes do SLA do Amazon Managed Service para Apache Flink.
Você encontrou o que estava procurando hoje?
Informe-nos para que possamos melhorar a qualidade do conteúdo em nossas páginas