Bases de Datos y Archivos
Análisis y Diseño de Sistemas
Organización de Datos
ID Normalización Tabulación Seguridad Ubicación Límites de recursos Mantenimiento
Consideraciones de Archivos
Formato: XML, TXT, JSON, SCRIPT, INC, XLS, DOC, PDF, Comprimido (bzip, zip, 7zip, gzip, rar)
Ubicación› Diferente para archivos subidos por el
usuario y archivos de sistema› Verificar los permisos de la carpeta (0700)
Nomenclatura› Renombrar con consecutivos: img_1.jpg
Spooling
Archivos temporales Por convención en /tmp Ejemplo: File uploads en PHP Asegurarse de que el sistema borrará
los archivos o crear un Cron Job
NO IMPRIMA
Bases de Datos
Base de Datos Normalizada
Ids Llaves primarias (Primary Keys) Llaves secundarias (Foreign Keys) Indices Tablas intermedias Vistas Procedimientos almacenados
Formas Normales
Bases de datos relacionales Busca que cada tabla de la base de
datos llegue a su HNF (Highest Normal Form)
Se busca› Evitar la redundancia de los datos› Disminuir problemas de actualización› Proteger la integridad de los datos
Formas Normales
1NF, 2NF, 3NF› Atributos no key dependen solo del
primary key 4NF y 5NF
› Representación de relaciones 1:M y M:M 6NF
› Si hay más de 2 PK’s en una tabla, crear tablas aparte con estas
1NF
ID Cliente Nombre Apellido Teléfono
123 Rachel Ingram 555-861-2025
456 James Wright 555-403-1659555-776-4100
789 Cesar Dure 555-808-9633
ID Cliente
Nombre
Apellido
Teléfono 1
Teléfono 2
Teléfono 3
123 Rachel Ingram555-861-2025
456 James Wright555-403-1659
555-776-4100
789 Cesar Dure555-808-9633
Cada celda de la tabla debe contener solo un dato, y no puede haber filas duplicadas.
1NF
ID Cliente Nombre Apellido
123 Rachel Ingram
456 James Wright
789 Cesar Dure
ID Cliente Teléfono
123 555-861-2025
456 555-403-1659
456 555-776-4100
789 555-808-9633
2NF Dada una clave primaria y cualquier atributo que no sea un
constituyente de la clave primaria, el atributo no clave depende de toda la clave primaria en vez de solo de una parte de ella.
ID curso ID Semestre Aula Nombre Curso
IT101 2014-1 100 Programming
IT101 2014-2 100 Programming
IT102 2014-1 200 Databases
IT102 2013-1 150 Databases
IT103 2014-2 120 Web Design
2NFID curso ID Semestre Aula
IT101 2014-1 100
IT101 2014-2 100
IT102 2014-1 200
IT102 2013-1 150
IT103 2014-2 120
ID curso Nombre Curso
IT101 Programming
IT102 Databases
IT103 Web Design
3NF Cada columna de la tabla se relaciona solo con el primary key de
la tabla.
ID curso ID Semestre Aula Id Profesor Nombre
Profesor
IT101 2014-1 100 332 Mr Jones
IT101 2014-2 100 332 Mr Jones
IT102 2014-1 200 495 Mr Bentley
IT102 2013-1 150 332 Mr Jones
IT103 2014-2 120 242 Mr Smith
3NF
ID curso ID Semestre Aula Id Profesor
IT101 2014-1 100 332
IT101 2014-2 100 332
IT102 2014-1 200 495
IT102 2013-1 150 332
IT103 2014-2 120 242
Id Profesor Nombre Profesor
332 Mr Jones
495 Mr Bentley
242 Mr Smith
Resumen NF
1NF: Un valor por columna 2NF: Todas las columnas que no sean
PK deben depender de la PK completa Todas los columnas que no sean PK
deben depender DIRECTAMENTE del PK
Ejemplo 1
Ejemplo 2
Ejemplo 3
Top Related