Hace poco tuve la oportunidad de ir a Riviera Devuna fantástica conferencia de desarrolladores que tuvo lugar cerca de la Riviera francesa. Couchbase patrocinó la conferencia, trajimos helado de leche de cabra, orgánico y local. La gente estaba contenta, las charlas fueron interesantes, se repartió SWAG. Fue una conferencia increíble.

Cuando patrocinamos conferencias con este tipo de actividades, solemos preguntar a los asistentes si podemos escanear sus acreditaciones para enviarles algunas actualizaciones de Couchbase. Así lo hacemos. Y a veces la información es fácil de recuperar, otras veces es un poco complicado. Aquí, el código QR contenía una VCard. Su propósito es guardar información de contacto, información valiosa: como sabes, los escaneos son la moneda de cambio de las conferencias. Es lo que nos permite volver al año siguiente con aún más helado.

En fin, acabamos recopilando un montón de VCards, pero era difícil ponerlas en el omnipresente formato de marketing, CSV. Entonces, ¿qué haces cuando necesitas manipular datos? Usas Couchbase Shell.

Couchbase Shell, Shell ¡Sí!

Shell de Couchbase (cbsh) es un shell moderno, productivo y divertido para Couchbase Server y Capella (nuestra DBaaS en la nube). El código fuente y las instrucciones para instalarlo están disponibles en el repositorio Léame.

Yo personalmente lo instalé clonándolo y construyéndolo:

Es necesario tener la Cadena de herramientas Rust instalado, porque Couchbase Shell está escrito en Rust, y basado en mi shell favorito, nushell.

Una vez instalado, puede ejecutarlo escribiendo cbsh. Le pedirá que configure primero una conexión Couchbase. Si está utilizando la interfaz de gestión de Capella, obtendrá toda la información necesaria en el archivo Conectar ficha.

 

Nushell <3 JSON

Para que conste, este es el aspecto de mi tarjeta VCard:

Hay un montón de librerías node para convertir esto a JSON, yo he usado vcard-json. Así que si ejecuto node de vcard2json.jsObtengo un array JSON con todo el contenido de la VCard como objeto JSON.

Lo cual es genial, pero ¿cómo se puede manipular esto fácilmente? Cbsh se basa en nushell, tenemos todas las cosas buenas que vienen con él, como la de json o el comando donde y el filtro JSON seleccione. Veamos cómo funcionaría paso a paso, con la salida de datos estructurados, también cortesía de nushell:

 

 

 

 

Ahora que los datos están listos y limpios, ¿qué puedo hacer con ellos? Podría escribirlos en un archivo CSV de esta manera:

También podría escribirlo en Couchbase. Ya tengo mis credenciales. El primer comando elige el bucket y el scope y collection por defecto. El segundo itera a través del array JSON, genera un UUID aleatorio, envuelve el contenido bajo una columna de contenido y añade una columna ID con el UUID generado, luego inserta el resultado en Couchbase.

 

Y para asegurarnos de que funciona, los datos pueden consultarse directamente con SQL++:

Así que ahí lo tienes, un ejemplo práctico del uso de Couchbase Shell para manipular Datos, transformarlos e importarlos a Couchabse. ¡Pero hay muchos otros usos para él! ¿Cuál es tu favorito?



Autor

Publicado por Laurent Doguin

Laurent es un metalero empollón que vive en París. Principalmente escribe código en Java y texto estructurado en AsciiDoc, y a menudo habla sobre datos, programación reactiva y otras cosas de moda. También fue Developer Advocate de Clever Cloud y Nuxeo, donde dedicó su tiempo y experiencia a ayudar a esas comunidades a crecer y fortalecerse. Ahora dirige las relaciones con los desarrolladores en Couchbase.

Dejar una respuesta