Visualización de datos con Caravel
Desde hace años estamos inversos en una revolución tecnológica, que ha permitido cosas como el Big Data, esto es, el almacenamiento y tratamiento de grandes volúmenes de datos. Para tratar con dichos datos necesitamos potentes herramientas que nos ayuden. Pues bien, dentro de esto entra Caravel, un software especializado en gestión de datos y la creación de gráficos interactivos, creado por el equipo de desarrollo de Airbnb.
Sobre Caravel
Es un potente plataforma de visualización de datos, open source, utiliza una licencia Apache, que proporciona una fácil exploración de estos, permitiendo crear y compartir gráficos y cuadros de mando. Su nombre original era Panoramix. Veamos sus principales caracaterísticas:
- Un amplio conjunto de visualizaciones de datos, integrado a partir de algunas de las mejores bibliotecas de visualización
- Crear y compartir paneles
- Tiene un alta granulidad y modelo de permisos extensible, que permite reglas sobre quien puede acceder a ciertas características y conjuntos de datos
- Herramientas de autentificación con integración con las principales proveedores de autentificación (Bases de datos, LDAP, OpenID, etcétera)
- Una capa semántica sencilla, lo que permite a los usuarios controlar cómo las fuentes de datos se muestran en la interfaz de usuario, mediante la definición de los campos que debe aparecer.
- La integración con muchos RDBMS a través SqlAlchemy
- La integración con Druid.io
Laboratorio de pruebas
Para la instalación vamos a utilizar un sistema operativo GNU Linux, concretamente CentOS, en su versión 7 Antes de nada activaremos la red utilizando la herramienta ‘nmtui‘ El requisito más importante es que utilice Python 2.7*, la versión 2.6* ya no está soportada, y la versión 3 está prevista para más adelante.
yum install epel-release
yum groupinstall -y 'development tools'
yum upgrade python-setuptools
yum install gcc libffi-devel python-devel python-pip python-wheel openssl-devel
Para comprobar la versión escribimos:
python --version
En mi caso es la 2.7.5
Si no decimos lo contrario el programa utilizará como motor de base de datos sqlite, pero también tenemos disponibles formas para poder utilizar otros motores como MySQL, Oracle o PostgreSQL.
Para la instalación debemos seguir los siguientes pasos. El primero es utilizar la herramienta pip, suministrado por el equipo python, que nos permitirá descargar e instalar paquetes.
pip install caravel
Creamos el usuario administrador:
fabmanager create-admin --app caravel
Aquí vemos la muestra:
Iniciamos la base de datos:
caravel db upgrade
Creamos los roles y permisos por defecto:
caravel init
Cargamos datos de prueba:
caravel load_examples
Encendemos el servidor de desarrollo:
caravel runserver -d
Y ya podemos acceder desde nuestra IP y el puerto 8080
Anteriormente hemos cargado una serie de datos a modo de ejemplo, que podemos consultar desde «Dashboards» y allí seleccionar la que más nos interese en ese momento:
Tenemos dos para seleccionar, la primera relacionado con datos sobre cumpleaños y la segunda sobre los datos un supuesto «Banco Mundial de Salud»
Los datos a mostrar se pueden editar de manera fácil, al igual que los paneles se pueden colocar y mover a nuestro gusto.
Sólo hemos visto por encima todas las posibilidades de este producto, creo que se merece más artículos al respecto, para conocerlo más en detalle. Así que estad atentos 😉
Si queréis ampliar información , podéis visitar su página web o la página del proyecto GitHub
Nos leemos en la próxima!
He conocido Caravel a raíz de una noticia en LWN.net