You are on page 1of 6

Universidad Autónoma Metropolitana

Bases de Datos Distribuidos

Entregable Parcial 1

Integrantes:

Díaz Martínez Alan Guillermo


López Vázquez Aarón

Fecha: 20/02/2017
Entregable Parcial 1

1.-Características de del sistema (seguridad,disponibilidad,flexibilidad).

-Seguridad: contará con un sistema de autenticación de usuario por medio de una contraseña.

-Disponibilidad: En la primera etapa manejaremos una BD de manera centralizada, por lo que


toda la información se encuentra de manera local.

-Integridad: Los datos se encuentran en una sola máquina y esto evitará la inconsistencia de
los datos.

2.-Diseño de las vistas (tipos de actualizaciones y lecturas de las bases de datos desde la
interfaz).

-Dentro del diseño del modelo de la BD se utilizaron 4 tablas


(Reporte,Delegación,Delito,Colonia) de las cuales sólo la tabla de “Reporte” será dinámica,
ya que se podrán actualizar datos, mientras las demás tablas serán estáticas, ya que su
contenido siempre será el mismo.

Ejemplos de consultas directas:

i.-Esta primera consulta permite al usuario buscar todos los delitos con id = ‘1’ y que ocurrieron
el primer día de enero del año 2013.

SELECT *FROM reporte where id_delegacion = '1' and fecha_delito = '2013-01-01'

ii.-Esta segunda consulta permite al usuario buscar todos los delitos que ocurrieron el primer
mes del primer día del año 2013, en el cual el delito fue “homicidio” o “violación”.

SELECT nombre_delito, fecha_delito FROM delito, reporte where (nombre_delito =


'VIOLACION' or nombre_delito = 'HOMICIDIO') and fecha_delito = '2013-01-01'

iii.-Esta tercera consulta permite al usuario buscar todos los delitos que ocurrieron en las
calles de “Torres” y “Laminadora”.

SELECT *FROM reporte where (calle1 = ‘Torres’ or calle2 = ‘Laminadora’’) or (calle1 =


‘Laminadora or calle2 = ‘Torres’’)

iv.-Esta cuarta consulta permite al usuario buscar todos los delitos que ocurrieron en la
delegación “azcapotzalco”.

SELECT nombre, nombre_delito from delito, reporte where nombre = 'AZCAPOTZALCO'


