En esta Ruta de aprendizaje conectada, crearemos una Cadena que ilustra cómo convertir un simple conjunto de datos JSON a CSV. Además, exploraremos cómo hacer un bucle sobre un conjunto de datos JSON y filtrar en función de los valores de los datos.
| Objetivo principal de aprendizaje | Capacidad del Conector JSON |
| Objetivos de aprendizaje secundarios |
Transformación tabular Comando de consulta avanzada Iteración de Grupos |
| Requisitos previos | Configura la Conexión del Conector JSON |
| Plantilla de ayuda | CLP | Acceso a los datos JSON. |
Paso 1: Crea una Cadena
- Añadir una nueva Cadena
- Nombre de la cadena CLP | Acceso a los datos JSON.
- Variable Crear Cadenas:
- En variables de cadena, haz clic en el signo más
- Nombre: cv-JSON-Empleado
- Valor: https://cs-sftp-training-bucket.s3.amazonaws.com/cs-training/transformation-qs/emp_detail.json
- En variables de cadena, haz clic en el signo más
- Guardar la cadena
Etapa 2: Recuperar datos JSON
Utilizamos el conector HTTP para recuperar datos relacionados con los recuentos en formato JSON desde una ubicación web.
- Añade un comando OBTENER desde el conector HTTP al nodo Inicio
- Configura el comando con lo siguiente:
| Nombre | GET - Todos los empleados |
| Nombre de usuario | <leave> |
| Contraseña | <leave> |
| Certificado CA | <leave> |
| Certificado | <leave> |
| Certificado Clave Privada | <leave> |
| Mostrar respuesta | Comprobado |
| dirección URL|URL | Variable de cadena cv-JSON-Employee |
| Cadena de consulta | <leave> |
| Tipo de contenido | aplicación/json |
| Respuesta | <leave> |
- Guardando el comando
Etapa 3: Convertir JSON a CSV
Utiliza el conector JSON para convertir el conjunto de datos JSON a un formato CSV. Selecciona solo los campos ID de empleado y País desde el array JSON en esta etapa.
Es importante comprender el esquema del conjunto de datos JSON. Se puede utilizar un comando Listar contenido de archivos desde el conector de utilidades de archivos para visualizar el esquema. También puedes añadir el esquema al campo Respuesta del comando Obtener para facilitar la referencia. A continuación se muestra el esquema JSON de los empleados:
Esquemas:
[
{
"emp_id": "26-4992011",
"user_name": "apostle0",
"first_name": "Audi",
"last_name": "Postle",
"job_title": "Ingeniero Jefe de Diseño",
"departamento": "Marketing",
"city": "Cheyenne",
"country": "Estados Unidos",
"currency": "USD",
"hire_date": "08/30/2000",
"fte": 1,
"termed": false
}
]
- Añade un comando Matriz a CSV desde el conector JSON a la cadena.
- Conecta el nodo Inicio (OBTENER - Todos los empleados) al comando Matriz a CSV.
- Pon nombre al comando: Matriz a CSV - Todos de:.
- En el parámetro Datos JSON, selecciona la Respuesta Salida del comando GET - Todos los empleados.
- Deja en blanco los parámetros Texto de entrada, Ruta a la raíz, y Filtro.
- Deja el parámetro Delimitador multivalor como una coma (,).
- Marca la opción Vista previa de resultado.
- La sección Columnas se utiliza para especificar qué elementos de la matriz JSON se extraerán a un conjunto de datos en columnas (CSV). Haz clic en el botón Añadir una vez para añadir una columna adicional.
- En la primera columna, introduce emp_id para el Nombre de la columna y .emp_id para los parámetros JSONPath.
- ❗ Asegúrate de incluir el punto (.) antes de emp_id en el parámetro JSONPath.
- En la segunda columna, introduce country para el Nombre de la columna y .country para los parámetros JSONPath.
- Selecciona Coma para el parámetro Delimitador.
- En la primera columna, introduce emp_id para el Nombre de la columna y .emp_id para los parámetros JSONPath.
- Guardar el comando
Etapa 4: Obtén la Lista Única de Países en los Datos
Utiliza una sencilla sentencia Select Distinct con el comando Consulta avanzada del conector de transformación tabular para obtener el conjunto único de países de los datos. Más adelante en este ejercicio, esta lista se utilizará para recuperar a los empleados por cada país individualmente.
- Añade un comando Consulta avanzada desde el conector de Transformación tabular a la cadena.
- Conecta el comando Array a CSV - Todos los empleados al comando Consulta avanzada.
- Nombra el comando: Consulta avanzada - Países.
- La sección Tablas permite utilizar uno o varios conjuntos de datos delimitados para crear tablas en las que se puedan escribir sentencias SQL. Se genera sobre la marcha una Base de datos SQLite con las tablas especificadas, sin necesidad de instalar software adicional.
- En el campo Archivo, especifica el Archivo convertido Resultado del comando Matriz a CSV - Todos los empleados.
- Introduce Países en el parámetro Nombre de tabla. La consulta especificada se ejecutará contra esta tabla.
- En el parámetro Consulta, introduce lo siguiente:
Seleccionar un país distinto de los países Desde: .
- Especifica Coma para los parámetros Delimitador de entrada y Delimitador de salida.
- Comprueba el parámetro de los resultados de la Vista previa
- Guarda el comando.
Etapa 5: Crear una matriz JSON desde la lista de países.
Utilizamos el comando CSV a JSON del conector JSON para convertir la lista única de países en una matriz JSON. Un Grupo de comandos puede iterar sobre cada elemento de este conjunto.
- Añadir un comando CSV a JSON desde el conector JSON a la Cadena.
- Conecta el comando Consulta avanzada - Países al comando CSV a JSON.
- Configura el comando utilizando lo siguiente:
| Nombre | De CSV a JSON - Países |
| Archivo de Entrada | Resultado desde el comando Consulta avanzada - Países |
| Delimitador | Coma (,) |
- Guardando el comando
Etapa 6: Añadir un grupo de comandos
Añadir un Grupo de comandos a la Cadena para permitir la iteración sobre cada uno de los países individuales identificados en la etapa de Consulta avanzada.
- Añadir un Grupo de comandos a la Cadena.
- Conecta el CSV a JSON - Países Comando a la En sección del Grupo de comandos.
- Haz clic en el Grupo de comandos y selecciona el icono del cuentagotas para cambiar el color del comando a naranja.
- Nombre del Grupo: Empleados Activos.
- Activa el conmutador Iteraciones en la pestaña Iteraciones y selecciona la salida Archivo JSON del comando CSV a JSON - Países.
- Guardando el Grupo de comandos.
Etapa 7: Filtrar los datos JSON de los empleados por país.
Convierte el conjunto de datos JSON a CSV filtrando solo los Registros de empleados del país que se está procesando en ese momento en la iteración. Esta etapa pone de relieve dos potentes capacidades: la de hacer bucles o iterar y la de aplicar filtros al proceso de Conversión a JSON. Aceptar estas Habilidades refuerza la capacidad de desarrollar Cadenas robustas y eficaces.
Copia el comando "Matriz a CSV" configurado anteriormente para esta etapa y la configuración aprovecha en gran medida la misma configuración, excepto en los casos que se indican a continuación.
- Copiar la matriz a CSV - Todos los empleados Comando.
- Conecta Iniciar grupo desde el grupo de comandos al comando Matriz a CSV - Todos los empleados (Copiar).
- Edita el comando.
- Pon nombre al comando: Matriz a CSV - Empleados por país.
- En el parámetro Filtro, introduce lo siguiente:
?(@.country == "<JSON FILE ITERATION>")
-
- El espacio antes de y después del signo doble igual (==) son necesarios.
- <JSON> debe ser reemplazado por el Iteración de Archivos JSON bajo el Iterador de Grupos en el Panel de Variables.
- Al añadir la Iteración del Archivo JSON, haz clic en la Burbuja de variables y añade una Transformación de Obtener valor de la variable JSON.
- En el parámetro Valor de la transformación de la variable, introduce país y, a continuación, pulsa la tecla Intro. Recuerda que JSON es distingue entre mayúsculas y minúsculas.
- Edita la columna emp_id para que tenga un Nombre de la columna de employee_id. No cambies el JSONPath.
- El Nombre de la columna generado por el comando no tiene por qué coincidir con la clave de la matriz JSON.
- Añade 10 columnas al comando y configúralo según se indica a continuación:
| Nombre de la columna | JSONPath |
| nombre_usuario | .user_name |
| nombre | .first_name |
| apellido | .apellido |
| título | .título_trabajo |
| departamento | .department |
| ciudad | .city |
| divisa | .currency |
| hire_date | .hire_date |
| fte | .fte |
| terminado | .termed |
- Guarda el comando.
Etapa 8: Evaluar el ejercicio
Ahora que la Cadena está completa, evalúa el resultado.
- Publica en la Cadena.
- Haz clic en Ejecutar y selecciona Ejecutar cadena.
- Una vez completada la Cadena, haz clic en el nodo Matriz a CSV - Empleados por país.
- Observa que la iteración se ejecutó cinco (5) veces.
- Selecciona cada valor de iteración y haz clic en la pestaña Entradas. Confirma que el Filtrar por coincide con la tabla siguiente.
- Selecciona la iteración 5 y haz clic en la pestaña Registros. Confirma que la vista previa de datos coincide con la imagen de abajo.
| Iteración 1 | Estados Unidos |
| Iteración 2 | Brasil |
| Iteración 3 | Kenia |
| Iteración 4 | Italia |
| Iteración 5 |
Australia |
¡Para saber más sobre la transformación de datos mediante Cadenas, consulta Rutas de aprendizaje conectadas - Introducción a la transformación!