REPORTE DE INVESTIGACIÓN DE LAS BASES DE DATOS RELACIONALES, NO RELACIONALES, ORIENTADAS A OBJETOS Y A DOCUMENTOS. Profesor: M.G.T.I. JORGE ALBERTO CHAPARRO TARANGO Materia: BASE DE DATOS PARA CÓMPUTO EN LA NUBE Universidad Tecnológica de Chihuahua Tecnologías de la información Área: desarrollo de software Fecha: 16/01/2021 Jaziel Giovani Alvarado Encino Grupo: TID51M Reporte de investigación de las Bases de Datos relacionales, no relacionales, orientadas a objetos y a documentos. Introducción ........................................................................................................... 2 Bases de datos relacionales .................................................................................. 2 ¿Qué es una base de datos relacional? .......................................................... 2 ¿Cómo se estructuran las bases de datos relacionales? ................................ 2 Consistencia de los datos ............................................................................... 3 Bases de datos no relacionales ............................................................................. 4 ¿Qué son las bases de datos no relacionales? ............................................... 4 ¿Cómo funciona una base de datos NoSQL (no relacionales)? ...................... 4 ¿Por qué debería usar una base de datos NoSQL? ........................................ 5 Bases de datos orientadas a objetos ..................................................................... 6 ¿Qué son las bases de datos de objetos? ...................................................... 6 Ventajas e inconvenientes del modelo de base de datos orientada a objetos . 7 Bases de datos orientadas a documentos .............................................................. 8 ¿Qué son las bases de datos documentales? ................................................. 8 ¿Qué beneficios nos brindan? ........................................................................ 9 Conclusión ........................................................................................................... 10 Bibliografía ........................................................................................................... 11 1 Reporte de investigación de las Bases de Datos relacionales, no relacionales, orientadas a objetos y a documentos. Introducción A continuación, va a leer que son las bases de datos relacionales, no relacionales, orientadas a objetos y a documentos. Bases de datos relacionales ¿Qué es una base de datos relacional? Una base de datos relacional es un tipo de base de datos que almacena y proporciona acceso a puntos de datos relacionados entre sí. Las bases de datos relacionales se basan en el modelo relacional, una forma intuitiva y directa de representar datos en tablas. En una base de datos relacional, cada fila de la tabla es un registro con un ID único llamado clave. Las columnas de la tabla contienen atributos de los datos, y cada registro generalmente tiene un valor para cada atributo, lo que facilita el establecimiento de las relaciones entre los puntos de datos. ¿Cómo se estructuran las bases de datos relacionales? El modelo relacional significa que las estructuras lógicas de datos—las tablas de datos, vistas e índices están separadas de las estructuras físicas de almacenamiento. Esta separación significa que los administradores de bases de datos pueden administrar el almacenamiento físico de datos sin afectar el acceso a esos datos como una estructura lógica. Por ejemplo, cambiar el nombre de un archivo de base de datos no cambia el nombre de las tablas almacenadas en él. La distinción entre lógica y física también se aplica a las operaciones de la base de datos, que son acciones claramente definidas que permiten a las aplicaciones manipular los datos y las estructuras de la base de datos. Las operaciones lógicas permiten que una aplicación especifique el contenido que necesita, mientras que las operaciones físicas determinan cómo se debe acceder a esos datos y luego realizan la tarea. Para garantizar que los datos sean siempre precisos y accesibles, las bases de datos relacionales siguen ciertas reglas de integridad. Por ejemplo, una regla de 2 Reporte de investigación de las Bases de Datos relacionales, no relacionales, orientadas a objetos y a documentos. integridad puede especificar que no se permitan filas duplicadas en una tabla, para eliminar la posibilidad de que ingrese información errónea en la base de datos. Consistencia de los datos El modelo relacional es el mejor para mantener la consistencia de los datos en todas las aplicaciones y copias de la base de datos (denominadas instancias). Por ejemplo, cuando un cliente deposita dinero en un cajero automático y, luego, mira el saldo de la cuenta en un teléfono móvil, el cliente espera ver que ese depósito se refleje inmediatamente en un saldo de cuenta actualizado. Las bases de datos relacionales se destacan en este tipo de consistencia de datos, lo que garantiza que múltiples instancias de una base de datos tengan los mismos datos todo el tiempo. Es difícil para otros tipos de bases de datos mantener este nivel de coherencia oportuna con grandes cantidades de datos. Algunas bases de datos recientes, como NoSQL, solo pueden proveer “consistencia eventual.” Bajo este principio, cuando la base de datos se escala o cuando varios usuarios acceden a los mismos datos al mismo tiempo, los datos necesitan algo de tiempo para “ponerse al día.” La consistencia eventual es aceptable para algunos usos, como para mantener listados en un catálogo de productos, pero para operaciones comerciales críticas como transacciones de un carrito de compras, la base de datos relacional sigue siendo el estándar de oro. 3 Reporte de investigación de las Bases de Datos relacionales, no relacionales, orientadas a objetos y a documentos. Bases de datos no relacionales ¿Qué son las bases de datos no relacionales? Las bases de datos NoSQL están diseñadas específicamente para modelos de datos específicos y tienen esquemas flexibles para crear aplicaciones modernas. Las bases de datos NoSQL son ampliamente reconocidas porque son fáciles de desarrollar, por su funcionalidad y el rendimiento a escala. Esta página incluye recursos que lo ayudan a comprender mejor las bases de datos NoSQL y comenzar a usarlas. ¿Cómo funciona una base de datos NoSQL (no relacionales)? Las bases de datos NoSQL utilizan una variedad de modelos de datos para acceder y administrar datos. Estos tipos de bases de datos están optimizados específicamente para aplicaciones que requieren grandes volúmenes de datos, baja latencia y modelos de datos flexibles, lo que se logra mediante la flexibilización de algunas de las restricciones de coherencia de datos en otras bases de datos. Considere el ejemplo de modelado del esquema para una base de datos simple de libros: • En una base de datos relacional, un registro de libros a menudo se enmascara (o "normaliza") y se almacena en tablas separadas, y las relaciones se definen mediante restricciones de claves primarias y externas. En este ejemplo, la tabla Libros tiene las columnas ISBN, Título del libro y Número de edición, la tabla Autores tiene las columnas IDAutor y Nombre de autor y, finalmente, la tabla Autor-ISBN tiene las columnas IDAutor e ISBN. El modelo relacional está diseñado para permitir que la base de datos aplique la integridad referencial entre tablas en la base de datos, normalizada para reducir la redundancia y, generalmente, está optimizada para el almacenamiento. • En una base de datos NoSQL, el registro de un libro generalmente se almacena como un documento JSON. Para cada libro, el elemento, ISBN, Título del libro, Número de edición, Nombre autor y IDAutor se almacenan 4 Reporte de investigación de las Bases de Datos relacionales, no relacionales, orientadas a objetos y a documentos. como atributos en un solo documento. En este modelo, los datos están optimizados para un desarrollo intuitivo y escalabilidad horizontal. ¿Por qué debería usar una base de datos NoSQL? Las bases de datos NoSQL se adaptan perfectamente a muchas aplicaciones modernas, como dispositivos móviles, web y juegos, que requieren bases de datos flexibles, escalables, de alto rendimiento y altamente funcionales para proporcionar excelentes experiencias de usuario. • Flexibilidad: las bases de datos NoSQL generalmente ofrecen esquemas flexibles que permiten un desarrollo más rápido e iterativo. El modelo de datos flexible hace que las bases de datos NoSQL sean ideales para datos semiestructurados y no estructurados. • Escalabilidad: las bases de datos NoSQL generalmente están diseñadas para escalar usando clústeres distribuidos de hardware en lugar de escalar añadiendo servidores caros y sólidos. Algunos proveedores de la nube manejan estas operaciones en segundo plano, como un servicio completamente administrado. • Alto rendimiento: la base de datos NoSQL está optimizada para modelos de datos específicos y patrones de acceso que permiten un mayor rendimiento que el intento de lograr una funcionalidad similar con bases de datos relacionales. 5 Reporte de investigación de las Bases de Datos relacionales, no relacionales, orientadas a objetos y a documentos. • Altamente funcional: las bases de datos NoSQL proporcionan API altamente funcionales y tipos de datos que están diseñados específicamente para cada uno de sus respectivos modelos de datos. Bases de datos orientadas a objetos ¿Qué son las bases de datos de objetos? El modelo de base de datos orientada a objetos agrupa la información en paquetes relacionados entre sí: los datos de cada registro se combinan en un solo objeto, con todos sus atributos. De esta manera, toda la información está disponible en el objeto, ya que sus datos quedan agrupados en lugar de distribuidos en diferentes tablas. En los objetos no solo pueden guardarse los atributos, sino también los métodos, lo que refleja la afinidad de estas bases de datos con los lenguajes de programación orientados a objetos: al igual que en estos, cada objeto presenta un conjunto de acciones que pueden llevarse a cabo. Ejemplo: en el contexto de una base de datos orientada a objetos, podemos guardar una bicicleta como objeto, con todos sus atributos y métodos: es roja, se puede conducir, tiene sillín, etc. Este objeto forma parte de la clase “bicicletas”, en la que, por ejemplo, también podría incluirse una bicicleta azul y otra verde. A su vez, la 6 Reporte de investigación de las Bases de Datos relacionales, no relacionales, orientadas a objetos y a documentos. clase “bicicletas” es una subcategoría de “vehículos”, que también incluye la clase “coches”. Por otra parte, el objeto también está relacionado con la clase “actividades de ocio”. Si accedemos a este objeto a través de su código de identificación único, dispondremos directamente de todos sus métodos y atributos. Ventajas e inconvenientes del modelo de base de datos orientada a objetos Ventajas Inconvenientes Los conjuntos de datos complejos El uso de las bases de datos pueden guardarse y consultarse de orientadas a objetos no está muy forma rápida y sencilla. Los códigos asignan de extendido. identificación automáticamente a se En cada complejidad objeto. Funciona algunas situaciones, puede la gran acarrear problemas de rendimiento. bien con lenguajes de programación orientados a objetos. 7 Reporte de investigación de las Bases de Datos relacionales, no relacionales, orientadas a objetos y a documentos. Bases de datos orientadas a documentos ¿Qué son las bases de datos documentales? Una base de datos documental, también denominada base de datos orientada a documentos es un subconjunto de un tipo de base de datos construida bajo NoSQL. Las BBDD documentales son aliados fundamentales en los que podemos confiar para el manejo de voluminosas cantidades de información. Estas se componen de conjuntos de información estructurada en registros y almacenadas en un soporte electrónico desde un ordenador o servidor. Cada uno de los registros es una unidad autónoma que contiene información. Estos registros a su vez pueden contener diferentes tipos de datos. 8 Reporte de investigación de las Bases de Datos relacionales, no relacionales, orientadas a objetos y a documentos. Los documentos que contienen estas bases de datos pueden referirse a documentos de texto, archivos XML o JSON. ¿Qué beneficios nos brindan? Como hemos dicho, su funcionamiento es diferente a los modelos relacionales o SQL. Ahora bien, las bases de datos documentales tienen características que las hacen únicas. Podemos sacarle mucho provecho para nuestras organizaciones y para los proyectos que deseemos desarrollar con ellas. A continuación, detallaremos cuáles son sus principales atributos para decidirnos a utilizarlas: • Modelado flexible: Los datos que utilizan nuestras aplicaciones web, móviles o sociales se ven constantemente sujetas a cambios. Todos los días necesitamos incluir o eliminar algún dato ya que estos se corresponden con las necesidades o realidades en las que debemos desempeñarnos. Las Bases de Datos Documentales disminuyen la necesidad de utilizar modelos relacionales. Estas nos abren las posibilidades de incorporar de manera flexible y dinámica modelos nuevos de análisis de datos para lo que necesitemos en nuestro día a día. • Escritura rápida: una de sus principales ventajas respecto a las bases de datos relacionales a las que estuvimos acostumbrados por años, es que estas bases de datos documentales establecen un orden de priorización de la disponibilidad de escritura por encima de la estricta consistencia de los datos. Esto permite asegurar que las escrituras de datos siempre serán rápidas sin importar la existencia de una falla de hardware o de la red. Con otros modelos de bases de datos estos problemas, que acá son cosas de otro plano, afectarían el resultado del trabajo que realicemos implicando un retraso de la replicación de datos y alterando la coherencia. 9 Reporte de investigación de las Bases de Datos relacionales, no relacionales, orientadas a objetos y a documentos. • Rendimiento: la velocidad es uno de los factores más importantes a la hora de trabajar. Necesitamos consultas de alta velocidad con potentes motores de búsqueda con propiedades de indexación. Muchas de estas bases de datos documentales cuentan con esto y más, garantizando de esta forma que las consultas a realizar sean veloces, cortas de tiempo, pero de gran eficiencia. Conclusión Durante mi tiemplo estudiando en la UTCH me dieron clases en una aplicación llamada MySQL que apenas hoy me doy que son bases relacionales porque los datos o la información a almacenar, se organiza en tablas, siguiendo leyendo las bases de no relacionales se utiliza en la aplicación de Facebook porque los datos no llevan un orden o están organizados, las bases de datos orientados a objetos la relaciono mucho con los lenguajes de programación porque hay una parte que se llama orientados a objetos esta muy interesante y por ultimo en el cuatrimestre pasado me toco realizar APIS y apenas hoy me doy cuenta que son bases de datos orientados a objetos. Cada cosa que vi en los diferentes aplicaciones o lenguajes de programación son diferentes tipos de base de datos. 10 Reporte de investigación de las Bases de Datos relacionales, no relacionales, orientadas a objetos y a documentos. Bibliografía AWS. (20 de Mayo de 2020). AWS. Obtenido de https://aws.amazon.com/es/nosql/ Barrera, A. (1 de Enero de 2021). next_u. Obtenido de https://www.nextu.com/blog/bases-datos-nosql/ GRAPH. (5 de Julio de 2020). Obtenido de GRAPH: https://www.grapheverywhere.com/bases-de-datos-documentales/ Oracle. (5 de Enero de 2021). Oracle. Obtenido de https://www.oracle.com/co/database/what-is-a-relational-database/ técnicas, C. (24 de Junio de 2020). Digital Guide IONOS. Obtenido de https://www.ionos.mx/digitalguide/hosting/cuestiones-tecnicas/base-dedatos-orientada-a-objetos/ 11