1 No SQL Miguel Angel Pardo Lopez Docente Andres Felipe Miranda Diaz Universidad De Cundinamarca Ingeniería de Sistemas Y computación Ciencia de Datos 07/ febrero /2024 2 Resumen Investigación básica acerca de las bases de datos NoSQL de manera que los términos encontrados y la búsqueda realizada en distintos ámbitos sirva para afianzar y aclarar dudas acerca de las bases de datos NoSQL. Palabras clave: RDBMS: Database estructures, Acrónimo de Relacional Database Management System (sistema de administración de bases de datos relacionales). CLÚSTERES: son grupos de servidores que se gestionan juntos y participan en la gestión de carga de trabajo. SQL: (Structured Query Language) es un lenguaje de programación estandarizado que se utiliza para administrar bases de datos relacionales y realizar diversas operaciones con los datos que contienen. JSON: (JavaScript Object Notation) es un formato ligero de intercambio de datos. JSON es de fácil lectura y escritura para los usuarios. MONGODB: es una base de datos NoSQL orientada a documentos que apareció a mediados de la década de 2000. Se utiliza para almacenar volúmenes masivos de datos. A diferencia de una base de datos relacional SQL tradicional, MongoDB no se basa en tablas y columnas. 3 Tabla de contenido Introducción .........................................................................................................................4 Contenido del Trabajo..........................................................................................................5 Se diseñaron para: ........................................................................................................... 5 Que es: ............................................................................................................................ 5 ¿Cuál es la diferencia entre una base de datos NoSQL y una base de datos relacional tradicional? .................................................................................................................................. 6 ¿Cuáles son los principales tipos de bases de datos NoSQL y en qué escenarios se recomienda su uso? ..................................................................................................................... 7 Ejemplos y casos de uso de Bases de datos NoSQL ....................................................... 8 Conclusiones ........................................................................................................................9 Referencias Bibliográficas .................................................................................................10 4 Introducción Durante la última década, el mundo de la gestión de bases de datos ha visto avances significativos en el tamaño y la cantidad de datos procesados. Por humanos y máquinas. En este contexto, las bases de datos NoSQL han surgido como una alternativa escalable a los modelos de bases de datos tradicionales. Este estudio detallado examina los conceptos, la arquitectura, los tipos, las ventajas y los desafíos de las bases de datos NoSQL y su papel en el entorno de gestión de datos actual. 5 Contenido del Trabajo Se diseñaron para: Los sistemas NoSQL están diseñados para que la falla de un solo componente no conduzca a la falla de todo el sistema. Este modelo se puede implementar fácilmente en un entorno de nube en el que los servidores básicos (reales o virtuales) se encuentran en un entorno central de datos de proveedores de servicios accesible a través de la Internet pública. Muchos sistemas NoSQL permiten la fragmentación automatizada, es decir, la distribución de los datos entre varios nodos de una manera que permite que cada servidor opere de forma independiente en los datos ubicados en él. Esto hace posible implementar una arquitectura de nada compartido, una arquitectura de replicación que no tenga roles separados/maestro/esclavo. Los sistemas NoSQL también ofrecen oportunidades para el uso del esquema en el modelo de lectura en lugar del esquema en el modelo de escritura, que asume y requiere un esquema predefinido que es difícil de cambiar. Que es: Las bases de datos NoSQL son una alternativa flexible y escalable a las bases de datos tradicionales. Permiten almacenar y gestionar grandes volúmenes de datos de manera eficiente, sin estructuras fijas y con alta disponibilidad. Son ideales para aplicaciones web y móviles que requieren un procesamiento rápido y una adaptación ágil a cambios en la estructura de los datos. 6 ¿Cuál es la diferencia entre una base de datos NoSQL y una base de datos relacional tradicional? La principal diferencia entre una base de datos NoSQL y una base de datos relacional tradicional radica en su estructura y enfoque de almacenamiento de datos. En una base de datos relacional tradicional, los datos se organizan en tablas con filas y columnas, y se establecen relaciones entre las tablas mediante claves primarias y claves foráneas. Este enfoque se basa en el modelo de datos relacional y utiliza el lenguaje SQL (Structured Query Language) para realizar consultas y manipulaciones de datos. Las bases de datos relacionales son altamente estructuradas y se utilizan principalmente para aplicaciones que requieren transacciones complejas y garantía de integridad de datos. Las bases de datos NoSQL son altamente escalables y flexibles, lo que las hace ideales para aplicaciones web y móviles que manejan grandes volúmenes de datos y requieren una alta velocidad de lectura y escritura. Además, las bases de datos NoSQL no imponen una estructura fija a los datos, lo que permite una mayor agilidad en el desarrollo y la capacidad de adaptarse rápidamente a cambios en los requisitos de la aplicación. 7 ¿Cuáles son los principales tipos de bases de datos NoSQL y en qué escenarios se recomienda su uso? Bases de datos de documentos: Estas bases de datos almacenan datos en forma de documentos, generalmente en formato JSON o XML. Son flexibles y escalables, lo que las hace ideales para aplicaciones web y móviles, así como para casos de uso donde los datos tienen una estructura variable o cambiante. Bases de datos de grafos: Estas bases de datos están diseñadas para almacenar y consultar relaciones entre entidades. Son eficientes para representar y analizar redes complejas, como redes sociales, recomendaciones de productos y rutas de navegación. Bases de datos de columnas: Estas bases de datos almacenan datos en columnas en lugar de filas, lo que permite una recuperación rápida y eficiente de datos específicos. Son adecuadas para casos de uso donde se requiere un alto rendimiento en consultas analíticas y agregaciones, como análisis de big data y sistemas de gestión de contenido. Bases de datos clave-valor: Estas bases de datos almacenan datos en pares clave-valor, donde cada valor está asociado con una clave única. Son muy rápidas y escalables, lo que las hace adecuadas para aplicaciones que requieren una alta velocidad de lectura y escritura, como sistemas de almacenamiento en caché y sesiones de usuario. 8 Ejemplos y casos de uso de Bases de datos NoSQL Como vemos las BBDD NoSQL gozan de múltiples funciones, marcas, tipos y ventajas. Ahora, es momento de poner más en contexto y mostrar algunos ejemplos de su implementación. A modo de ejemplo utilizaremos un JSON como el que conseguirás en mongoDB. Veamos: Supongamos que vamos a registrar diferentes personas en una colección perteneciente a una BBDD NoSQL con algunos campos especiales. Estos no necesariamente tienen que seguir un patrón específico como verás a continuación: { Nombre: «José», Apellidos: «Pérez Campo», Edad: 35, Aficiones: [«vino»,» libros»,» ciclismo»], Amigos: [ { Nombre:» María», Edad:22 }, { Nombre:» Luis», Edad:28 } 9 ] } Ahora bien, si queremos añadir a otros datos de otra persona con algunas características diferentes la podemos hacer sin mayor problema introduciendo lo siguiente: {Nombre: "Luis", Estudios: "Marketing y Publicidad", Amigos:12 } Conclusiones Después de analizar y comparar las características de las bases de datos NoSQL con las bases de datos relacionales tradicionales, se concluye que NoSQL ofrece ventajas significativas en términos de escalabilidad horizontal, flexibilidad de esquema, rendimiento y capacidad de manejar grandes volúmenes de datos no estructurados. Basado en los hallazgos de la investigación, se pueden hacer recomendaciones para futuros proyectos que consideren la adopción de NoSQL. Además, se pueden mencionar áreas de investigación futura, como la mejora de la interoperabilidad entre diferentes tipos de bases de datos NoSQL, la optimización del rendimiento y la escalabilidad, y la integración de NoSQL con tecnologías emergentes como la inteligencia artificial y el aprendizaje automático. 10 Referencias Bibliográficas Digital Content (2024). IAN (versión del 1 de marzo) [Modelo de lenguaje generativo]. https://www-ebooks7-24-com.ucundinamarca.basesdedatosezproxy.com/ Hoffer, J. A. (2020). Modern database management. Pearson Educación. https://www-ebooks7-24-com.ucundinamarca.basesdedatosezproxy.com/?il=13509 Digital Content (2024). IAN (versión del 1 de marzo) [Modelo de lenguaje generativo]. https://www-ebooks7-24-com.ucundinamarca.basesdedatosezproxy.com/ GraphEverywhere, E. (2019, 11 junio). Bases de datos NoSQL | Qué son, marcas, tipos y ventajas. GraphEverywhere. https://www.grapheverywhere.com/bases-de-datos-nosql-marcastipos-ventajas/# Sarasa, A., Sarasa Cabezuelo, A. (2016). Introducción a las bases de datos NoSQL usando MongoDB. España: Editorial UOC. pdf81f31aa68567f97aecbe9d4497855760.nubereader pdfs.odilo.us/#/e02398e18134406c9fef7930db8aeb19/07aafa0bbbf86bc43d2ccecf667d13d4f115 734c0f0cfc7353fee482fbcbed3e Digital Content (2024). (versión del 1 de marzo) [Modelo de lenguaje generativo]. https://www-ebooks7-24-com.ucundinamarca.basesdedatosezproxy.com/