Comece a usar a AWS gratuitamente

Criar uma conta gratuita
Ou faça login no console

O nível gratuito da AWS inclui 750 horas de Nó de cache micro com o Amazon ElastiCache.

Consulte os detalhes do nível gratuito da AWS »

P: O que é o AWS Data Pipeline?

O AWS Data Pipeline é um web service que facilita o agendamento de atividades regulares de movimentação e processamento de dados na nuvem AWS. O AWS Data Pipeline se integra com sistemas de armazenamento de dados locais e na nuvem, a fim de permitir que desenvolvedores utilizem seus dados quando precisarem deles, onde quiserem e no formato necessário. O AWS Data Pipeline permite que você defina rapidamente uma cadeia dependente de atividades de processamento de dados predefinidas ou personalizadas, destinos e fontes de dados chamada de pipeline. Com base em um agendamento que você definir, seu pipeline realizará regularmente atividades de processamento, como cópia de dados distribuídos, transformações SQL, aplicativos MapReduce ou scripts personalizados em relação a destinos, como Amazon S3, Amazon RDS ou Amazon DynamoDB. Ao executar a lógica de agendamento, nova tentativa e falha desses fluxos de trabalho como um serviço altamente escalável e totalmente gerenciado, o Data Pipeline garante a robustez e a alta disponibilidade dos seus pipelines.

P: O que pode ser feito com o AWS Data Pipeline?

Usando o AWS Data Pipeline, você pode provisionar, de forma rápida e fácil, pipelines que eliminam o esforço de desenvolvimento e manutenção necessário para gerenciar suas operações diárias de dados, permitindo que você se concentre na geração de insights desses dados. Basta especificar as atividades de processamento, agendamento e fontes de dados exigidas para seu pipeline de dados. O AWS Data Pipeline processa a execução e o monitoramento de suas atividades de processamento em uma infraestrutura altamente confiável e tolerante a falhas. Além disso, para facilitar ainda mais o seu processo de desenvolvimento, o AWS Data Pipeline fornece atividades integradas para ações comuns como copiar dados entre Amazon S3 e o Amazon RDS, ou executar uma consulta aos dados de log do Amazon S3.

P: No que o AWS Data Pipeline difere do Amazon Simple Workflow Service?

Embora os dois serviços ofereçam rastreamento de execução, controle de novas tentativas e exceções, bem como execução de ações arbitrárias, o AWS Data Pipeline foi projetado especialmente para facilitar as etapas específicas comuns na maioria dos fluxos de trabalho orientados a dados. Por exemplo, a execução de atividades depois que os seus dados de entrada atenderem a critérios específicos de prontidão, a cópia facilitada de dados entre armazenamentos de dados distintos e a programação de transformações encadeadas. Esse foco altamente específico significa que as definições de fluxo de trabalho do Data Pipeline podem ser criadas rapidamente, sem a necessidade de conhecimento de código ou programação.

P: O que é pipeline?

Um pipeline é o recurso do AWS Data Pipeline que contém a definição da cadeia dependente de atividades de processamento de dados predefinidas ou personalizadas, destinos e fontes de dados necessárias para executar sua lógica comercial.

P: O que é nó de dados?

Um nó de dados é a representação de seus dados comerciais. Por exemplo, um nó de dados pode fazer referência a um caminho específico do Amazon S3. O AWS Data Pipeline oferece suporte a uma linguagem de expressão que facilita a referência a dados gerados regularmente. Por exemplo, você poderia especificar que o seu formato de dados do Amazon S3 é s3://example-bucket/my-logs/logdata-#{scheduledStartTime('YYYY-MM-dd-HH')}.tgz.

P: O que é uma atividade?

Uma atividade é a ação que o AWS Data Pipeline inicia em seu nome como parte de um pipeline. Atividades de exemplo seriam trabalhos EMR ou Hive, consultas SQL ou scripts da linha de comando.

P: O que é uma pré-condição?

Uma pré-condição é a verificação de prontidão que pode ser opcionalmente associada a uma atividade ou fonte de dados. Se uma fonte de dados tiver uma verificação de pré-condição, essa verificação deverá ser concluída com êxito para que quaisquer atividades que consumam a fonte de dados possam ser executadas. Se uma atividade tiver uma pré-condição, essa pré-condição deverá ser concluída com êxito para que a atividade seja executada. Isso poderá ser útil se você estiver executando uma atividade que seja dispendiosa para computar e que não deve ser executada enquanto os critérios específicos não forem atendidos.

