Comience con AWS de forma gratuita

Cree una cuenta gratuita
O inicie sesión en la Consola

La capa gratuita de AWS incluye 750 horas de nodos de caché micro con Amazon ElastiCache.

Consulte los detalles de la capa gratuita de AWS "

P: ¿Qué es AWS Data Pipeline?

AWS Data Pipeline es un servicio web que facilita la programación de actividades regulares de procesamiento y transferencia de datos en la nube de AWS. AWS Data Pipeline se integra con los sistemas de almacenamiento on-premise y con los que se basan en la nube a fin de que los desarrolladores puedan utilizar sus datos cuando los necesiten y cuando así lo deseen, siempre en el formato requerido. AWS Data Pipeline le permite definir rápidamente una cadena dependiente de orígenes y destinos de datos, así como de actividades de procesamiento de datos predefinidas o personalizadas, que se conoce como canalización. Según el programa que haya definido, la canalización ejecuta actividades de procesamiento con regularidad, como copias de datos distribuidas, transformaciones de SQL, aplicaciones de MapReduce o scripts personalizados en destinos como Amazon S3, Amazon RDS o Amazon DynamoDB. Al ejecutar la lógica de programación, reintento y error para estos flujos de trabajo como un servicio totalmente administrado y altamente escalable, Data Pipeline garantiza que las canalizaciones sean sólidas y de alta disponibilidad.

P: ¿Qué puedo hacer con AWS Data Pipeline?

Con la utilización de AWS Data Pipeline, puede aprovisionar con facilidad y rapidez canalizaciones que permiten dejar atrás el esfuerzo de desarrollo y mantenimiento que se requiere para administrar las operaciones de datos diarias, a fin de que usted pueda centrarse en generar información a partir de dichos datos. Solo tiene que especificar las fuentes de datos, el programa y las actividades de procesamiento necesarios para la canalización de los datos. AWS Data Pipeline gestiona la ejecución y monitorización de las actividades de procesamiento en una infraestructura tolerante a errores de gran confianza. Además, para facilitar aún más el proceso de desarrollo, AWS Data Pipeline integra actividades para acciones comunes como copiar datos entre Amazon S3 y Amazon RDS, o ejecutar una consulta de los datos de log de Amazon S3.

P: ¿En qué se diferencia AWS Data Pipeline de Amazon Simple Workflow Service?

Aunque ambos servicios ofrecen funciones de administración de excepciones, reintentos y seguimiento de ejecuciones, además de la capacidad de ejecutar acciones arbitrarias, AWS Data Pipeline es un servicio especialmente diseñado para facilitar pasos específicos que son comunes a una mayoría de flujos de trabajo controlados por datos – En particular, ejecutar actividades después de que los datos de entrada cumplan criterios específicos de adecuación, copiar datos con facilidad entre diferentes almacenes de datos y programar transformaciones en cadena. Este enfoque tan específico implica que puede crear con gran rapidez definiciones de flujo de trabajo sin necesidad de disponer de conocimientos de codificación ni de programación.

P: ¿Qué es una canalización?

Una canalización constituye el recurso de AWS Data Pipeline que contiene la definición de la cadena dependiente de las fuentes y los destinos de datos, así como actividades de procesamiento de datos predefinidas o personalizadas necesarias para ejecutar la lógica de negocio.

P: ¿Qué es un nodo de datos?

Un nodo de datos es una representación de los datos de su negocio. Por ejemplo, un nodo de datos puede hacer referencia a una ruta específica de Amazon S3. AWS Data Pipeline soporta un lenguaje de expresión que facilita la referencia a los datos que se generan con regularidad. Por ejemplo, podría especificar que el formato de los datos de Amazon S3 sea s3://example-bucket/my-logs/logdata-#{scheduledStartTime('YYYY-MM-DD-HH')}.tgz.

P: ¿Qué es una actividad?

Una actividad es una acción que AWS Data Pipeline inicia en su nombre como parte de una canalización. Entre las actividades de ejemplo destacan tareas de EMR o Hive, copias, consultas SQL o scripts de línea de comandos.

P: ¿Qué es una condición previa?

Una condición previa es una comprobación del estado de preparación que puede asociarse de manera opcional con una fuente de datos o una actividad. Si una fuente de datos tiene una comprobación de condición previa, dicha comprobación debe completarse satisfactoriamente antes de que se inicie cualquier actividad que utilice dicha fuente de datos. Si una actividad tiene una condición previa, la comprobación de dicha condición debe completarse satisfactoriamente antes de que se ejecute la actividad. Esto puede resultar útil si va a ejecutar una actividad que resulta costosa y que no debe ejecutarse hasta que se hayan cumplido criterios específicos.

