Guía de actividades y rúbrica de evaluación – Fase 2 Uso de
lenguaje procedimental
Identificar los conceptos relacionados con el lenguaje procedimental en
un DBMS que optimice la gestión de la base de datos para brindar
soporte la toma de decisiones de una organización.
Estudiante
Rosember Erminson Huertas Buitrago
Profesor
Mario Luis Ávila Perez
Curso: Administración de Bases de Datos
Universidad Nacional Abierta y a Distancia
Vicerrectoría Académica y de Investigación
Código: 202016902
Septiembre 2024
Tabla de contenido
Introducción
Un sistema de administración de bases de datos (DBMS) es un software
que permite crear y gestionar bases de datos. Facilita a usuarios y
programadores la creación, recuperación, actualización y eliminación de
datos, actuando como interfaz entre la base de datos y los usuarios,
garantizando organización y accesibilidad.
El DBMS gestiona datos, el motor de acceso y modificación, y el esquema
que define la estructura lógica de la base de datos.
Objetivo
Identificar conceptos del lenguaje procedimental en DBMS para optimizar
gestión y decisiones organizacionales.
Resultados
Pregunta seleccionada
e) ¿Qué estrategias alternativas para abordar el problema de demoras en
las consultas, considerando factores como la escalabilidad y la
disponibilidad de recursos?
El problema de las demoras en las consultas a nivel de bases de datos es
fundamental elegir sistemas que ofrezcan alto rendimiento, escalabilidad
y optimización de recursos, existen varias alternativas y estrategias que
pueden ser exploradas en función de las necesidades específicas de la
organización tales como:
1. Bases de Datos SQL Distribuidas
Google Spanner, CockroachDB, estas ofrecen transacciones ACID
distribuidas y alta disponibilidad global. Permiten escalar horizontalmente
a múltiples nodos sin perder consistencia. Ideal para aplicaciones que
requieren alta disponibilidad y escalabilidad global sin sacrificar la
integridad de los datos, pueden manejar grandes volúmenes de datos y
altas tasas de transacciones.
2. Bases de Datos NoSQL
MongoDB, Cassandra, Couchbase, son adecuadas para datos no
estructurados o semiestructurados y permiten escalar horizontalmente de
manera eficiente. Ofrecen diferentes modelos de datos, como
documentos, pares clave-valor o grafos, pueden manejar grandes
volúmenes de datos con alta velocidad de escritura y lectura. MongoDB,
por ejemplo, es ideal para registros de pacientes o sistemas de gestión de
citas con datos variados y en constante evolución.
3. Bases de Datos en Memoria
Redis, Memcached, almacenan datos en la memoria RAM, lo que permite
tiempos de acceso muy rápidos, ideales para gestionar colas de trabajo o
almacenamiento temporal de datos que necesitan acceso en tiempo real,
como listas de espera de pacientes, consultas en tiempo real o cachés de
información frecuentemente solicitada.
8. Sistemas de Gestión de Datos en la Nube
Amazon Aurora, Google BigQuery, Azure Cosmos DB, ofrecen alta
escalabilidad y disponibilidad gestionada por proveedores en la nube, con
capacidad de auto escalado y replicación global, y permiten escalar según
la demanda, ideal para instituciones que buscan flexibilidad y menor
complejidad de administración.
Estrategias de Optimización Complementarias
Indexación Eficiente y Particionamiento de Datos:
● Diseñar índices y particiones adecuadas para mejorar el
rendimiento de consultas complejas y minimizar los tiempos de
respuesta.
● Distribuir datos según el patrón de acceso para evitar cuellos de
botella en nodos específicos.
Caché y Almacenamiento Temporal:
● Implementar sistemas de caché como Redis para almacenar
temporalmente resultados de consultas frecuentes o datos que
cambian poco.
● Utilizar bases de datos en memoria para operaciones de lectura
intensiva.
Balanceo de Cargas y Replicación:
● Configurar balanceadores de carga para distribuir las consultas
entre múltiples instancias de la base de datos.
● Utilizar replicación para mejorar la disponibilidad y el rendimiento
en lecturas.
Las elecciones del sistema de base de datos y las estrategias de
optimización deben estar alineadas con la naturaleza de las consultas, el
volumen de datos y las necesidades de escalabilidad específicas de la
organización. Sotirios Zygiaris. (2018).
Evidencia de La ejecución de los scripts SQL
CREACIÓN DE TABLAS
Registros en las tablas
DEPARTAMENTOS
EMPLEADOS
PERMISOS VACACIONES
SALARIOS HISTORICOS
EVALUACION DE DESEMPEÑO
CONCEPTOS
CONCEPTOS SALARIO
PERIODOS
EMPLEADOS VACACIONES
Cree una función almacenada que devuelva valor a pagar
para un periodo determinado de un empleado. el periodo de
liquidación debe ser mensual.
Crea una función que calcule el tiempo total de vacaciones
tomadas por un empleado en un año específico.
Ejercicio de Cursores: Crea un cursor que recorra los
empleados y calcule el salario total que la empresa ha
pagado a cada empleado en un año específico.
Crea un trigger que, al insertar un nuevo registro en la tabla
PERMISOS_VACACIONES, por disfrute de vacaciones,
actualice automáticamente el saldo de vacaciones disponible
para el empleado para ese año.
Ejercicio de Trigger: Crea un trigger que, al actualizar el
salario de un empleado en la tabla EMPLEADOS, registre
automáticamente el cambio en la tabla
SALARIOS_HISTORICOS.
TABLA EMPLEADOS
EJECUTAR UPDATE TABLA SALARIOS_HISTORICOS
Optimización de Consultas: corrige la siguiente consulta
ineficiente que está afectando el rendimiento del sistema.
La consulta debe obtener la lista de empleados que han
recibido un aumento salarial en el último año, y muestra
cual es la cantidad aumentada.
Ejercicio de Funciones: Crea una función que devuelva el
promedio de las puntuaciones de evaluación de desempeño
de todos los empleados en un año determinado
CALCULARA Y DEVOLVERA EL PROMEDIO DE LAS PUNTUACIONES
DE EVALUACION DE DESEMPEÑO
Crea un trigger que evite que se registre o ingrese un
empleado entre las 8 pm y las 7 am.
CUANDO SE REGISTRAN EMPLEADOS DESPUES DE LAS 8 PM EL
TIGGER SE DISPARA Y NO PERMITE REGISTROS
Conclusión
Un DBMS permite que usuarios y programadores accedan a los mismos
datos, mejorando la integridad y protección de la información. Facilita el
uso compartido de datos, evitando la creación de múltiples archivos y
proporcionando un almacén central accesible para varios usuarios de
forma controlada.
Bibliografía
[Link]
1gL4KI6B_ff2bNqs2_ivYUI3WRqv6U1qK
Martínez López, F. J. y Gallegos Ruiz, A. (2017). Programación de bases de
datos relacionales. RA-MA Editorial. p. 206-212. [Link]
[Link]/es/ereader/unad/106525?page=207
Ries, S. (2013). OCA Oracle Database 11g: Database Administration I: a
Realworld Certification Guide: Learn How to Become an Oracle certified
Database Administrator. Packt Publishing. p. 180-205.
[Link]
m/[Link]?
direct=true&db=nlebk&AN=548268&lang=es&site=edslive&scope=site&
ebv=EB&ppid=pp_180
Sotirios Zygiaris. (2018). Database Management Systems : A Business-
Oriented Approach Using ORACLE, MySQL and MS Access: Vol. First
edition. Emerald Publishing Limited. p. 209-212
[Link]
m/[Link]?direct=true&db=nlebk&AN=1813751&lang=es&site=eds-
live&scope=site&ebv=EB&ppid=pp_209
Avila Pérez, M. (3,07,2021). O.V.I. Gestión de esquemas y Objetos.
[Archivo de Video]. [Link]