Práctica de NoSQL

Anuncio
Bases de Datos
Práctica
de
NoSQL
Base de Datos
Práctica
NoSQL
1. Conceptuales
a) Describa brevemente limitaciones de las base de datos relacionales y con qué
características las base de datos NoSql mitigan este problema.
b) Describa los cuatro tipos de base de datos NoSql.
c) ¿Qué es un espacio de nombres o bucket en una base de datos Key-Value?
d) ¿De ejemplos de uso de TTL (time to live) en una base Key-Value?
e) Compare Key-Value con Document Database, de ventajas y desventajas de una u otra.
f) Discuta ventajas y desventajas de que una Document Database sea schemaless.
g) ¿En qué casos puede ser conveniente denormalizar?
h) Compara las Column family databases con otros tipos de bases de datos NoSQL.
2. Definir las funciones Map y Reduce para las operaciones del algebra relacional: selección,
proyección, resta y junta
3. Diseñar algoritmos
MapReduce que toman como entrada un archivo de enteros muy
grande y produce como resultado:
a) El entero más grande
b) El promedio de todos los números
c) El mismo conjunto de números pero cada uno apareciendo solo una vez
d) La cantidad de números distintos
4. Dada
la siguiente relación: Alumno(NroLU, Nombre, Apellido, FechaIngreso,
FechaNacimiento, Calle, Numero, Ciudad, Provincia, País) se pide realizar la estructura
para : Key Value Databases, Document Databases y Column Oriented Databases
5. Dado el siguiente documento JSON que representa la estructura de una Document
Database defina consultas para las cuales la estructura es apropiada y consultas para las
cuales no es apropiada
{
"bookstore": {
"book": [
{
"title": {
"_lang": "en",
"__text": "Everyday Italian"
},
"author": "Giada De Laurentiis",
"year": "2005",
"price": "30.00",
"_category": "COOKING"
},
{
"title": {
"_lang": "en",
"__text": "Harry Potter"
},
"author": "J K. Rowling",
"year": "2005",
"price": "29.99",
"_category": "CHILDREN"
},
{
Página 2 de 7
Base de Datos
Práctica
NoSQL
"title": {
"_lang": "en",
"__text": "XQuery Kick Start"
},
"author": [
"James McGovern",
"Per Bothner",
"Kurt Cagle",
"James Linn",
"Vaidyanathan Nagarajan"
],
"year": "2003",
"price": "49.99",
"_category": "WEB"
},
{
"title": {
"_lang": "en",
"__text": "Learning XML"
},
"author": "Erik T. Ray",
"year": "2003",
"price": "39.95",
"_category": "WEB"
}
]
}
}
6. Dado el siguiente documento JSON, definir un esquema para soportar esos datos en un
modelo para Column Databases.
{
"person": {
"name": "Lindsay Bassett",
"heightInInches": 66,
"head": {
"hair": {
"color": "light blond",
"length": "short",
"style": "A-line"
},
"eyes": "green"
}
}
}
7. Dado el siguiente ejemplo sobre editoriales libros
{
titulo: "MongoDB: The Definitive Guide",
autor: [ "Kristina Chodorow", "Mike Dirolf" ],
fecha_pub: ISODate("2010-09-24"),
paginas: 216,
Página 3 de 7
Base de Datos
Práctica
NoSQL
idioma: "English",
editorial: {
nombre: "O'Reilly Media",
fundada: 1980,
ubicacion: "CA"
}
}
{
titulo: "50 Tips and Tricks for MongoDB Developer",
autor: "Kristina Chodorow",
fecha_pub: ISODate("2011-05-06"),
paginas: 68,
idioma: "English",
editorial: {
nombre: "O'Reilly Media",
fundada: 1980,
ubicacion: "CA"
}
}
a) modificar los documentos para que no se repitan los datos de las editoriales
8. Una instituto educativo está desarrollando una aplicación para realizar encuestas on-line.
a) Definir un esquema JSON para almacenar una encuesta con múltiples respuestas.
b) Expandir el esquema del ejercicio anterior si se quiere guardar el resultado de las
elecciones que cada alumno hizo al realizar la encuesta. Analice las opciones
disponibles y discuta sus pro y sus contra
9. Se desea guardar
la información de llamadas telefónicas para poder procesarlas
posteriormente. Cada llamada tiene: el abonado origen, el abonado destino, el momento
de inicio y de fin de la llamada y por último el estado de la llamada: 'A' activa, 'I' inactiva
que dice si la comunicación se debe facturar o no Cada abonado tiene datos particulares:
el
número,
el
nombre
y
el
domicilio
completo.
Las consultas a realizar son: listado de llamadas de un abonado en particular, conocer si
entre dos abonados hubo una llamada en algún rango de tiempo.
a) Realice los esquemas para: Key Value Databases, Document Databases y Column
Oriented Databases
10.
Realizar un esquema para el ejercicio 7 adecuado a Column Oriented Databases
11.
“El Sopapo”
La Cooperativa de Payasos “El Sopapo” coordina las actuaciones de sus payasos
integrantes. Las payasos tienen sus propias actuaciones (pueden tener más de una).
Cada actuación pertenece a un único payaso y se pone en escena en un circo. De acuerdo
al convenio que firmó la cooperativa con la Asociación de Circos Criollos, las actuaciones
son exclusivas para cada circo, pero en cada circo puede haber más de una actuación, aún
correspondiendo a distintos payasos.
Cada actuación tiene un nombre y un precio de entrada.
a) Realice un modelo de entidad relación y los esquemas para: Key Value Databases,
Document Databases y Column Oriented Databases
Página 4 de 7
Base de Datos
Práctica
NoSQL
12.
Dado el siguiente MER realizar por lo menos 3 diferentes esquemas para Document
Databases
13.
Dado el siguiente MER realizar los esquemas para : Key Value, Databases, Document
Databases y Column Oriented Databases
Base de Datos
Práctica
NoSQL
14.
Dado el siguiente MER realizar los esquemas para : Key Value, Databases, Document
Databases y Column Oriented Databases
Base de Datos
Práctica
NoSQL
15.
Dado el siguiente MER sobre un sitio WEB de libros realizar los esquemas para
Databases, Document Databases y Column Oriented Databases
Descargar