Alcance Del ACA - Enero - 19
Alcance Del ACA - Enero - 19
Alcance Del ACA - Enero - 19
Categories
Columna Tipo de Dato Descripción
PK CategoryID Entero INT Identificador único de la categoría
CategoryName Cadena de caracteres VARCHAR Nombre de la categoría
Description Cadena de caracteres VARCHAR Descripción de la categoría
Employees
Columna Tipo de Dato Descripción
PK EmployeeID Entero INT Identificador único del empleado
LastName Cadena de caracteres VARCHAR Apellido del empleado
FirstName Cadena de caracteres VARCHAR Nombre del empleado
BirthDate Fecha DATE Fecha de nacimiento del empleado
Photo Cadena de caracteres VARCHAR Ruta o nombre de archivo de la foto del empleado
Notes Texto TEXT Notas o información adicional sobre el empleado
Shippers
Columna Tipo de Dato Descripción
PK ShipperID Entero INT Identificador único del transportista
ShipperName Cadena de caracteres VARCHAR Nombre del transportista
Phone Cadena de caracteres VARCHAR Número de teléfono del transportista
Suppliers
Columna Tipo de Dato Descripción
FK SupplierID Entero INT Identificador único del proveedor
SupplierName Cadena de caracteres VARCHAR Nombre del proveedor
ContactName Cadena de caracteres VARCHAR Nombre de contacto del proveedor
Address Cadena de caracteres VARCHAR Dirección del proveedor
City Cadena de caracteres VARCHAR Ciudad donde está ubicado el proveedor
PostalCode Cadena de caracteres VARCHAR Código postal del proveedor
Country Cadena de caracteres VARCHAR País donde está ubicado el proveedor
Phone Entero INT Número de teléfono del proveedor
Products
Columna Tipo de Dato Descripción
PK ProductID Entero INT Identificador único del producto
ProductName Texto TEXT Nombre del producto
FK SupplierID Entero INT Identificador único del proveedor
FK CategoryID Entero INT Identificador único de la categoría
Unit Texto TEXT Unidad de medida del producto
Price Decimal FLOAT Precio unitario del producto
Order
Columna Tipo de Dato Descripción
PK OrderID Entero INT Identificador único del pedido
FK CustomerID Entero INT Identificador único del cliente
FK EmployeeID Entero INT Identificador único del empleado
OrderDate Fecha DATE Fecha en que se realizó el pedido
FK ShipperID Entero INT Identificador único de la empresa de envío
OrderDetails
Columna Tipo de Dato Descripción
PK OrderDetailID Entero INT Identificador único del detalle del pedido
FK OrderID Entero INT Identificador único del pedido
FK ProductID Entero INT Identificador único del producto
Quantity Entero INT Cantidad del producto en el detalle del pedido
Modelo entidad relación del Sistema de gestión de Base de
Datos configurado en el entorno local.
a. ¿Cuál es el proveedor que más productos
suministra? Ayuda: Usen las tablas Supplier y
Products
SELECT top(1) Suppliers.SupplierName,COUNT(Products.SupplierID) AS 'Numero de
productos'
FROM Products
INNER JOIN Suppliers on Suppliers.SupplierID=Products.SupplierID
GROUP BY Suppliers.SupplierName
order by COUNT(Products.SupplierID) DESC;
Mediante la queries pudimos conocer que 2
proveedores son los que suministran mas
productos.
SELECT top(5) Suppliers.SupplierName,COUNT(Products.SupplierID) AS 'Numero
de productos'
FROM Products
INNER JOIN Suppliers on Suppliers.SupplierID=Products.SupplierID
GROUP BY Suppliers.SupplierName
order by COUNT(Products.SupplierID) DESC;
¿Cuál empleado ha realizado más ventas?
Ayuda: Usen las tablas Employees, Orders,
OrderDetails
1. Quién lo Va a Utilizar:
Equipo de Desarrollo y DBAs:
Responsabilidad: Los desarrolladores y administradores de bases de datos serán los
principales usuarios de los estándares SQL.
2. Dónde se Va a Publicar:
Repositorio Centralizado:
Responsabilidad: Los estándares se publicarán en un repositorio centralizado accesible para
todos los miembros del equipo.
Formato: Documento en formato markdown.
3. Quién le Hará Mantenimiento a los Estándares:
Administrador de Bases de Datos (DBA) Principal:
Responsabilidad: El DBA principal será responsable de mantener y actualizar los estándares
en función de las evoluciones tecnológicas y las necesidades del equipo.
Frecuencia: Actualizaciones trimestrales, o según sea necesario.
4. Cada Cuánto se Revisarán:
Revisiones Trimestrales:
Responsabilidad: Se realizarán revisiones trimestrales para evaluar la relevancia y eficacia de
los estándares.
Participación: Involucrar a miembros clave del equipo de desarrollo y DBAs.
5. Quién Vigilará que los Estándares se Realicen:
Coordinador de Calidad de Código:
Responsabilidad: Un coordinador de calidad de código será designado para vigilar y asegurar
que los estándares se sigan en los proyectos.
Reportes: Generar informes periódicos sobre el cumplimiento de los estándares.
RAZON ESTANDAR EJEMPLO
USO DE CLAVES Garantiza unicidad y Cada tabla debe tener una clave ID del Estándar: SQL-002
PRIMARIAS facilita la referencia primaria definida, preferiblemente Nombre del Estándar: Uso de Claves Primarias
entre tablas utilizando ID como nombre. Responsable: DBA Principal
Fecha de Creación: 01/01/2023
Fecha de Actualización: 15/04/2023
EVITAR EL USO DE Mejora el rendimiento Especificar columnas específicas en ID del Estándar: SQL-003
SELECT * y evita la transmisión las consultas (SELECT columna1, Nombre del Estándar: Evitar el Uso de SELECT *
innecesaria de datos columna2) en lugar de SELECT * Responsable: Coordinador de Calidad de Código
Fecha de Creación: 01/01/2023
Fecha de Actualización: 15/04/2023
PERIODICIDAD La frecuencia de las copias de seguridad debe equilibrar la necesidad de proteger datos críticos
con el impacto en el rendimiento del sistema se recomienda tener una matriz BIA que permita
evaluar la criticidad de las aplicaciones, estas pueden tener las siguientes periodicidades según la
necesidad del negocio
DIARIAS PARA DATOS CRÍTICOS Almacenar copias de seguridad en ubicaciones seguras y descentralizadas garantiza la
recuperación incluso en situaciones de desastre para esto se recomienda tener un PCN “Plan de
continuidad del negocio” algunas opciones son las siguientes
CAPACITACIÓN CONTINUA • Entrenamiento de Usuarios: Proporciona capacitación continua sobre el uso seguro y eficiente
de roles y permisos.
• Actualizaciones Periódicas: Mantén a los usuarios actualizados sobre las políticas y
procedimientos de acceso
MANTENIMIENTO DE EQUIPOS TÉCNICOS INFORMADOS
MANUALES Y PROCEDIMIENTOS • Documentación Clara: Crea manuales detallados sobre la gestión de roles, explicando cada tipo
y su propósito.
• Acceso Centralizado: Pública documentación en un lugar centralizado y accesible a los equipos
técnicos.
CAPACITACIÓN Y SESIONES • Sesiones de Capacitación Periódica: Organiza sesiones de capacitación regulares para los
INFORMATIVAS equipos técnicos sobre las mejores prácticas de seguridad.
• Demostraciones Prácticas: Realiza demostraciones prácticas de la asignación y gestión de roles.
COMUNICACIÓN PROACTIVA: • Anuncios y Boletines: Envía anuncios y boletines periódicos sobre cambios en políticas de
acceso y nuevas características de seguridad.
• Canal de Comunicación Directa: Establece un canal de comunicación directa para preguntas y
aclaraciones.
PRUEBAS DE PENETRACIÓN: • Simulaciones de Ataques: Realiza pruebas de penetración para identificar posibles
vulnerabilidades en el sistema de acceso.
• Informe de Resultados: Comparte los resultados con el equipo técnico y toma medidas
correctivas según sea necesario.
ACTUALIZACIONES DE POLÍTICAS Revisiones Periódicas: Realiza revisiones regulares de las políticas de acceso y actualizarlas
según sea necesario.
Notificación de Cambios: Asegúrate de notificar a los equipos técnicos sobre cualquier cambio en
las políticas de acceso.
Procedimientos Almacenados
OPTIMIZACIÓN DEL Los procedimientos almacenados se ejecutan directamente en el servidor de la base de datos, lo que reduce la
RENDIMIENTO cantidad de datos transferidos entre el servidor y la aplicación, esta optimización puede mejorar
significativamente el rendimiento de las consultas, especialmente cuando se trabaja con grandes conjuntos de
datos, reduciendo la latencia y mejorando la eficiencia general del sistema
SEGURIDAD DE DATOS Los procedimientos almacenados pueden utilizarse para controlar el acceso a los datos mediante permisos
específicos, proporcionando una capa adicional de seguridad, la seguridad de los datos es crucial en el análisis
de datos, y la capacidad de gestionar permisos a nivel de procedimientos almacenados permite un control más
preciso sobre quién puede acceder y modificar información sensible
REUTILIZACIÓN DE CÓDIGO Los procedimientos almacenados permiten encapsular lógica de negocios compleja que puede ser reutilizada
en varias partes de una aplicación o en diferentes proyectos, la reutilización de código no sólo acelera el
desarrollo, sino que también facilita el mantenimiento, ya que cualquier cambio en la lógica de negocios se
realiza en un único lugar, evitando la duplicación y reduciendo el riesgo de errores
FACILITA EL Al centralizar la lógica de negocios en procedimientos almacenados, cualquier cambio o actualización en la
MANTENIMIENTO base de datos puede realizarse sin afectar la lógica de la aplicación, facilitar el mantenimiento es esencial en el
análisis de datos, donde los cambios en la estructura de la base de datos o en la lógica de procesamiento
pueden ocurrir con frecuencia. La capacidad de actualizar la base de datos sin afectar las aplicaciones que
dependen de ella es valiosa.
CONTROL DE Los procedimientos almacenados permiten la ejecución de transacciones complejas, garantizando la integridad
TRANSACCIONES de los datos mediante la implementación de transacciones atómicas, en el análisis de datos, donde la
consistencia de los datos es fundamental, la capacidad de gestionar transacciones de manera efectiva a través
de procedimientos almacenados es esencial para garantizar la integridad y coherencia de los datos
Lecciones aprendidas
LO QUE ME LLEVÓ DE LA CLASE • Profundización en SQL: Una mejor comprensión de consultas avanzadas y optimización de consultas
SQL.
• Diseño de Bases de Datos: Adquisición de habilidades para diseñar bases de datos eficientes y
normalizadas.
• Gestión de Seguridad de Datos: Comprender la importancia de estrategias de seguridad efectivas.
LO QUE DESEO MEJORAR • Dominio de Tecnologías Emergentes: Actualización constante sobre nuevas tecnologías y tendencias
en bases de datos.
• Práctica Práctica: Mayor aplicación práctica de conceptos aprendidos en proyectos reales.
• Colaboración y Aprendizaje en Grupo: Área de Mejora: Mayor participación en discusiones grupales y
colaboración con compañeros de clase.
CÓMO VOY A LOGRAR ESAS • Planificación del Tiempo:
MEJORAS Cómo Mejorar: Establecer un horario regular para la investigación y estudio de nuevas tecnologías.
• Proyectos Personales:
Cómo Mejorar: Comprometerse a iniciar al menos un proyecto personal que involucre bases de datos
cada trimestre.
• Participación Activa: Cómo Mejorar: Establecer objetivos semanales para contribuir en foros de
discusión y colaborar en al menos un proyecto grupal por trimestre.
COMPROMISO CONMIGO • Establecimiento de Metas:
MISMO(A) PARA LOGRARLO Compromiso: Establecer metas específicas y medibles para la adquisición continua de conocimientos en
bases de datos.
• Seguimiento de Proyectos Personales:
Compromiso: Mantener un registro de proyectos personales y revisar el progreso regularmente.
• Participación Proactiva:
Compromiso: Programar tiempo dedicado a la participación en foros y proyectos grupales, y revisar mi
contribución semanalmente.
Gracias