En este apartado se encuentran ejemplos de implementacion de distintas Bases de Datos NoSQL, materia dictada en la UTN FRBA.
Los tipos de bases tratados son:
- Key-Value
- Column-Family
- Document
- Graphs
En la primer parte se vio los conceptos, caracteristicas y como modelar los datos en cada una de ellas.
En particular, las BDs utilizadas fueron: Redis, Cassandra, MongoDB y Neo4J por ser las mas utilizadas en su tipo (no se tuvo en cuentas las BDs en la nube como DynamoDB, Big Table, etc)
En este link se puede ver el ranking de la bases mas utilizadas
Como los ejemplos son a fines prácticos y para evitar tener que instalar cada BD, se opto por utilizar los contenedores de Docker.
A continuación se muestra los comandos de ejecución y conexión a la BD:
- Redis
docker run --rm --name db-redis -p 6379:6379 redis
docker exec -it db-redis redis-cli
- Cassandra
docker run --rm --name db-cassandra cassandra
docker exec -it db-cassandra cqlsh
- MongoDB
docker run --rm --name db-mongo -p 27017:27017 mongodb/mongodb-community-server # or use mongo image
docker exec -it db-mongo mongosh
- Neo4J
docker run --rm --name db-neo4j -p 7474:7474 -p 7687:7687 neo4j
# Open Neo4J' interface at http://localhost:7474/
Los ejemplos prácticos de modelado de datos se encuentran en: modelado_de_datos
En esta segunda parte se ven caracteristicas cross de las BDs No SQL, como la distribucion de datos en nodos que conforman un cluster. En particular, se utilizan los conceptos Replicacion y Particionamiento (Sharding) de datos