P: O que é um agendamento?

Os agendamentos definem quando suas atividades de pipeline são executadas e a frequência com que o serviço espera que seus dados estejam disponíveis. Todos os agendamentos devem ter uma data de início e uma frequência; por exemplo, diariamente a partir de 1º de janeiro de 2013, às 15h. Os agendamentos podem, opcionalmente, ter uma data de término, após a qual o serviço AWS Data Pipeline não executará quaisquer atividades. Quando você associar um agendamento a uma atividade, a atividade será executada nele. Quando você associa um agendamento a uma fonte de dados, está dizendo ao serviço AWS Data Pipeline que espera que os dados sejam atualizados nesse agendamento. Por exemplo, se você define uma fonte de dados do Amazon S3 com um agendamento por hora, o serviço espera que a fonte de dados tenha novos arquivos a cada hora.



P: O AWS Data Pipeline disponibiliza atividades padrão?

Sim, o AWS Data Pipeline fornece suporte integrado para as seguintes atividades:

  • CopyActivity: Essa atividade pode copiar dados entre fontes de dados Amazon S3 e JDBC ou executar uma consulta SQL e copiar seu resultado para o Amazon S3.
  • HiveActivity: Essa atividade permite que você execute facilmente consultas Hive.
  • EMRActivity: Essa atividade permite que você execute trabalhos arbitrários do Amazon EMR.
  • ShellCommandActivity: Essa atividade permite que você execute programas ou comandos shell arbitrários do Linux.

P: O AWS Data Pipeline disponibiliza pré-condições padrão?

Sim, o AWS Data Pipeline fornece suporte integrado para as seguintes pré-condições:

  • DynamoDBDataExists: Essa pré-condição verifica a existência de dados em uma tabela do DynamoDB.
  • DynamoDBDTableExists: Essa pré-condição verifica a existência de uma tabela do DynamoDB.
  • S3KeyExists: Essa pré-condição verifica a existência de um caminho específico do AmazonS3.
  • S3PrefixExists: Essa pré-condição verifica se há, pelo menos, um arquivo em um caminho específico.
  • ShellCommandPrecondition: Essa pré-condição executa um script arbitrário em seus recursos e verifica se o script é bem-sucedido.

P: Posso disponibilizar minhas próprias atividades personalizadas?

Sim, é possível usar o ShellCommandActivity para executar a lógica de atividade arbitrária.

P: Posso disponibilizar minhas próprias pré-condições personalizadas?

Sim, é possível usar o ShellCommandPrecondition para executar a lógica de pré-condição arbitrária.

P: É possível definir vários agendamentos para diferentes atividades no mesmo pipeline?

Sim, basta definir vários objetos em seu arquivo de definição de pipeline e associar o agendamento desejado à atividade correta por meio de seu campo de agendamento. Isso permite que você defina um pipeline, no qual, por exemplo, os arquivos de log são armazenados no Amazon S3, por hora, para estimular a geração de um relatório agregado uma vez por dia.

P: O que acontece se uma atividade falha?

Uma atividade falhará se todas as tentativas de atividade retornarem com um estado de falha. Por padrão, uma atividade será tentada novamente três vezes antes de entrar em um estado de falha. Você pode aumentar o número de novas tentativas automáticas para 10; no entanto, o sistema não permite um número indefinido de novas entradas. Depois que uma atividade esgotar suas tentativas, ela acionará qualquer alarme onFailure configurado e não tentará a execução de novo, exceto se você emitir manualmente um comando de nova execução por meio do botão de console, API ou CLI.

P: Como faço para adicionar alarmes a uma atividade?

Você pode definir o acionamento de alarmes do Amazon SNS em caso de êxito, falha ou atraso da atividade. Crie um objeto de alarme e faça referência a ele nos slots onFail, onSuccess ou onLate do objeto da atividade.

P: Posso executar manualmente de novo atividades que falharam?

Sim. Você pode executar novamente um conjunto de atividades concluídas ou com falha ao redefinir o estado como SCHEDULED. Isso pode ser feito usando o botão Rerun na interface do usuário ou modificando o estado na linha de comando ou API. Isso agendará imediatamente uma nova verificação de todas as dependências de atividade, seguida pela execução de tentativas adicionais da atividade. Mediante falhas subsequentes, a atividade realizará o número original de tentativas de repetição.

P: Em quais recursos as atividades são executadas?