AND (nombre_delito = 'LESIONES POR ARMA DE FUEGO' OR nombre_delito =
'HOMICIDIO' OR nombre_delito = 'VIOLACION' OR nombre_delito = 'ROBO A NEGOCIO
C/V')
v.-Esta quinta consulta permite al usuario buscar todos los delitos que ocurrieron en la colonia
“clavería”.

SELECT nombre, nombre_delito from delito, reporte where nombre = ‘CLAVERIA’' AND
(nombre_delito = 'LESIONES POR ARMA DE FUEGO' OR nombre_delito = 'HOMICIDIO' OR
nombre_delito = 'VIOLACION' OR nombre_delito = 'ROBO A NEGOCIO C/V')

3.-Diseño conceptual global (diagrama E-R).

4.-Diseño de la implementación o fragmentación.

Fragmentaciones mixtas

Fragmentación vertical con información relacionada al tipo de delito, fecha, delegación y


colonia.
FV1= π id_reporte, id_delito, fecha_delito, id_delegacion, id_colonia (Reporte)
Fragmentación con información del reporte, indicando sólo las delegaciones a consultar por
medio del id de la delegación.
FV1H1= σ id_delegacion= “1” (FV1)
FV1H2= σ id_delegacion= “2” (FV1)
FV1H3= σ id_delegacion= “3” (FV1)
FV1H4= σ id_delegacion= “4” (FV1)
Fragmentación con información del reporte, indicando sólo las colonias a consultar por medio
del id de la colonia.
FV1H5= σ id_colonia= “1” (FV1)
FV1H6= σ id_colonia= “2” (FV1)
FV1H7= σ id_colonia= “3” (FV1)
FV1H8= σ id_colonia= “4” (FV1)
FV1H9= σ id_colonia= “5” (FV1)
FV1H10= σ id_colonia= “6” (FV1)
FV1H11= σ id_colonia= “7” (FV1)
FV1H12= σ id_colonia= “8” (FV1)
FV1H13= σ id_colonia= “9” (FV1)
FV1H14= σ id_colonia= “10” (FV1)
Fragmentación con información del reporte, indicando el tipo de delito a consultar por medio
del id del delito.
FV1H15= σ id_delito= “1” (FV1)
FV1H16= σ id_delito= “2” (FV1)
FV1H17= σ id_delito= “3” (FV1)
FV1H18= σ id_delito= “4” (FV1)
FV1H19= σ id_delito= “5” (FV1)
FV1H20= σ id_delito= “6” (FV1)

5.-Documento con la descripción de reglas de la fragmentación, asignación y localización de


fragmentos.

6.-Script en SQL, implementación de la base de datos.

SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0;


SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS,
FOREIGN_KEY_CHECKS=0;
SET @OLD_SQL_MODE=@@SQL_MODE,
SQL_MODE='TRADITIONAL,ALLOW_INVALID_DATES';

-- -----------------------------------------------------
-- Schema Delitos
-- -----------------------------------------------------
DROP SCHEMA IF EXISTS `Delitos` ;
-- Schema Delitos
-- -----------------------------------------------------
CREATE SCHEMA IF NOT EXISTS `Delitos` DEFAULT CHARACTER SET utf8 ;
USE `Delitos` ;
-- -----------------------------------------------------
-- Table `Delitos`.`Delegacion`
-- -----------------------------------------------------
DROP TABLE IF EXISTS `Delitos`.`Delegacion` ;
CREATE TABLE IF NOT EXISTS `Delitos`.`Delegacion` (
`id_delegacion` INT NOT NULL,
`nombre` VARCHAR(45) NULL,
PRIMARY KEY (`id_delegacion`))
ENGINE = InnoDB;
-- -----------------------------------------------------
-- Table `Delitos`.`Colonia`
-- -----------------------------------------------------
DROP TABLE IF EXISTS `Delitos`.`Colonia` ;

CREATE TABLE IF NOT EXISTS `Delitos`.`Colonia` (


`id_colonia` INT NOT NULL,
`nombre` VARCHAR(45) NULL,
PRIMARY KEY (`id_colonia`))
ENGINE = InnoDB;
-- -----------------------------------------------------
-- Table `Delitos`.`Delito`
-- -----------------------------------------------------
DROP TABLE IF EXISTS `Delitos`.`Delito` ;

CREATE TABLE IF NOT EXISTS `Delitos`.`Delito` (


`id_delito` INT NOT NULL,
`nombre_delito` VARCHAR(45) NULL,
PRIMARY KEY (`id_delito`))
ENGINE = InnoDB;
-- -----------------------------------------------------
-- Table `Delitos`.`Reporte`
-- -----------------------------------------------------
DROP TABLE IF EXISTS `Delitos`.`Reporte` ;

CREATE TABLE IF NOT EXISTS `Delitos`.`Reporte` (


`id_reporte` INT NOT NULL,
`id_delito` INT NULL,
`fecha_delito` DATE NULL,
`calle1` VARCHAR(45) NULL,
`calle2` VARCHAR(45) NULL,
`coord_x` VARCHAR(45) NULL,
`coord_y` VARCHAR(45) NULL,
`id_delegacion` VARCHAR(45) NULL,
`id_colonia` VARCHAR(45) NULL,
`Delegacion_id_delegacion` INT NOT NULL,
`Colonia_id_colonia` INT NOT NULL,
`Delito_id_delito` INT NOT NULL,
PRIMARY KEY (`id_reporte`, `Delegacion_id_delegacion`, `Colonia_id_colonia`,
`Delito_id_delito`),
INDEX `fk_Reporte_Delegacion_idx` (`Delegacion_id_delegacion` ASC),
INDEX `fk_Reporte_Colonia1_idx` (`Colonia_id_colonia` ASC),
INDEX `fk_Reporte_Delito1_idx` (`Delito_id_delito` ASC),
CONSTRAINT `fk_Reporte_Delegacion`
FOREIGN KEY (`Delegacion_id_delegacion`)
REFERENCES `Delitos`.`Delegacion` (`id_delegacion`)
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `fk_Reporte_Colonia1`
FOREIGN KEY (`Colonia_id_colonia`)
REFERENCES `Delitos`.`Colonia` (`id_colonia`)
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `fk_Reporte_Delito1`
FOREIGN KEY (`Delito_id_delito`)
REFERENCES `Delitos`.`Delito` (`id_delito`)
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB;

SET SQL_MODE=@OLD_SQL_MODE;
SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS;
SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS;

You might also like