Académique Documents
Professionnel Documents
Culture Documents
INTEGRANTES:
APORTE (%)
Chilón Cueva Jhon Alexander 25%
Guevara Campos Diego Armando 25%
Novoa Alvarado Shania 25%
Villanueva Zabaleta Edward 25%
ii. Características
Recordemos que un objeto es una estructura que tiene asociado un estado y un comportamiento
(propiedades y métodos). Estas bases tienen las características de todo lo que es orientado a objeto
que son herencia, polimorfismo, abstracción y encapsulamiento.
La mayoría de bases de datos orientadas a objetos incluyen algún tipo de lenguaje para realizar
consultas, lo cual permite que los objetos sean encontrados utilizando un enfoque de
programación declarativa.
El lenguaje de programación y el esquema de la base de datos utilizan la misma definición de
tipos.
Mandatorias: Son las que el Sistema debe satisfacer a orden de tener un sistema de BDOO y
estos son: encapsulación, tipos o clases, o la más simple que sería tener un motor de BD.
Opcionales: Son las que pueden ser añadidas para hacer el sistema mejor pero que no son
mandatorias, estas son de: herencia múltiple, chequeo de tipos e inferencia de distribución, etc.
Abiertas: Son aquellas en las que el diseñador puede poner de su parte y que están relacionadas
con la programación.
Algunas propiedades son las de encapsulación, herencia y polimorfismo; la primera, permite ocultar
la información al resto de los objetos, impidiendo así accesos incorrectos o conflictos; la segunda,
es una propiedad donde los objetos heredan comportamiento dentro de una jerarquía de clases; la
última permite que una operación pueda ser aplicada a distintos tipos de objetos.
iii. Herramientas
Ahora, una base de datos orientada a objetos, requiere de manejadores de bases de datos que
soporten éste tipo de arquitecturas, pero estos son muy escasos en comparación con los
tradicionales. Algunos de los pocos OODBMS que existen son: Db4o, Informix, Bdoviedo3; todas
estas, software de pago.
iv. Importancia
Cuenta la historia que uno de los principales problemas a los que se enfrentaba Nygaard en su época,
era el de realizar procesos de trabajo largos para una tarea posterior que no simbolizaba tanta
dificultad. No era tirar horas de trabajo a la basura, pero sí sentía que su tiempo se estaba
desperdiciando dentro del contexto. Por eso planteó soluciones y descubrió que finalmente la
orientación a objetos con la que había trabajado le resolvía este aspecto. Pero con este
descubrimiento Nygaard necesitaba un lenguaje que le sirviera de apoyo, así fue como nació
Simula-67, lenguaje que hoy día aún se usa y que está considerado como uno de los inventos más
importantes en el mundo de la informática, aunque no sea algo conocido en términos populares.
Quizá aun así no entendamos la importancia de este tipo de bases, y es que este lenguaje luego se
transformó en el que ahora conocemos como C++.
v. Aplicación
Una aplicación actual sería en la ciencia, ya que estos tipos de base de datos permiten manejar los
datos de formas asombrosas, están presentes en las investigaciones científicas o en las grandes
empresas como lo sería Google, o en las grandes entidades bancarias como el banco industrial y
comercial de china.
C. Conclusiones
Las bases de datos orientadas a objetos permiten que múltiples usuarios compartan objetos
complejos y los manipulen en un ambiente seguro y estructurado. Las bases de datos
convencionales fueron diseñadas para manejar tipos de datos alfanuméricos y por esto difícilmente
pueden manipular objetos y métodos (los métodos son los comportamientos definidos de los
objetos).
Una base de datos orientada a objetos almacena datos complejos y relaciones entre datos
directamente, sin asignar filas y columnas, y esto hace que sean más adecuadas para aplicaciones
que tratan con datos muy complejos. Los objetos tienen relaciones “muchos a muchos” y son
accesibles mediante el uso de punteros. Estos punteros se vinculan a los objetos para establecer
relaciones. Otro beneficio adicional de una base de datos orientada a objetos es que puede ser
programada con pequeñas diferencias de procedimientos sin afectar a todo el sistema.
D. Referencias Bibliográficas
Kavanagh, T. S. (1998). Object oriented database management system. Google Patents, 1-3.
Kim, W. (1990). Base de datos deductivas y orientas a objetos. Science Direct, 241-258.
Marqués, M. (12 de Abril de 2002). Tema 2. Bases de datos orientadas a objetos. Obtenido de
http://www3.uji.es/~mmarques/e16/teoria/cap2.pdf
En otras palabras, son un grupo de datos que pertenecen a un sistema, pero a su vez esta repartido
entre ordenadores de una misma red, ya sea a nivel local o cada uno en una diferente localización
geográfica, cada sitio en la red es autónomo en sus capacidades de procesamiento y es capaz de
realizar operaciones locales y en cada uno de estos ordenadores debe estar ejecutándose una
aplicación a nivel global que permita la consulta de todos los datos como si se tratase de uno solo.
ii. Características
iii. Herramientas
Algunos softwares que permiten trabajar con base de datos distribuidas son Ingres, NonStop SQL
y Oracle.
iv. Importancia
Reduce costos de comunicación; es decir, si las bases de datos están muy dispersas y las aplicaciones
hacen amplio uso de datos, es mejor y más económico dividirla. Otra razón por la que se usan este
tipo de bases es por los datos; estos se pueden colocar físicamente en el lugar donde se accedan más
frecuentemente, haciendo que los usuarios tengan control local de los datos con los que interactúan.
Esto resulta en una autonomía local de datos permitiendo a los usuarios aplicar políticas locales
respecto del tipo de accesos a sus datos. Finalmente, mediante la replicación de información, las
bases de datos distribuidas pueden presentar cierto grado de tolerancia a fallas haciendo que el
funcionamiento del sistema no dependa de un solo lugar como en el caso de las bases de datos
centralizadas.
v. Aplicación
Los ambientes en los que se encuentra con mayor frecuencia el uso de las bases de datos distribuidas
son:
Cualquier organización que tiene una estructura descentralizada.
Casos típicos de lo anterior son: organismos gubernamentales y/o de servicio público.
La industria de la manufactura, particularmente, aquella con plantas múltiples. Por ejemplo,
la
industria automotriz.
Aplicaciones de control y comando militar.
Líneas de transportación aérea,
Cadenas hoteleras.
Servicios bancarios y financieros.
C. Conclusiones
Las bases de datos distribuidas son cada vez más usadas por las empresas y suponen una ventaja
competitiva frente a los sistemas centralizados, siempre y cuando la empresa en cuestión tenga
necesidad de usar una base de datos de este tipo. Lo más habitual es disponer de varias sedes y tener
que manejar información común, para lo cual las bases de datos distribuidas son especialmente
útiles.
D. Referencias Bibliográficas
Se proponen seis características específicas para poder encasillar a las bases de datos NoSQL
(Catell, 2010, págs. 12-27):
• Escalabilidad horizontal: refiriéndose a la facilidad añadir, eliminar o realizar operaciones con
elementos (hardware) del sistema, sin afectar el rendimiento.
• Habilidad de distribución: tiene que ver con la escalabilidad horizontal, pero haciendo énfasis en su
soporte; para ello se tiene en cuenta la habilidad de replicar y distribuir los datos sobre los
servidores.
• Uso eficiente de recursos: aprovecha las nuevas tecnologías, como los discos en estado sólido, el
uso eficiente de recursos como la memoria RAM y los sistemas distribuidos en general.
• Libertad de esquema: al no tener un esquema rígido se permite mayor libertad para modelar los
datos; además facilita la integración con los lenguajes de programación orientados a objetos, lo que
evita el proceso de mapeado.
• Consultas simples: las consultas requieren menos operaciones y son más naturales, por la tanto, se
gana en simplicidad y eficiencia.
iii. Herramientas
• Apache Cassandra: De un avance rápido, eventualmente consistente, y con almacenamiento
estructurado key-value.
• MongoDB: Escrita en lenguaje C++, de código abierto, orientada a documentos, y pensada para ser
escalable y de desarrollo ágil, este almacena documentos similares a JSON con esquemas
dinámicos.
• Neo4j: Base de datos gráfica de alto rendimiento, puede almacenar los datos en los nodos y
relaciones de un grafo operando con una estructura de red flexible y orientada a objetos, obteniendo
todos los beneficios de una base de datos transaccional.
• DynamoDB: Está diseñada para abordar problemas de gestión, rendimiento, escalabilidad y
fiabilidad de datos ya que el cliente no se encarga de instalar, configurar, revisar, ni demás
actividades de mantenimiento ni soporte del motor.
(Peña, 2012)
iv. Importancia
NoSQL no es un sustituto a las bases de datos relacionales, es solo un movimiento que busca otras
opciones para escenarios específicos. Las bases de datos NoSQL, a diferencia de las relacionales,
están basadas en key-value pairs; se dice que esta base de datos de código abierto tiene una
implementación rentable, ya que no requieren las tarifas de licencia y pueden ejecutarse en un
hardware de precio bajo.
Al trabajar con bases de datos NoSQL, la expansión es más fácil y más barata a comparación de
cuando se trabaja con bases de datos relacionales, esto se debe a que se realiza un escalado
horizontal y se distribuye la carga por todos los nodos. En lugar de realizarse una escala vertical,
más típica en los sistemas de bases de datos relacionales.
v. Aplicación
Deben elegir para cada caso, si aceptan datos frágiles o si se configurará el almacén de datos con
consistencia en tiempo de lectura, aunque esto suponga un retraso en la respuesta. Su uso es
adecuado para aquéllas que: (Zorrilla & García, 2017)
• Manejan volúmenes ingentes de datos.
Tienen una frecuencia alta de accesos de lectura y escritura.
Con cambios frecuentes en los esquemas de datos.
Y que no requieren consistencia ACID.
Casos de aplicación:
• Servicios Web2.0 (redes sociales, blogs, etc.)
• Aplicaciones IoT
• Almacenamiento de perfiles sociales
• Juegos sociales
• Gestión de contenidos
C. Conclusiones
NoSQL hace referencia al conjunto de tecnologías en bases de datos que buscan alternativas al
sistema de bases de datos relacional, en un contexto donde priman la velocidad, el manejo de
grandes volúmenes de datos y la posibilidad de tener un sistema distribuido.
D. Referencias Bibliográficas