As atividades do AWS Data Pipeline são executadas em recursos de computação que você possui. Há dois tipos de recursos de computação: gerenciados pelo AWS Data Pipeline e autogerenciados. Os recursos gerenciados pelo AWS Data Pipeline são clusters do Amazon EMR ou instâncias do Amazon EC2 que o serviço AWS Data Pipeline executa somente quando necessário. Os recursos que você gerencia não estão mais em execução e podem ser qualquer recurso capaz de executar o Task Runner baseado em Java do AWS Data Pipeline (hardware local, uma instância do Amazon EC2 gerenciada pelo cliente etc.).

P: O AWS Data Pipeline provisiona e encerra para mim os recursos de computação gerenciados pelo AWS Data Pipeline?

Sim, os recursos de computação serão provisionados quando a primeira atividade em um horário agendado que utiliza esses recursos estiver pronta para execução, e essas instâncias serão encerradas quando a atividade final que usa os recursos tiver sido concluída com êxito ou falha.

P: É possível utilizar vários recursos de computação no mesmo pipeline?

Sim, basta definir vários objetos de cluster em seu arquivo de definição e associar o cluster a ser usado para cada atividade por meio de seu campo runsOn. Isso permite que pipelines combinem recursos locais e da AWS ou usem uma combinação de tipos de instância para suas atividades – por exemplo, talvez você queira usar uma t1.micro para executar um script rápido com economia, mas posteriormente no pipeline pode ter um trabalho do Amazon EMR que exija o poder de um cluster de instâncias maiores.

P: Posso executar atividades em recursos locais ou recursos da AWS que gerencio?

Sim. Para permitir a execução de atividades usando recursos locais, o AWS Data Pipeline fornece um pacote do Task Runner, que pode ser instalado em seus hosts locais. Esse pacote sonda continuamente o serviço AWS Data Pipeline em busca de trabalho a ser realizado. Quando for o momento de executar uma atividade específica em seus recursos locais, por exemplo, executar um procedimento armazenado de banco de dados ou um dump do banco de dados, o AWS Data Pipeline emitirá o comando adequado para o Task Runner. Para garantir a alta disponibilidade das suas atividades de pipeline, você pode opcionalmente atribuir vários Task Runners para sondar um trabalho específico. Dessa forma, se um Task Runner se tornar indisponível, os outros simplesmente assumirão o trabalho dele.

P: Como faço para instalar um Task Runner em meus hosts locais?

Você pode instalar o pacote do Task Runner em seus hosts locais usando as seguintes etapas:

  1. Faça download do pacote do AWS Task Runner.
  2. Crie um arquivo de configuração que inclua suas credenciais da AWS.
  3. Inicie o agente Task Runner por meio do seguinte comando:
    java -jar TaskRunner-1.0.jar --config ~/credentials.json --workerGroup=[myWorkerGroup]
  4. Ao estabelecer atividades, defina a atividade para ser executada em [myWorkerGroup], a fim de enviá-la para os hosts instalados previamente.

P: Como posso começar a usar o AWS Data Pipeline?

Para começar a usar o AWS Data Pipeline, basta acessar o AWS Management Console e ir para a guia AWS Data Pipeline. A partir daí, você pode criar um pipeline usando um editor gráfico simples.

P: O que pode ser feito com o AWS Data Pipeline?

Com o AWS Data Pipeline, você pode agendar e gerenciar trabalhos de processamento de dados periódicos. Você pode usar isso para substituir sistemas simples que são atualmente gerenciados por soluções frágeis baseadas em cron ou pode usá-lo para criar trabalhos de processamento de dados complexos e de várias fases.

P: Há exemplos de pipelines que posso usar para experimentar o AWS Data Pipeline?

Sim, há pipelines de exemplo em nossa documentação. Além disso, o console tem vários modelos de pipeline que você pode usar para começar.

P: Quantos pipelines posso criar no AWS Data Pipeline?

Por padrão, sua conta pode ter 100 pipelines.

P: Há limites para o que posso colocar em um único pipeline?

Por padrão, cada pipeline criado pode ter 100 objetos.

P: Meus limites podem ser alterados?

Sim. Se você quiser aumentar seus limites, basta entrar em contato conosco.

P: Os preços incluem impostos?

Salvo indicação em contrário, nossos preços excluem impostos e taxas aplicáveis, incluindo o IVA e o imposto sobre vendas aplicável. Para clientes com endereço de pagamento no Japão, o uso da AWS está sujeito ao imposto sobre consumo japonês. Saiba mais.