COPY de Amazon EMR
Puede utilizar el comando COPY para cargar datos en paralelo desde un clúster de Amazon EMR configurado para escribir archivos de texto en el sistema de archivos Hadoop Distributed File System (HDFS) del clúster como archivos de ancho fijo, archivos delimitados por caracteres, archivos CSV, archivos con formato JSON o archivos Avro.
Sintaxis
FROM 'emr://emr_cluster_id/hdfs_filepath' authorization [ optional_parameters ]
Ejemplo
En el siguiente ejemplo, se cargan datos desde un clúster de Amazon EMR.
copy sales from 'emr://j-SAMPLE2B500FC/myoutput/part-*' iam_role 'arn:aws:iam::0123456789012:role/MyRedshiftRole';
Parámetros
- FROM
-
El origen de los datos a cargar.
- 'emr://emr_cluster_id/hdfs_file_path'
-
Se trata del identificador único para el clúster de Amazon EMR y la ruta del archivo de HDFS que referencia los archivos de datos para el comando COPY. Los nombres de los archivos de datos HDFS no deben contener los caracteres comodín de asterisco (*) ni de signos de interrogación (?).
nota
El clúster de Amazon EMR debe seguir en ejecución hasta que se complete la operación COPY. Si se cambia o se elimina cualquiera de los archivos de datos HDFS antes de que se complete la operación COPY, se pueden obtener resultados inesperados o la operación COPY puede fallar.
Puede utilizar los caracteres comodín asterisco (*) y signo de puntuación (?) en el argumento hdfs_file_path para especificar que se carguen varios archivos. Por ejemplo,
'emr://j-SAMPLE2B500FC/myoutput/part*'
identifica los archivospart-0000
,part-0001
y así sucesivamente. Si la ruta de archivo no contiene caracteres comodín, se trata como si fuera un literal de cadena. Si solo especifica el nombre de una carpeta, COPY prueba cargar todos los archivos que se encuentran en ella.importante
Si utiliza caracteres comodín o solo el nombre de la carpeta, verifique que no se cargarán archivos no deseados. Por ejemplo, algunos procesos podrían escribir un archivo de registro en la carpeta de salida.
Para obtener más información, consulte Carga de datos desde Amazon EMR.
- authorization
-
El comando COPY necesita autorización para acceder a los datos de otro recurso de AWS, incluidos los recursos de Amazon S3, Amazon EMR, Amazon DynamoDB y Amazon EC2. Puede proporcionar esa autorización referenciando un rol de AWS Identity and Access Management (IAM) que esté adjunto al clúster (control de acceso basado en roles) o proporcionando las credenciales de acceso de un usuario (control de acceso basado en claves). Para mayor seguridad y flexibilidad, le recomendamos utilizar un control de acceso basado en roles de IAM. Para obtener más información, consulte Parámetros de autorización.
Parámetros admitidos
Si lo prefiere, puede especificar los siguientes parámetros con COPY de Amazon EMR:
Parámetros no admitidos
No puede utilizar los siguientes parámetros con COPY de Amazon EMR:
-
ENCRYPTED
-
MANIFEST
-
REGION
-
READRATIO
-
SSH