Este documento describe R y Neo4j, dos herramientas para visualización de datos. Explica que R es un lenguaje de programación estadístico y Neo4j una base de datos orientada a grafos. Luego presenta un proyecto que usa estas herramientas para crear una aplicación web interactiva que visualiza datos turísticos de Gran Canaria almacenados en Neo4j y representados en R.
2. ¿QUÉ ES R?
- Lenguaje de programación con un enfoque estadístico.
- Uno de los lenguajes más utilizados en investigación por la comunidad
estadística
- Apareció en 1993, se basa en el lenguaje S desarrollado a finales de 1970.
- Software Libre, se distribuye bajo licencia GNU GPL
- Proyecto colaborativo y abierto que los usuarios pueden publicar paquetes.
- El repositorio oficial supera la cifra de 2000 paquetes.
5. BASES DE DATOS ORIENTADA A GRAFOS
VENTAJAS
- Rendimiento
- Agilidad
- Flexibilidad y escalabilidad
- Ayudan a encontrar relaciones entre los datos.
DESVENTAJAS
- Requiere un cambio conceptual para los desarrolladores
6. ¿Que es NEO4j?
- Base de Datos Orientada a Grafos(BDOG)
- Lanzada por Neo Techonology, una startup sueca, en 2010.
- Dos tipos de licencia:AGPL y una Licencia Comercial
- Empresas que la usan: eBay, Walmart, Telenor, UBS, Cisco, HP,Lufthansa
7. Características del Neo4j
- No se define ningún esquema. Cada nodo o relación puede tener una
estructura de datos diferente, lo que favorece la escalabilidad.
- Transacciones ACID (Atomicidad, Consistencia, Aislamiento y Durabilidad)
- Límites:
- 34000 millones de nodos
- 34000 millones de relaciones entre esos datos
- 68000 millones de propiedades
- 32000 tipos de relaciones
8. Posibles Aplicaciones para Neo4j
- Búsqueda de enormes cadenas de conexión
- Análisis y búsqueda de patrones
- Soluciones tipo Red Social
- Sistemas de Recomendación
- Mapas Topográficos, para averiguar el camino más corto entre dos puntos.
9. Rendimiento de Neo4j
Volker Pacher, desarrollador de eBay y cliente de Neo4j, dice:
“Nuestra solución Neo4j es literalmente mil veces más rápida que la
solución anterior MySQL, con búsquedas que requieren entre 10 y 100
veces menos código”.
https://bbvaopen4u.com/es/actualidad/neo4j-que-es-y-para-que-sirve-una-base-de-datos-orientada-grafos
10. Cypher
Las consultas de la base de datos se realizan con Cypher.
- Es un lenguaje bastante intuitivo y fácil de entender.
- Para representar las relaciones se utilizan flechas y para representar los
nodos, paréntesis, consiguiendo así que el lenguaje sea muy gráfico.
Reference Card de Cypher
13. VISTA GENERAL DEL
PROYECTO
Shiny
Framework
para
construir
webs usando
R
ShinyDashboard
Paquete para
Shiny para la
creación de
paneles
RNeo4j
Driver de
Neo4j
para R
visNetwork
Paquete
para R para
visualizar
redes
R
Lenguaje de
Programación
RStudio
Entorno de
Desarrollo Integrado
(IDE) para R
Neo4j
Base de Datos Orientada
a Grafos
14. Datos del
Patronato de Turismo
de
Gran Canaria
http://www.grancanaria.com/patronato_turismo/Listados-de-establecimientos.26171.0.html
18. Importación del archivo .csv al Neo4j
Establec
Isla Municip.
Localid.
Pertenece a la
localidad de
Pertenece al
municipio de
Pertenece a la isla de
MODELO DE DATOS