P: ¿Qué es un programa?

Los programas definen cuándo se ejecutan las actividades de la canalización y la frecuencia con la que el servicio espera que los datos se encuentren disponibles. Todos los programas deben tener una fecha de inicio y una frecuencia; por ejemplo, todos los días a partir del 1 de enero de 2013, a las 15:00 h. De manera opcional, los programas también pueden tener una fecha de finalización, tras la cual el servicio AWS Data Pipeline no ejecutará ninguna actividad. Al asociar un programa con una actividad, la actividad se ejecuta en dicho programa. Al asociar un programa con una fuente de datos, indica al servicio AWS Data Pipeline que espera que los datos se actualicen en dicho programa. Por ejemplo, si define una fuente de datos de Amazon S3 con un programa por horas, el servicio espera que la fuente de datos contenga nuevos archivos cada hora.



P: ¿Ofrece AWS Data Pipeline alguna actividad estándar?

Sí, AWS Data Pipeline integra soporte para las siguientes actividades:

  • CopyActivity: esta actividad puede copiar datos entre Amazon S3 y las fuentes de datos JDBC, o bien ejecutar una consulta SQL y copiar el resultado en Amazon S3.
  • HiveActivity: esta actividad le permite ejecutar consultas Hive con facilidad.
  • EMRActivity: esta actividad le permite ejecutar tareas arbitrarias de Amazon EMR.
  • ShellCommandActivity: Esta actividad le permite ejecutar programas o comandos shell de Linux de forma arbitraria.

P: ¿Ofrece AWS Data Pipeline alguna condición previa estándar?

Sí, AWS Data Pipeline integra soporte para las siguientes condiciones previas:

  • DynamoDBDataExists: esta condición previa comprueba la existencia de datos en una tabla de DynamoDB.
  • DynamoDBTableExists: esta condición previa comprueba la existencia de una tabla de DynamoDB.
  • S3KeyExists: esta condición previa comprueba la existencia de una ruta específica de Amazon S3.
  • S3PrefixExists: esta condición previa comprueba al menos un archivo existente en una ruta específica.
  • ShellCommandPrecondition: esta condición previa ejecuta un script arbitrario en los recursos y comprueba que el guion se ejecute satisfactoriamente.

P: ¿Puedo suministrar actividades personalizadas?

Sí, puede utilizar ShellCommandActivity para ejecutar la lógica arbitraria de la actividad.

P: ¿Puedo aplicar condiciones previas personalizadas?

Sí, puede utilizar ShellCommandPrecondition para ejecutar la lógica arbitraria de la condición previa.

P: ¿Se pueden definir varios programas para diferentes actividades en la misma canalización?

Sí, solo tiene que definir varios objetos de programa en el archivo de definición de la canalización y asociar el programa deseado con la actividad correcta a través del campo de programa. Esto le permite definir una canalización en la que, por ejemplo, los logs se almacenan en Amazon S3 cada hora para gestionar la generación de un informe agregado una vez al día.

P: ¿Qué sucede si la actividad falla?

Una actividad falla si todos los intentos devuelven un estado de error. De forma predeterminada, una actividad se reintenta tres veces antes de registrar un estado de error grave. Puede aumentar el número de reintentos automáticos hasta 10, no obstante, el sistema no permite un número ilimitado de reintentos. Cuando una actividad agota sus intentos, activa una alarma onFailure configurada y no intentará ejecutarse de nuevo a menos que ejecute manualmente un comando de nueva ejecución a través de la CLI, el API o el botón de la consola.

P: ¿Cómo puedo añadir alarmas a una actividad?

Puede definir alarmas de Amazon SNS para notificar si una actividad se ha ejecutado satisfactoriamente, si ha fallado o si se ha retrasado. Cree un objeto de alarma y haga referencia a él en los espacios onFail, onSuccess u onLate del objeto de la actividad.

P: ¿Puedo volver a ejecutar manualmente las actividades que han fallado?

Sí. Puede volver a ejecutar un conjunto de actividades completadas o que hayan fallado si restablece su estado a SCHEDULED. Para hacerlo, puede pulsar el botón Rerun de la interfaz de usuario o modificar su estado en la línea de comando o en el API. Esto programará de inmediato una nueva comprobación de todas las dependencias de la actividad, seguida de la ejecución de intentos adicionales de la actividad. En errores posteriores, la actividad realizará el número original de reintentos.

P: ¿En qué recursos se ejecutan las actividades?

