HDFS
El conector de HDFS te permite insertar, eliminar, actualizar y leer datos de HDFS.
Versiones compatibles
Este conector es compatible con la versión 3.4.0 de HDFS Hadoop.
Antes de empezar
Antes de usar el conector HDFS, realiza las siguientes tareas:
- En tu proyecto de Google Cloud:
- Concede el rol de gestión de identidades y accesos roles/connectors.admin al usuario que configure el conector.
- Concede los siguientes roles de gestión de identidades y accesos a la cuenta de servicio que quieras usar para el conector:
roles/secretmanager.viewer
roles/secretmanager.secretAccessor
Una cuenta de servicio es un tipo especial de cuenta de Google diseñada para representar a un usuario no humano que necesita autenticarse y disponer de autorización para acceder a los datos de las APIs de Google. Si no tienes una cuenta de servicio, debes crearla. El conector y la cuenta de servicio deben pertenecer al mismo proyecto. Para obtener más información, consulta el artículo Crear una cuenta de servicio.
- Habilita los siguientes servicios:
secretmanager.googleapis.com
(API Secret Manager)connectors.googleapis.com
(API Connectors)
Para saber cómo habilitar servicios, consulta Habilitar servicios.
Si estos servicios o permisos no se han habilitado en tu proyecto anteriormente, se te pedirá que los habilites al configurar el conector.
Configurar el conector
Una conexión es específica de una fuente de datos. Esto significa que, si tiene muchas fuentes de datos, debe crear una conexión independiente para cada una de ellas. Para crear una conexión, sigue estos pasos:
- En la consola de Cloud, ve a la página Integration Connectors > Connections (Conectores de integración > Conexiones) y, a continuación, selecciona o crea un proyecto de Google Cloud.
- Haz clic en + CREAR NUEVA para abrir la página Crear conexión.
- En la sección Ubicación, elige la ubicación de la conexión.
- Región: selecciona una ubicación de la lista desplegable.
Para ver la lista de todas las regiones admitidas, consulta Ubicaciones.
- Haz clic en SIGUIENTE.
- Región: selecciona una ubicación de la lista desplegable.
- En la sección Detalles de la conexión, haz lo siguiente:
- Conector: seleccione HDFS en la lista desplegable de conectores disponibles.
- Versión del conector: seleccione la versión del conector en la lista desplegable de versiones disponibles.
- En el campo Connection Name (Nombre de conexión), introduce un nombre para la instancia de conexión.
Los nombres de las conexiones deben cumplir los siguientes criterios:
- Los nombres de conexión pueden contener letras, números o guiones.
- Las letras deben estar en minúsculas.
- Los nombres de conexión deben empezar por una letra y terminar por una letra o un número.
- Los nombres de conexión no pueden tener más de 49 caracteres.
- Si quiere, puede introducir una Descripción para la instancia de conexión.
- También puedes habilitar Registro en la nube y, a continuación, seleccionar un nivel de registro. De forma predeterminada, el nivel de registro es
Error
. - Cuenta de servicio: selecciona una cuenta de servicio que tenga los roles necesarios.
- Ruta: especifica la ruta de HDFS que se usará como directorio de trabajo.
- Si quieres, configura los ajustes del nodo de conexión:
- Número mínimo de nodos: introduce el número mínimo de nodos de conexión.
- Número máximo de nodos: introduce el número máximo de nodos de conexión.
Un nodo es una unidad (o réplica) de una conexión que procesa transacciones. Se necesitan más nodos para procesar más transacciones en una conexión y, a la inversa, se necesitan menos nodos para procesar menos transacciones. Para saber cómo influyen los nodos en el precio de tu conector, consulta la sección Precios de los nodos de conexión. Si no introduces ningún valor, de forma predeterminada, el número mínimo de nodos se establece en 2 (para mejorar la disponibilidad) y el máximo en 50.
- También puedes hacer clic en + AÑADIR ETIQUETA para añadir una etiqueta a la conexión en forma de par clave-valor.
- Haz clic en SIGUIENTE.
- En la sección Destinations (Destinos), introduce los detalles del host remoto (sistema backend) al que quieras conectarte.
- Tipo de destino: selecciona un Tipo de destino.
- Para especificar el nombre de host o la dirección IP de destino, selecciona Dirección de host y introduce la dirección en el campo Host 1.
- Para establecer una conexión privada, selecciona Endpoint attachment (Endpoint adjunto) y elige el adjunto que quieras de la lista Endpoint Attachment (Endpoint adjunto).
Si quieres establecer una conexión pública con tus sistemas backend con seguridad adicional, puedes configurar direcciones IP de salida estáticas para tus conexiones y, a continuación, configurar las reglas de tu cortafuegos para que solo se permitan las direcciones IP estáticas específicas.
Para introducir más destinos, haga clic en +AÑADIR DESTINO.
- Haz clic en SIGUIENTE.
- Tipo de destino: selecciona un Tipo de destino.
-
En la sección Autenticación, introduce los detalles de autenticación.
- Seleccione un Tipo de autenticación e introduzca los detalles pertinentes.
La conexión HDFS admite los siguientes tipos de autenticación:
- Nombre de usuario y contraseña
Para saber cómo configurar estos tipos de autenticación, consulta Configurar la autenticación.
- Haz clic en SIGUIENTE.
- Seleccione un Tipo de autenticación e introduzca los detalles pertinentes.
- Revisar: revisa los detalles de la conexión y la autenticación.
- Haz clic en Crear.
Configurar la autenticación
Introduce los detalles en función de la autenticación que quieras usar.
-
Nombre de usuario y contraseña
- Nombre de usuario: introduce el nombre de usuario que se usará para la conexión HDFS.
- Contraseña : introduce el secreto del gestor de secretos que contiene la contraseña asociada al nombre de usuario.
- Versión del secreto: selecciona la versión del secreto que has elegido más arriba.
Ejemplos de configuración de conexiones
En esta sección se indican los valores de ejemplo de los distintos campos que se configuran al crear la conexión.
Tipo de conexión con nombre de usuario y contraseña
Nombre del campo | Detalles |
---|---|
Ubicación | europe‑west1 |
Conector | HDFS |
Versión del conector | 1 |
Nombre de la conexión | hdfs-v24-new |
Cuenta de servicio | my-service-account@my-project.iam.gserviceaccount.com |
Número mínimo de nodos | 2 |
Número máximo de nodos | 2 |
Tipo de destino | Dirección del host |
Host | 10.128.0. |
port1 | 10000 |
Nombre de usuario | usuario1 |
Contraseña | CONTRASEÑA |
Versión de secreto | 1 |
Limitaciones del sistema
El conector HDFS puede procesar un máximo de 20 transacciones por segundo por nodo y limita las transacciones que superen este límite. De forma predeterminada, Integration Connectors asigna 2 nodos (para mejorar la disponibilidad) a una conexión.
Para obtener información sobre los límites aplicables a Integration Connectors, consulta Límites.
Usar la conexión HDFS en una integración
Una vez que hayas creado la conexión, estará disponible tanto en Apigee Integration como en Application Integration. Puedes usar la conexión en una integración a través de la tarea Conectores.
- Para saber cómo crear y usar la tarea Conectores en la integración de Apigee, consulta Tarea Conectores.
- Para saber cómo crear y usar la tarea Conectores en Application Integration, consulta Tarea Conectores.
Acciones
En esta sección se muestra cómo realizar algunas de las acciones de este conector.
Acción MakeDirectory
Esta acción crea un directorio en la ruta especificada.
Parámetros de entrada de la acción MakeDirectory
Nombre del parámetro | Tipo de datos | Obligatorio | Descripción |
---|---|---|---|
Permiso | Cadena | Falso | Permisos para crear un directorio. |
Ruta | Cadena | Verdadero | Ruta del nuevo directorio. |
Para ver un ejemplo de cómo configurar la acción MakeDirectory
, consulta Ejemplos.
Acción ListStatus
Esta acción muestra el contenido de la ruta proporcionada.
Parámetros de entrada de la acción ListStatus
Nombre del parámetro | Tipo de datos | Obligatorio | Descripción |
---|---|---|---|
Ruta | Cadena | Verdadero | La ruta del archivo. |
Para ver un ejemplo de cómo configurar la acción ListStatus
, consulta Ejemplos.
Acción GetHomeDirectory
Esta acción obtiene el directorio principal del usuario actual.
Parámetros de entrada de la acción GetHomeDirectory
Nombre del parámetro | Tipo de datos | Obligatorio | Descripción |
---|---|---|---|
connectorInputPayload | Json | Verdadero | La carga útil de entrada del conector. |
Para ver un ejemplo de cómo configurar la acción GetHomeDirectory
, consulta Ejemplos.
Acción DeleteFile
Esta acción elimina un archivo o un directorio.
Parámetros de entrada de la acción DeleteFile
Nombre del parámetro | Tipo de datos | Obligatorio | Descripción |
---|---|---|---|
Ruta | Cadena | Verdadero | La ruta del archivo. |
Recursivo | Booleano | Falso | Especifica si se deben eliminar las subcarpetas de una carpeta. |
Para ver un ejemplo de cómo configurar la acción DeleteFile
, consulta Ejemplos.
Acción GetContentSummary
Esta acción obtiene el resumen del contenido de un archivo o una carpeta.
Parámetros de entrada de la acción GetContentSummary
Nombre del parámetro | Tipo de datos | Obligatorio | Descripción |
---|---|---|---|
Ruta | Cadena | Verdadero | La ruta del archivo o la carpeta. |
Para ver un ejemplo de cómo configurar la acción GetContentSummary
, consulta Ejemplos.
Acción RenameFile
Esta acción cambia el nombre de un archivo o un directorio.
Parámetros de entrada de la acción RenameFile
Nombre del parámetro | Tipo de datos | Obligatorio | Descripción |
---|---|---|---|
ruta | Cadena | Verdadero | La ruta del archivo. |
destino | Cadena | Verdadero | Especifica el nuevo nombre y la ruta del archivo. |
Para ver un ejemplo de cómo configurar la acción RenameFile
, consulta Ejemplos.
Acción SetPermission
Esta acción define el permiso de una ruta.
Parámetros de entrada de la acción SetPermission
Nombre del parámetro | Tipo de datos | Obligatorio | Descripción |
---|---|---|---|
Ruta | Cadena | Verdadero | La ruta del archivo. |
Permiso | Cadena | Verdadero | Especifica los permisos de Unix en notación octal (base 8). |
Para ver un ejemplo de cómo configurar la acción SetPermission
, consulta Ejemplos.
Acción SetPermission
Esta acción define el permiso de una ruta.
Parámetros de entrada de la acción SetPermission
Nombre del parámetro | Tipo de datos | Obligatorio | Descripción |
---|---|---|---|
Ruta | Cadena | Verdadero | La ruta del archivo. |
Permiso | Cadena | Verdadero | Especifica los permisos de Unix en notación octal (base 8). |
Para ver un ejemplo de cómo configurar la acción SetPermission
, consulta Ejemplos.
Acción SetOwner
Esta acción define un propietario y un grupo de una ruta.
Parámetros de entrada de la acción SetOwner
Nombre del parámetro | Tipo de datos | Obligatorio | Descripción |
---|---|---|---|
Ruta | Cadena | Verdadero | La ruta del archivo. |
Propietario | Cadena | Verdadero | El nuevo propietario de la ruta. |
grupo | Cadena | Falso | Nombre del nuevo grupo. |
Para ver un ejemplo de cómo configurar la acción SetOwner
, consulta Ejemplos.
Acción UploadFile
Esta acción sube un archivo.
Parámetros de entrada de la acción UploadFile
Nombre del parámetro | Tipo de datos | Obligatorio | Descripción |
---|---|---|---|
ruta | Cadena | Verdadero | La ruta del archivo. |
Contenido | Cadena | Verdadero | El contenido del archivo subido. |
Para ver un ejemplo de cómo configurar la acción UploadFile
, consulta Ejemplos.
Acción DownloadFile
Esta acción descarga un archivo.
Parámetros de entrada de la acción DownloadFile
Nombre del parámetro | Tipo de datos | Obligatorio | Descripción |
---|---|---|---|
ruta | Cadena | Verdadero | La ruta del archivo. |
WriteToFile | Cadena | Falso | Ubicación local del archivo en el que se escribe la salida. |
Para ver un ejemplo de cómo configurar la acción DownloadFile
, consulta Ejemplos.
Acción AppendToFile
Esta acción añade un archivo.
Parámetros de entrada de la acción AppendToFile
Nombre del parámetro | Tipo de datos | Obligatorio | Descripción |
---|---|---|---|
ruta | Cadena | Verdadero | La ruta del archivo. |
Contenido | Cadena | Verdadero | El contenido que se va a añadir al archivo. |
Para ver un ejemplo de cómo configurar la acción AppendToFile
, consulta Ejemplos.
Acción GetFileChecksum
Esta acción obtiene la suma de comprobación de un archivo.
Parámetros de entrada de la acción GetFileChecksum
Nombre del parámetro | Tipo de datos | Obligatorio | Descripción |
---|---|---|---|
ruta | Cadena | Verdadero | La ruta del archivo. |
Para ver un ejemplo de cómo configurar la acción GetFileChecksum
, consulta Ejemplos.
Ejemplos de acciones
En esta sección se muestra cómo realizar algunos de los ejemplos de acciones de este conector.
Ejemplo: crear un directorio
- En el cuadro de diálogo
Configure connector task
, haz clic enActions
. - Seleccione la acción
MakeDirectory
y, a continuación, haga clic en Hecho. - En la sección Asignación de datos
Open Data Mapping Editor
y, a continuación, introduce un valor similar al siguiente en el campoInput
:{ "Path": "/user/hduser" }
Si la acción se realiza correctamente, el parámetro de respuesta connectorOutputPayload
de la tarea del conector tendrá un valor similar al siguiente:
[{ "Success": true }]
Ejemplo: obtener el directorio principal
- En el cuadro de diálogo
Configure connector task
, haz clic enActions
. - Seleccione la acción
GetHomeDirectory
y, a continuación, haga clic en Hecho. - En la sección Asignación de datos
Open Data Mapping Editor
y, a continuación, introduce un valor similar al siguiente en el campoInput
:{}
Si la acción se realiza correctamente, el parámetro de respuesta connectorOutputPayload
de la tarea del conector tendrá un valor similar al siguiente:
[{ "Path": "/user/hduser" }]
Ejemplo: eliminar un archivo
- En el cuadro de diálogo
Configure connector task
, haz clic enActions
. - Seleccione la acción
DeleteFile
y, a continuación, haga clic en Hecho. - En la sección Asignación de datos
Open Data Mapping Editor
y, a continuación, introduce un valor similar al siguiente en el campoInput
:{ "Path": "/user/hduser/testFile" }
Si la acción se realiza correctamente, el parámetro de respuesta connectorOutputPayload
de la tarea del conector tendrá un valor similar al siguiente:
[{ "Success": true }]
Ejemplo: listar el estado de un archivo
- En el cuadro de diálogo
Configure connector task
, haz clic enActions
. - Seleccione la acción
ListStatus
y, a continuación, haga clic en Hecho. - En la sección Asignación de datos
Open Data Mapping Editor
y, a continuación, introduce un valor similar al siguiente en el campoInput
:{ "path": "/user/hduser/deletefile" }
Si la acción se realiza correctamente, el parámetro de respuesta connectorOutputPayload
de la tarea del conector tendrá un valor similar al siguiente:
[{ "fileId": 16471.0, "PathSuffix": "data.txt", "owner": "hduser", "group": "supergroup", "length": 38.0, "permission": "644", "replication": 1.0, "storagePolicy": 0.0, "childrenNum": 0.0, "blockSize": 1.34217728E8, "modificationTime": "2024-08-16 16:12:01.921", "accessTime": "2024-08-16 16:12:01.888", "type": "FILE" }, { "fileId": 16469.0, "PathSuffix": "file2.txt", "owner": "hduser", "group": "supergroup", "length": 53.0, "permission": "644", "replication": 1.0, "storagePolicy": 0.0, "childrenNum": 0.0, "blockSize": 1.34217728E8, "modificationTime": "2024-08-16 16:12:01.762", "accessTime": "2024-08-16 16:12:01.447", "type": "FILE" }]
Ejemplo: obtener el resumen del contenido de un archivo
- En el cuadro de diálogo
Configure connector task
, haz clic enActions
. - Seleccione la acción
GetContentSummary
y, a continuación, haga clic en Hecho. - En la sección Asignación de datos
Open Data Mapping Editor
y, a continuación, introduce un valor similar al siguiente en el campoInput
:{ "Path": "/user/hduser/appendtofile" }
Si la acción se realiza correctamente, el parámetro de respuesta connectorOutputPayload
de la tarea del conector tendrá un valor similar al siguiente:
[{ "DirectoryCount": "1", "FileCount": "1", "Length": 52.0, "Quota": -1.0, "SpaceConsumed": 52.0, "SpaceQuota": -1.0, "ecpolicy": "", "snapshotdirectorycount": "0", "snapshotfilecount": "0", "snapshotlength": "0", "snapshotspaceconsumed": "0" }]
Ejemplo: cambiar el nombre de un archivo
- En el cuadro de diálogo
Configure connector task
, haz clic enActions
. - Seleccione la acción
hdfs_RenameFile_action
y, a continuación, haga clic en Hecho. - En la sección Asignación de datos
Open Data Mapping Editor
y, a continuación, introduce un valor similar al siguiente en el campoInput
:{ "Path": "/user/hduser/renamefile_second/file1.txt", "Destination": "/user/hduser/renamefile_second/file1rename" }
Si la acción se realiza correctamente, el parámetro de respuesta connectorOutputPayload
de la tarea del conector tendrá un valor similar al siguiente:
[{ "Success": true }]
Ejemplo: definir el permiso de un archivo
- En el cuadro de diálogo
Configure connector task
, haz clic enActions
. - Seleccione la acción
SetPermission
y, a continuación, haga clic en Hecho. - En la sección Asignación de datos
Open Data Mapping Editor
y, a continuación, introduce un valor similar al siguiente en el campoInput
:{ "Path": "/user/hduser/gcpdirectory", "Permission": "777" }
Si la acción se realiza correctamente, el parámetro de respuesta connectorOutputPayload
de la tarea del conector tendrá un valor similar al siguiente:
[{ "Success": true }]
Ejemplo: definir el propietario de un archivo
- En el cuadro de diálogo
Configure connector task
, haz clic enActions
. - Seleccione la acción
SetOwner
y, a continuación, haga clic en Hecho. - En la sección Asignación de datos
Open Data Mapping Editor
y, a continuación, introduce un valor similar al siguiente en el campoInput
:{ "Path": "/user/hduser/gcpdirectory", "Owner": "newowner" }
Si la acción se realiza correctamente, el parámetro de respuesta connectorOutputPayload
de la tarea del conector tendrá un valor similar al siguiente:
[{ "Success": true }]
Ejemplo: subir un archivo
- En el cuadro de diálogo
Configure connector task
, haz clic enActions
. - Seleccione la acción
UploadFile
y, a continuación, haga clic en Hecho. - En la sección Asignación de datos
Open Data Mapping Editor
y, a continuación, introduce un valor similar al siguiente en el campoInput
:{ "Path": "/user/newfile9087.txt", "Content": "string" }
Si la acción se realiza correctamente, el parámetro de respuesta connectorOutputPayload
de la tarea del conector tendrá un valor similar al siguiente:
[{ "Success": true }]
Ejemplo: descargar un archivo
- En el cuadro de diálogo
Configure connector task
, haz clic enActions
. - Seleccione la acción
DownloadFile
y, a continuación, haga clic en Hecho. - En la sección Asignación de datos
Open Data Mapping Editor
y, a continuación, introduce un valor similar al siguiente en el campoInput
:{ "Path": "/user/sampleFile/file1.txt" }
Si la acción se realiza correctamente, el parámetro de respuesta connectorOutputPayload
de la tarea del conector tendrá un valor similar al siguiente:
[ { "Output": "This is sample File\nfor this testing\ncontent" } ]
Ejemplo: añadir contenido a un archivo
- En el cuadro de diálogo
Configure connector task
, haz clic enActions
. - Seleccione la acción
AppendToFile
y, a continuación, haga clic en Hecho. - En la sección Asignación de datos
Open Data Mapping Editor
y, a continuación, introduce un valor similar al siguiente en el campoInput
:{ "Path": "/user/sampleFile/file1.txt", "Content": "content" }
Si la acción se realiza correctamente, el parámetro de respuesta connectorOutputPayload
de la tarea del conector tendrá un valor similar al siguiente:
[ { "Success": true } ]
Ejemplo: Obtener la suma de comprobación de un archivo
- En el cuadro de diálogo
Configure connector task
, haz clic enActions
. - Seleccione la acción
GetFileChecksum
y, a continuación, haga clic en Hecho. - En la sección Asignación de datos
Open Data Mapping Editor
y, a continuación, introduce un valor similar al siguiente en el campoInput
:{ "Path": "/user/sampleFile/file1.txt" }
Si la acción se realiza correctamente, el parámetro de respuesta connectorOutputPayload
de la tarea del conector tendrá un valor similar al siguiente:
[ { "Algorithm": "MD5-of-0MD5-of-512CRC32C", "Bytes": "00000200000000000000000080f5b53ae8c165ae56e86109b8bb2a1700000000", "Length": 28 } ]
Ejemplos de operaciones de entidades
En esta sección se muestra cómo realizar algunas de las operaciones de entidad en este conector.
Ejemplo: listar los datos de todos los archivos
En este ejemplo se obtienen los datos de todos los archivos de la entidad Files
.
- En el cuadro de diálogo
Configure connector task
, haz clic enEntities
. - Selecciona
Object
en la listaEntity
. - Selecciona la operación
List
y, a continuación, haz clic en Hecho.
Ejemplo: obtener datos de un permiso
En este ejemplo se obtienen los datos del permiso con el ID especificado de la entidad Permission
.
- En el cuadro de diálogo
Configure connector task
, haz clic enEntities
. - Selecciona
Permission
en la listaEntity
. - Selecciona la operación
Get
y, a continuación, haz clic en Hecho. - En la sección Entrada de tarea de la tarea Conectores, haga clic en EntityId y, a continuación, introduzca
/user/hduser/appendfile
en el campo Valor predeterminado.En este caso,
/user/hduser/appendfile
es un ID único de la entidadPermission
.
Obtener ayuda de la comunidad de Google Cloud
Puedes publicar tus preguntas y hablar sobre este conector en la comunidad de Google Cloud, en los foros de Cloud.Siguientes pasos
- Consulta cómo suspender y reanudar una conexión.
- Consulta cómo monitorizar el uso de los conectores.
- Consulta cómo ver los registros de conectores.