Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Proyecto BDD Final
Proyecto BDD Final
1
Índice
Tabla de contenido
Introducción .......................................................................................................................................3
Proceso ..............................................................................................................................................4
Entidades y clasificación de atributos ................................................................................................5
Diagrama entidad-relación .................................................................................................................9
Código de Arrachera Vip ..................................................................................................................10
Modelo relacional ............................................................................................................................11
Tablas con datos...............................................................................................................................12
Modelo entidad-relación con datos .................................................................................................14
Base de datos distribuidas................................................................................................................15
Distribución de los datos.......................................................................................................19
Metodología del procesamiento de consultas distribuidas. .....................................21
Estrategias de procesamiento de consultas distribuidas. ........................................21
Características de los procesadores de consultas .....................................................22
Arquitectura del procesamiento de consultas .............................................................22
2
Introducción
Objetivo: Elaborar una base de datos donde se pueda almacenar y controlar la
información de un restaurante de comida rápida de manera eficaz, permitiendo
mostrar los tipos de atributos que se usan.
Arrachera VIP
Este restaurante de isla. Ha tenido un crecimiento sumamente significativo tanto en
su manera de laborar como en las sucursales. Como en la producción de sus
platillos, lo que ha dificultado la manipulación de su información económica,
haciendo difícil recabar estos datos que nos ayudan a determinar si tiene una
pérdida o ganancia.
Se elaboró una base de datos para generar tablas y así guardar los datos relevantes
para poder manipular y controlar esta información de manera correcta.
• Tendrá una tabla donde se guardarán los datos de cada trabajador, donde
principalmente se almacenará sus datos generales como, nombre, apellidos,
teléfono, dirección y monto nómina.
• El campo llamado “monto de nómina” será registrado en una tabla llamada
“pérdidas y ganancias”
• La tabla “pérdidas y ganancias” se almacenera las pérdidas y ganancias
económicas
para comprobar que tan viable es su remuneración. Añadiendo campos en el
aspecto de pérdidas que serían los datos de, monto de pago de nómina,
compra de mercancía
Y por el otro lado de ganancias los datos recabados serán; ventas
• Se tendrá otra tabla de inventario, donde se llevará el control de toda la
mercancía que se tenga en la bodega
• De igual manera se contendrá la tabla clientes, donde se almacenera los
datos generales de estos mismos
• También se tendrá el control en una tabla donde se registre las compras que
se hacen con los proveedores.
3
Proceso
4. Se almacenar en una tabla los datos particulares de los clientes como; De igual
manera se contendrá la tabla clientes, donde se almacenera los datos generales
como: Id, Núm. de visita, Nombres, Apellido p, Apellido m, Teléfono, Dirección,
Edad, Núm. de visita
4
Entidades y clasificación de atributos
Trabajadores
Pérdidas y ganancias
Pérdidas Pago de Compra de Ganancia Ventas
nomina mercancía
1 Compuesto Compuesto 1 Compuesto
2 2
3 3
Inventario
Mercancía Piezas Cajas
Compuesto Simple Simple
Clientes
Id Núm. de Nombres Apellido Apellido Teléfono Dirección Edad
visita P M
Identificativo Compuesto Compuesto Simple Simple Multivalorado Compuesto Simple
Proveedores
Id Tipo de pago Fecha de Precio Piezas
entrega
Identificativo Simple Compuesto Simple Simple
5
Tabla trabajadores
Documentación de las tablas
Objetivo: Almacenar información de los empleados de la arrachera vip, con
la finalidad de llevar un control de los datos del empleado.
Llave primaria: Idtrabajador, monto de nomina
Llave extranjera: Fkmontodenomina, se relaciona con la tabla pérdidas y
ganancias
6
Tabla inventario
Objetivo: Almacenar la información del inventario
Campo Tipo de dato Tamaño Descripción
Mercancía Varchar (20) Registro del tipo
de mercancía
Piezas Int Número de piezas
Cajas Int Numero de cajas
Tabla Clientes
Objetivo: Almacenar la información de los clientes que tengan mucha
constancia en las visitas.
7
Tabla Proveedores
Objetivo: Almacenar todos los proveedores que surten mercancía a nuestro
lugar de trabajo
Campo Tipo de dato Tamaño Descripción
Id Serial Clave única con
la que se
identifica
Tipo de pago Simple Tipo de pago;
tarjeta o efectivo
Fecha de Varchar (20) Fecha de la
entrega entrega de
mercancía
Precio Varchar (20) Precio de cada
bien adquirido
Piezas Int Numero de
piezas que se
adquieren del
proveedor
8
1 4
ID
Diagrama entidad-relación
Clientes Numero de visita
ID
Trabajadores Nombres Nombres
Apellido P
Apellido P
Apellido M
Apellido M
Teléfono
Teléfono
Dirección
Edad
2
Nomina Dirección
Perdidas y Perdidas
Ganancias
Nomina 5
Compra de ID
mercancía Proveedores
Ganancia Tipo de pago
Venta
3 Fecha de entrega
Mercancia
a Precio
Inventario Piezas
Piezas
Cajas
9
Código de Arrachera Vip
Enter password: ********
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 77
Server version: 8.0.17 MySQL Community Server - GPL
Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved.
10
Modelo relacional
Trabajadores
Clientes
Id Núm. Visita
Nombres Nombres
Apellido P Apellido P
Apellido M Apellido M
Teléfono Teléfono
Dirección Dirección
Nomina
Edad
Pérdidas y ganancias
Proveedores
Perdidas
Nominas
Id
Compra de mercancía
Tipo de pago
Ganancias
Fecha de entrega
Ventas
precio
Piezas
Inventario
Mercancía
Piezas
Cajas
11
Tablas con datos
12
Id Num. Nombres Apellido P Apellido M Telefono Direccion Edad
De
vistia
1 500 Sofia Parker Lup 66557743 Ixtapaluca 45
2 222 Monse Monst Roel 3233452 Ixtapaluca 45
3 111 Brenda Diamente Carrillo 342342344 Ixtapaluca 45
4 56 Aylin Spyderman Cruz 5556664423 Ixtapaluca 67
5 3 Aleja Hosborng Sanchez 55667788 Ixtapaluca 68
6 555 Pedro Gonzalez Lopez 555443322 San 68
buena
7 666 Roberto Josefa Claudi 555463534 San 68
buena
8 8899 Ale Ramirez Ortiz 554566732 San 53
buena
9 33 Monica - Maniel 555463335 San 22
buena
10 22 Kike - Cusco +5234556654 San 19
buena
13
Modelo entidad-relación con datos
Id Nombres Apellido Apellido Teléfono Dirección Monto de
P M nomina
123-3gs Jose Ramirez Castillo 3443212323 Av ojo sta $1250
123-sdg Alberto Josefa Josefa 2434234234 Av ojo sta $1250
21312-jhgj Raimunda Ochoa Jamaica 12312423 Av ojo sta $1250
14
Base de datos distribuidas
Conceptos básicos
Una base de datos distribuida o BDD consiste en varias bases de datos situadas en
diferentes espacios físicos o lógicos, conectadas entre sí por un sistema de
comunicaciones.
Las bases de datos distribuidas o Distributed Database Management
System (DDBMS) se caracterizan por almacenar la información en varias
computadoras conectadas entre sí, a las cuáles el usuario puede acceder desde
cualquier sitio como si se tratara de una red local.
Una BDD (Base de Datos Distribuida) es un conjunto de Bases de Datos
relacionadas lógicamente, pero que se encuentran físicamente localizadas en varios
“sitios” de la red.
El soporte completo para las BDD implica que una sola aplicación debe ser capaz
de operar de manera transparente sobre los datos que están dispersos en bases de
datos diferentes, administradas por distintos DBMS, ejecutadas en máquinas
diferentes, manejadas por sistemas operativos diferentes y conectadas a una
variedad de redes de comunicación, donde el término transparente significa que la
aplicación opera desde un punto de vista lógico como sin todos los datos fueran
manejados por un solo DBMS y ejecutados en una sola máquina.
CARACTERÍSTICAS
Cuenta con autonomía local: Los sitios distribuidos deben ser autónomos, es decir
que todas las operaciones en un sitio dado se controlan en ese sitio, pues cuenta
con su propio SGBD.
Réplicas: Se realizan copias de los datos las cuales se almacenan en los sitios que
las requieren. De esta forma el usuario efectúa operaciones sobre la réplica.
Fragmentación: Es deseable por razones de desempeño, los datos pueden
almacenarse en la localidad donde se utilizan con mayor frecuencia de manera que
la mayor parte de las operaciones sean solo locales y se reduzca el tráfico en la red.
No dependencia de un sitio central: No debe haber dependencia de un sitio central
para obtener un servicio.
Transparencia de localización de datos: No debe ser necesario que los usuarios
sepan dónde están almacenados físicamente los datos, sino que el usuario debe
verlo como si solo existiera un sitio local.
15
Manejo distribuido de transacciones: Tiene dos aspectos principales, el control de
recuperación y el control de concurrencia.
Independencia con respecto a la red: Se puede leer o escribir datos localizados en
diferentes nodos de la red.
Independencia del sistema operativo, hardware y DBMS: Para el usuario final no
importa que los datos estén almacenados en sitios en los que no se maneje el
mismo sistema operativo de su nodo local, el mismo hardware o DBMS.
Dos tipos de transacciones: Locales, cuando se accede a los datos del único sitio
donde se inició la transacción. Globales, cuando se accede a datos de sitios
distintos al sitio donde se inició la transacción
Uso de las BDD en las organizaciones
Las principales utilidades que ofrece una base de datos a la empresa son:
Agrupar y almacenar todos los datos de la empresa en un único lugar.
Facilitar que se compartan los datos entre los diferentes miembros de la empresa.
Evitar la redundancia y mejorar la organización de nuestra actividad.
Visualizar los datos de un cliente o potencial: interacciones, ventas, datos de
contacto.
Conectar los datos de operaciones, facturación e interacciones con cada cliente o
potencial
Activar campañas de marketing o tareas
Si una Base de Datos se gestiona adecuadamente, la organización obtendrá
diferentes ventajas. Aumentará su eficacia, habrá trabajos que se realicen con
mayor rapidez y agilidad debido a la simplificación de los mismos, podremos
mejorar la seguridad de los datos que almacenamos, y con todos estos factores,
maximizaremos los tiempos y por tanto, se producirá una mejora en la productividad.
Estas funcionalidades aportarán un valor añadido a la empresa, ya que con una
base de datos formulada correctamente, conseguiremos que la información y el
conocimiento sean los mayores activos de la compañía, lograremos sacar el
máximo rendimiento a las competencias de nuestros colaboradores, así como
averiguar datos de nuestros clientes potenciales. Por último, puesto que la
información es poder, cuantos más datos tengamos, mayor será la competitividad
de la compañía.
16
Sistemas de administración de BD
Un Sistema de Administración de Bases de Datos (DBMS) es un software
que permite a una organización centralizar los datos, administrarlos en forma
eficiente y proporcionar acceso a los datos almacenados mediante un
programa como aplicación. El DBMS actúa como una interfaz entre los
programas de aplicación y los archivos de datos físicos. Cuando el programa
de aplicación solicita un elemento de datos, como el sueldo bruto, el DBMS
lo busca en la base de datos y lo presenta al progr ama de aplicación. Si
utilizara archivos de datos tradicionales, el programador te ndría que
especificar el tamañoy formato de cada elemento de datos utilizados en
el programa y después de decir a la computadora en dónde están ubicados.
El DBMS libera al programador o al usuario fin al de la tarea de comprender
en dónde y cómo están almacenados los datos en realidad, al separar las
vistas lógica y física de los datos. La vista lógica presenta los datos según la
manera en que los perciben los usuarios finales o los especialistas de
negocios, mientras que la vista física muestra la verdadera forma en que
están organizados o estructurados los datos en los medios de
almacenamiento físicos.
El software de administracion de bases de datos sese encarga de que la base
de datos físicos esté disponible para las diferentes vistas lógicas requeridas
por los usuarios.
OPERACIONES DE UN DBMS RELACIONAL
Las tablas de bases de datos relacionales se pueden combinar con facilidad
para ofrecer los datos requeridos por los usuarios, siempre y cuando dos
tablas cualquiera compartan un elemento de datos
comunes. Supongamos que queremos encontrar en esta base de datos.
DBMS ORIENTADO A OBJETOS
En la actualidad y en el futuro, muchas aplicaciones se mantendrán en las
bases de datos que pueden almacenar y recuperar no solo números
y caracteres estructurados, sino también dibujos, imágenes, fotografías, voz
y video en movimiento completo. Los DBMS diseñados para organizar datos
estructurados en filas y columnas no se adaptan bien al manejo de
aplicaciones basadas en gráficos o multimedia. Las bases de datos
orientadas a objetos son más adecuadas para este propósito. Un DBMS
orientado a almacenar los datos y los objetos de procedimiento que actúan
sobre esos datos como objetos que se pueden recuperar y compartir de
manera automática. Los Sistemas de Administración de Base s de Datos
Orientados a Objetos (OODBMS) están ganando popularidad debido a que
se pueden utilizar para manejar
17
Estructura
Dentro de una base de datos, los datos relacionados se agrupan en tablas, cada
una de ellas consiste en filas (también llamadas "tuplas") y columnas, como una
hoja de cálculo.
Para convertir tus listas de datos en tablas, comienza creando una tabla para cada
tipo de entidad, como productos, ventas, clientes y pedidos.
Cada fila de una tabla se llama "registro". Los registros incluyen datos sobre algo o
alguien, como un cliente específico. En cambio, las columnas (también conocidas
como "campos" o "atributos") contienen un único tipo de información que aparece
en cada registro, como las direcciones de todos los clientes enumerados en la tabla.
Con el fin de que los datos sean consistentes de un registro al siguiente, asigna el
tipo de datos apropiado a cada columna. Los tipos de datos comunes incluyen:
1. CHAR - una longitud específica de texto.
2. VARCHAR - texto de longitudes variables.
3. TEXT - grandes cantidades de texto.
4. INT - número entero positivo o negativo.
5. FLOAT, DOUBLE - también puede almacenar números de punto flotante.
6. BLOB - datos binarios.
18
Algunos sistemas de gestión de bases de datos también ofrecen el tipo de datos
denominado "Auto numeración", que genera automáticamente un número único en
cada fila.
A los efectos de crear una visión general de la base de datos, conocida como un
diagrama entidad-relación, no incluiremos las tablas reales, sino que cada tabla se
convertirá en un recuadro del diagrama. El título de cada recuadro debería indicar
que describen los datos en la tabla, mientras que los atributos están enumerados a
continuación, del siguiente modo:
Por último, deberías decidir qué atributo o atributos funcionarán como clave primaria
para cada tabla, si procede. Una clave primaria (PK) es un identificador único para
una entidad determinada, esto significa que puedes seleccionar un cliente concreto
incluso si solo conoces ese valor.
Los atributos seleccionados como claves primarias deben ser únicos, inalterables y
estar siempre presentes (nunca NULL o vacíos). Por este motivo, los números de
pedido y los nombres de usuario son excelentes claves primarias, mientras que los
números de teléfono o direcciones postales no lo son. También puedes usar
múltiples campos conjuntamente como la clave primaria (esto se denomina "clave
compuesta").
Almacenamiento
Originalmente se almacenaba la información de manera centralizada, pero con el
paso del tiempo las necesidades aumentaron y esto produjo ciertos inconvenientes
que no era posible solucionarlos o volverlos eficientes de la forma centralizada.
Estos problemas impulsaron la creación de almacenamiento distribuido, los cuales
hoy en día proveen características indispensables en el manejo de información; es
decir, la combinación de las redes de comunicación y las bases de datos.
Distribución de los datos
Una de las decisiones más importantes que el diseñador de bases de datos
distribuidas debe tomar es el posicionamiento de la data en el sistema y el esquema
bajo el cual lo desea hacer. Para esto existen cuatro alternativas principales:
centralizada, replicada, fragmentada, e híbrida.
Centralizada
Es muy similar al modelo de Cliente/Servidor en el sentido que la BDD está
centralizada en un lugar y los usuarios están distribuidos. Este modelo solo brinda
19
la ventaja de tener el procesamiento distribuido ya que en sentido de disponibilidad
y fiabilidad de los datos no se gana nada.
Replicadas
El esquema de BDD de replicación consiste en que cada nodo debe tener su copia
completa de la base de datos. Es fácil ver que este esquema tiene un alto costo en
el almacenamiento de la información. Debido a que la actualización de los datos
debe ser realizada en todas las copias, también tiene un alto costo de escritura,
pero todo esto vale la pena si tenemos un sistema en el que se va a escribir pocas
veces y leer muchas, y dónde la disponibilidad y fiabilidad de los datos sea de
máxima importancia.
Particionadas
Este modelo consiste en que solo hay una copia de cada elemento, pero la
información está distribuida a través de los nodos. En cada nodo se aloja uno o más
fragmentos disjuntos de la base de datos. Como los fragmentos no se replican esto
disminuye el costo de almacenamiento, pero también sacrifica la disponibilidad y
fiabilidad de los datos. Algo que se debe tomar en cuenta cuando se desea
implementar este modelo es la granularidad de la fragmentación. La fragmentación
se puede realizar también de tres formas:
• Debe ser Completa: Si una relación R se fragmenta en R1,R2, ... , Rn, cada
elemento de la data de R debe estar en algún Ri.
• Debe ser construible: Debe ser posible definir una operación relacional
que a partir de los fragmentos obtenga la relación.
• Los fragmentos deben ser Disjuntos: Si la fragmentación es horizontal
entonces si un elemento e está en Ri este elemento no puede estar en
ningún Rk (para k distinto a i). En el caso de fragmentación vertical es
necesario que se repitan las llaves primarias y esta condición solo se
debe cumplir para el conjunto de atributos que no son llave primaria.
20
Híbrida
Este esquema simplemente representa la combinación del esquema de partición y
replicación. Se particiona la relación y a la vez los fragmentos están selectivamente
replicados a través del sistema de BDD.
Consultas
Una consulta sirve para extraer información de una base de datos. También permite
manipular datos como: agregar, eliminar y cambiar. Por lo que podemos definir que
una consulta es aquella solicitud que se le da a una Base de datos (BDD) para
extraer o manipular datos.
Sin embargo, no solo hay que escribir una “solicitud” aleatoria. Debes escribir tu
consulta basándote en un conjunto de códigos predefinidos, de modo que tu base
de datos pueda entender la instrucción
Metodología del procesamiento de consultas distribuidas.
Primeramente, se debe de contar con heterogeneidad de los datos, para que
puedan ser usados para formular consultas.
▪ BD CENTRALIZADA.
▪ BD DISTRIBUIDA.
Así como también necesitamos contar con:
-Localización de los datos para generar reglas heurísticas.
-Descomposición de consultas en paralelo en cada nodo.
-Reducir la cantidad de datos a transferir en la red.
21
Dado que la ejecución de consultas es un aspecto crítico en el rendimiento de un
DBMS, el procesamiento de consultas ha recibido una gran atención tanto para
bases de datos centralizadas como distribuidas. Sin embargo, el procesamiento de
consultas es mucho más difícil en ambientes distribuidos que en centralizados, ya
que existe un gran número de parámetros que afectan el rendimiento de las
consultas distribuidas.
Disponibilidad
Debe haber una base de datos con alta disponibilidad para asegurarse de que los
datos estén disponibles si se produce una anomalía. Puede introducir una base de
datos con funciones que se adapten a las necesidades de su organización, según
el nivel de protección y los costes asociados.
22
• Ambientales, como la temperatura
• Anomalía de hardware
• Error de software
• Interrupción conectividad de red
• Intervención de usuario
23