Las actividades de AWS Data Pipeline se ejecutan en los recursos informáticos que posee. Hay dos tipos de recursos informáticos: los recursos autoadministrados y los recursos administrados por AWS Data Pipeline. Los recursos administrados por AWS Data Pipeline son clústeres de Amazon EMR o instancias de Amazon EC2 que el servicio AWS Data Pipeline lanza solo cuando resultan necesarios. Los recursos administrados por el usuario se dejan de ejecutar y pueden ser todos los recursos capaces de ejecutar Task Runner basado en Java de AWS Data Pipeline (hardware on-premise, una instancia de Amazon EC2 gestionada por el cliente, etc.).

P: ¿Puede AWS Data Pipeline aprovisionar y terminar por mí los recursos informáticos administrados por AWS Data Pipeline?

Sí, los recursos informáticos se aprovisionan cuando la primera actividad programada que utiliza dichos recursos está preparada para ejecutarse, y dichas instancias se terminan cuando la actividad final que utiliza los recursos se ha completado satisfactoriamente o falla.

P: ¿Se pueden utilizar varios recursos informáticos en la misma canalización?

Sí, solo tiene que definir varios objetos de clúster en el archivo de definición y asociar el clúster que vaya a utilizar con cada actividad a través del campo runsOn. Esto permite a las canalizaciones combinar los recursos de AWS con los recursos on-premise o utilizar una combinación de tipos de instancias para sus actividades. Por ejemplo, puede utilizar una instancia t1.micro para ejecutar un script rápido de forma económica, pero después en la canalización puede tener una tarea de Amazon EMR que requiere la potencia de un clúster de instancias más grandes.

P: ¿Puedo ejecutar actividades en recursos on-premise o en los recursos de AWS que administro?

Sí. Para poder ejecutar actividades con recursos internos, AWS Data Pipeline ofrece un paquete con Task Runner que puede instalarse en los hosts on-premise. Este paquete explora constantemente el servicio AWS Data Pipeline para comprobar el trabajo que se debe ejecutar. Cuando llega el momento de ejecutar una actividad concreta en los recursos on-premise, como por ejemplo ejecutar un procedimiento almacenado en la base de datos o un volcado de base de datos, AWS Data Pipeline envía el comando adecuado a Task Runner. Para garantizar que las actividades de la canalización ofrezcan una alta disponibilidad, de manera opcional puede asignar varios Task Runner a fin de explorarlos para una tarea determinada. De esta forma, si Task Runner deja de estar disponible, los demás retoman el trabajo del otro programa.

P: ¿Cómo puedo instalar Task Runner en mis hosts on-premise?

Puede instalar el paquete de Task Runner en los hosts on-premise. Para ello, realice los siguientes pasos:

  1. Descargue el paquete de Task Runner de AWS.
  2. Cree un archivo de configuración que incluya las credenciales de AWS.
  3. Lance el agente de Task Runner a través del siguiente comando:
    java -jar TaskRunner-1.0.jar --config ~/credentials.json --workerGroup=[myWorkerGroup]
  4. Al definir actividades, configúrelas para que se ejecuten en [myWorkerGroup] a fin de enviarlas a los hosts previamente instalados.

P: ¿Cómo puedo comenzar a utilizar AWS Data Pipeline?

Para comenzar a utilizar AWS Data Pipeline, solo tiene que visitar la consola de administración de AWS y obtener acceso a la ficha AWS Data Pipeline. Desde ahí puede crear una canalización con la utilización de un editor gráfico sencillo.

P: ¿Qué puedo hacer con AWS Data Pipeline?

Con AWS Data Pipeline, puede programar y administrar tareas periódicas de procesamiento de datos. Puede utilizar este servicio para reemplazar sistemas sencillos que actualmente se administran con soluciones frágiles basadas en expresiones cron, o bien, puede utilizarlo para compilar tareas de procesamiento de datos complejas y de varias etapas.

P: ¿Hay canalizaciones de muestra que pueda utilizar para probar AWS Data Pipeline?

Sí, hay canalizaciones de muestra en nuestra documentación. Además, la consola tiene varias plantillas de canalizaciones que puede utilizar para comenzar.

P: ¿Cuántas canalizaciones puedo crear en AWS Data Pipeline?

De forma predeterminada, la cuenta de la que dispone tiene 100 canalizaciones.

P: ¿Hay límites sobre lo que puedo introducir en una única canalización?

De forma predeterminada, cada canalización creada puede contener 100 objetos.

P: ¿Se pueden modificar los límites?

Sí. Si desea aumentar sus límites, solo tiene que contactarse con nosotros.

P: ¿Los precios incluyen impuestos?

Si no se especifica lo contrario, nuestros precios no incluyen los impuestos ni gravámenes correspondientes, como el IVA y cualquier otro impuesto sobre las ventas. En el caso de los clientes con una dirección de facturación de Japón, el uso de los servicios de AWS está sujeto al impuesto de consumo nipón. Más información.