Beneficios de usar Amazon EMR - Amazon EMR

Beneficios de usar Amazon EMR

El uso de Amazon EMR conlleva muchos beneficios. En esta sección se ofrece información general sobre estos beneficios y enlaces a información adicional que le ayudan a seguir explorando.

Ahorro de costos

Los precios de Amazon EMR dependen del tipo de instancia y del número de instancias de Amazon EC2 que implemente y de la región en la que lance el clúster. Los precios bajo demanda ofrecen tarifas reducidas, pero puede reducir aún más el costo mediante la adquisición de instancias reservadas o instancias de spot. Las instancias de spot pueden ofrecer ahorros significativos. En algunos casos, de solo una décima parte de los precios bajo demanda.

nota

Si utiliza Amazon S3, Amazon Kinesis o DynamoDB con el clúster de EMR, hay cargos adicionales por estos servicios que se facturan por separado de su uso de Amazon EMR.

nota

Al configurar un clúster de Amazon EMR en una subred privada, se recomienda que también configure puntos de conexión de VPC para Amazon S3. Si su clúster de EMR se encuentra en una subred privada sin puntos de conexión de VPC para Amazon S3, incurrirá en cargos adicionales de puerta de enlace de NAT asociados al tráfico de S3, ya que el tráfico entre su clúster de EMR y S3 no permanecerá dentro de su VPC.

Para obtener más información sobre las opciones de precios y los detalles, consulte Precios de Amazon EMR.

AWSIntegración de

Amazon EMR se integra con otros servicios de AWS para proporcionar capacidades y funcionalidades relacionadas con las redes, el almacenamiento, la seguridad, etc. para el clúster. La siguiente lista proporciona diversos ejemplos de esta integración:

  • Amazon EC2 para las instancias que componen los nodos del clúster

  • Amazon Virtual Private Cloud (Amazon VPC) para configurar la red virtual en la que lanzar sus instancias

  • Amazon S3 para almacenar los datos de entrada y de salida

  • Amazon CloudWatch para supervisar el rendimiento del clúster y configurar alarmas

  • AWS Identity and Access Management (IAM) para configurar los permisos

  • AWS CloudTrail para auditar solicitudes realizadas al servicio

  • AWS Data Pipeline para programar e iniciar los clústeres

  • AWS Lake Formation para descubrir, catalogar y proteger datos en un lago de datos de Amazon S3

Implementación

El clúster de EMR consta de instancias EC2, que realizan el trabajo que envía a su clúster. Al lanzar el clúster, Amazon EMR configura las instancias con las aplicaciones que elija, como Apache Hadoop o Spark. Elija el tamaño y el tipo de instancia que mejor se adapte a las necesidades de procesamiento de su clúster: procesamiento por lotes, consultas de baja latencia, streaming de datos o almacenamiento de datos de gran tamaño. Para obtener más información sobre los tipos de instancias disponibles para Amazon EMR, consulte Configuración del hardware y las redes de los clústeres.

Amazon EMR ofrece distintas formas de configurar el software en su clúster. Por ejemplo, puede instalar una versión de Amazon EMR con un conjunto seleccionado de aplicaciones que puede incluir marcos de trabajo versátiles como, por ejemplo, Hadoop y aplicaciones como Hive, Pig o Spark. También puede instalar una de las diversas distribuciones de MapR. Amazon EMR utiliza Amazon Linux, por lo que también puede instalar software en su clúster de forma manual o mediante el administrador de paquetes yum o desde el origen. Para obtener más información, consulte Configuración de software del clúster.

Escalabilidad y flexibilidad

Amazon EMR proporciona flexibilidad para aumentar o reducir el escalado del clúster a medida que cambien sus necesidades informáticas. Puede cambiar el tamaño del clúster para añadir instancias durante los picos de cargas de trabajo y eliminar instancias para controlar los costos cuando desaparezcan los picos de cargas de trabajo. Para obtener más información, consulte Cambiar manualmente el tamaño de un clúster en ejecución.

Amazon EMR también ofrece la opción de ejecutar varios grupos de instancias, para que puede utilizar instancias bajo demanda en un grupo para garantizar la potencia de procesamiento junto con las instancias de spot en otro grupo para completar los trabajos con mayor rapidez y para reducir costos. También puede combinar diversos tipos de instancias para aprovechar mejor los precios de un tipo de instancia de spot sobre otros. Para obtener más información, consulte ¿Cuándo se deben utilizar las instancias de spot?.

Además, Amazon EMR proporciona la flexibilidad necesaria para utilizar diversos sistemas de archivos para sus datos de entrada, de salida e intermedios. Por ejemplo, podría elegir el Sistema de archivos distribuido de Hadoop (HDFS), que se ejecuta en los nodos principal y secundarios del clúster para el procesamiento de datos que no es necesario almacenar más allá del ciclo de vida del clúster. Podría elegir el sistema de archivos de EMR (EMRFS) para utilizar Amazon S3 como capa de datos para aplicaciones que se ejecutan en su clúster para que pueda separar la computación y el almacenamiento, así como para conservar los datos cuando finaliza el ciclo de vida de su clúster. EMRFS ofrece el beneficio añadido de permitirle aumentar o reducir el escalado de sus necesidades de computación y almacenamiento de manera independiente. Para escalar sus necesidades de computación, puede cambiar el tamaño de su clúster y puede escalar sus necesidades de almacenamiento mediante el uso de Amazon S3. Para obtener más información, consulte Utilizar almacenamiento y sistemas de archivos.

Fiabilidad

Amazon EMR supervisa los nodos del clúster y termina y sustituye automáticamente una instancia en caso de que se produzca algún error.

Amazon EMR proporciona opciones de configuración que controlan cómo se termina el clúster: de forma automática o manual. Si configura el clúster para terminarlo de forma automática, se termina después de que se completen todos los pasos. Esto se conoce como clúster transitorio. Sin embargo, puede configurar el clúster para que se siga ejecutando una vez completado el procesamiento, para que pueda elegir terminarlo manualmente cuando ya no lo necesite. O bien, puede crear un clúster, interactuar con las aplicaciones instaladas directamente y, a continuación, terminar el clúster manualmente cuando deje de necesitarlo. Los clústeres de estos ejemplos se denominan clústeres de ejecución prolongada.

Además, puede configurar la protección de terminación para evitar que las instancias del clúster se terminen por errores o problemas durante el procesamiento. Cuando se habilita la protección de terminación, puede recuperar los datos desde instancias antes de la terminación. La configuración predeterminada de estas opciones varía en función de si lanza el clúster a través de la consola, la CLI o la API. Para obtener más información, consulte Uso de la protección de terminación.

Seguridad

Amazon EMR utiliza otros servicios de AWS, como IAM y Amazon VPC, así como características tales como los pares de claves de Amazon EC2, para ayudarle a proteger los clústeres y los datos.

IAM

Amazon EMR se integra con IAM para administrar los permisos. Puede definir permisos mediante las políticas de IAM, que se asocian a usuarios o grupos de IAM. Los permisos que defina en la política determinan las acciones que dichos usuarios o miembros del grupo pueden realizar y los recursos a los que pueden acceder. Para obtener más información, consulte Cómo funciona Amazon EMR con IAM.

Además, Amazon EMR utiliza roles de IAM para el propio servicio de Amazon EMR y el perfil de instancia de EC2 para las instancias. Estos roles conceden permisos al servicio y a las instancias para obtener acceso a otros servicios de AWS en su nombre. Hay un rol predeterminado para el servicio de Amazon EMR y un rol predeterminado para el perfil de instancia de EC2. Los roles predeterminados utilizan políticas administradas de AWS, que se crean automáticamente la primera vez que lanza un clúster de EMR desde la consola y elige los permisos de forma predeterminada. También puede crear los roles de IAM predeterminados desde la AWS CLI. Si desea administrar los permisos en lugar de AWS, puede elegir roles personalizados para el servicio y el perfil de instancia. Para obtener más información, consulte Configuración de los roles de servicio de IAM de los permisos de Amazon EMR para los servicios y recursos de AWS.

Grupos de seguridad

Amazon EMR utiliza grupos de seguridad para controlar el tráfico de entrada y salida a sus instancias de EC2. Cuando se lanza el clúster, Amazon EMR utiliza un grupo de seguridad para la instancia principal y un grupo de seguridad compartido por las instancias principales/de tarea. Amazon EMR configura las reglas de grupo de seguridad para garantizar la comunicación entre las instancias del clúster. De forma opcional, puede configurar grupos de seguridad adicionales y asignarlos a sus instancias principales y secundarias o de tareas si necesita reglas más avanzadas. Para obtener más información, consulte Control del tráfico de red con grupos de seguridad.

Encryption (Cifrado)

Amazon EMR admite cifrado del cliente y del servidor opcional de Amazon S3 con EMRFS para ayudar a proteger los datos que se almacenan en Amazon S3. Con el cifrado del lado del servidor, Amazon S3 cifra sus datos después de cargarlos.

Con el cifrado del lado cliente, el proceso de cifrado y descifrado se produce en el cliente EMRFS en su clúster de EMR. Puede administrar la clave raíz para el cifrado del cliente mediante AWS Key Management Service (AWS KMS) o con su propio sistema de administración de claves.

Para obtener más información, consulte Especificación del cifrado de Amazon S3 con propiedades de EMRFS.

Amazon VPC

Amazon EMR admite el lanzamiento de clústeres en una nube privada virtual (VPC) en Amazon VPC. Una VPC es una red virtual aislada en AWS que ofrece la posibilidad de controlar aspectos avanzados de la configuración de la red y del acceso. Para obtener más información, consulte Configurar redes.

AWS CloudTrail

Amazon EMR se integra con CloudTrail para registrar información sobre las solicitudes hechas desde la cuenta de AWS o en su nombre. Con esta información, puede realizar un seguimiento de quién accede en cada momento a su clúster y la dirección IP desde la que se ha realizado la solicitud. Para obtener más información, consulte Registro de llamadas a la API de Amazon EMR en AWS CloudTrail.

Pares de claves de Amazon EC2

Para supervisar e interactuar con el clúster, puede formar una conexión segura entre el equipo remoto y el nodo principal. Puede utilizar el protocolo de red Secure Shell (SSH) para esta conexión o Kerberos para la autenticación. Si utiliza SSH, se requiere un par de claves de Amazon EC2. Para obtener más información, consulte Uso de un par de claves de EC2 para credenciales de SSH.

Supervisión

Puede utilizar las interfaces de administración de Amazon EMR y los archivos de registro para solucionar problemas de clúster como, por ejemplo, averías o errores. Amazon EMR ofrece la posibilidad de archivar los archivos de registro en Amazon S3 para que pueda almacenar registros y cuestiones de solución de problemas incluso después de que el clúster termine. Amazon EMR también proporciona una herramienta de depuración opcional en la consola de Amazon EMR para examinar los archivos de registro basada en pasos, trabajos y tareas. Para obtener más información, consulte Configurar el registro y la depuración de un clúster.

Amazon EMR se integra con CloudWatch para hacer un seguimiento de las métricas de rendimiento del clúster y los trabajos del clúster. Puede configurar alarmas basadas en diversas métricas como, por ejemplo, si el clúster está inactivo o el porcentaje de almacenamiento utilizado. Para obtener más información, consulte Monitorización de métricas de Amazon EMR con CloudWatch.

Interfaces de administración

Existen varias formas en las que puede interactuar con Amazon EMR:

  • Consola: una interfaz gráfica de usuario que puede utilizar para lanzar y administrar clústeres. Con ella, puede rellenar formularios web para especificar los detalles de los clústeres que lanzar, ver los detalles de clústeres existentes, depurar y terminar clústeres. El uso de la consola es la manera más sencilla de empezar a utilizar Amazon EMR; no se requieren conocimientos de programación. La consola está disponible online en https://console.aws.amazon.com/elasticmapreduce/home.

  • AWS Command Line Interface (AWS CLI): una aplicación cliente que se ejecuta en su equipo local para conectarse a Amazon EMR y crear y administrar clústeres. La AWS CLI contiene un conjunto de comandos con una amplia gama de características específicas de Amazon EMR. Con ella, puede escribir scripts que automatizan el proceso de lanzamiento y administración de clústeres. Si prefiere trabajar desde una línea de comandos, usar la AWS CLI es la mejor opción. Para obtener más información, consulte Amazon EMR en la Referencia de los comandos de la AWS CLI.

  • Kit de desarrollo de software (SDK): los SDK proporcionan funciones que llaman a Amazon EMR para crear y administrar clústeres. Con ellos, puede escribir aplicaciones que automatizan el proceso de creación y administración de clústeres. Utilizar el SDK es la mejor opción para ampliar o personalizar la funcionalidad de Amazon EMR. Amazon EMR está disponible actualmente en los SDK siguientes: Go, Java, .NET (C# y VB.NET), Node.js, PHP, Python y Ruby. Para obtener más información sobre estos SDK, consulte Herramientas para crear en AWS y Código de muestra y bibliotecas de Amazon EMR.

  • API de servicios web: un interfaz de bajo nivel que puede utilizar para llamar al servicio web directamente, utilizando JSON. El uso de la API es la mejor opción para crear un SDK personalizado que llame a Amazon EMR. Para obtener más información, consulte la Referencia de las API de Amazon EMR.