Conceptos Básicos de Bases de Datos
Una base de datos distribuida (BDD) es un conjunto de múltiples bases de datos lógicamente relacionadas las cuales se encuentran distribuidas en diferentes espacios lógicos (pej. Un servidor corriendo 2 máquinas virtuales) e interconectados por una red de comunicaciones. Dichas BDD tienen la capacidad de realizar procesamiento autónomo, esto permite realizar operaciones locales o distribuidas. Un sistema de Bases de Datos Distribuida (SBDD) es un sistema en el cual múltiples sitios de bases de datos están ligados por un sistema de comunicaciones de tal forma que, un usuario en cualquier sitio puede acceder los datos en cualquier parte de la red exactamente como si estos fueran accedidos de forma local.
Un sistema distribuido de bases de datos se almacenan en varias computadoras. Los principales factores que distinguen un SBDD de un sistema centralizado son los siguientes:
• Hay múltiples computadores, llamados sitios o nodos.
• Estos sitios deben de estar comunicados por medio de algún tipo de red de comunicaciones para transmitir datos y órdenes entre los sitios.
Ejemplos de gestores para base de datos distribuida tenemos mySQL, SQL server, Oracle, informix, sybase, etc
¿Cuales son los conceptos básicos que debe manejar un DBA?
Luego de desempolvar algunos libros de mi época de estudiante, hacer un poco de research por Internet y consultarle a los expertos que conozco, me decidí a escribir este articulo esperando que le sea de utilidad a mi amigo y a quienes tengan interés en dedicarse al área de Bases de Datos
Por lo extenso del tema, lo voy a dividir en 2 o 3 artículos que iré publicando dentro de la semana.
1. ¿Que es un RDBMS?
RDBMS es la sigla para Relational Data Base Management System. Básicamente son sistemas que mantienen registros de datos e índices en las tablas. Las relaciones pueden crearse y mantenerse a través y dentro de las tablas. En una BD relacional, las relaciones entre los datos se expresan en forma de tablas. La interdependencia entre estas tablas se expresa en valores en vez de punteros. Esto permite que los datos sean mas independientes unos de otros. Un RDBMS es capaz de combinar los datos desde distintos archivos, entregando herramientas para el uso de los datos.
2. ¿Cuales son las propiedades de las tablas?
Las tablas relacionales tienen 6 propiedades:
1. Los valores son atómicos.
2. Los valores en las columnas son del mismo tipo.
3. Cada fila es única.
Technorati TagsLa secuencia de las columnas no importa.
4. La secuencia de las filas no importa.
5. Cada columna debe tener un nombre único.
3. ¿Que es OLTP?
OLTP es la sigla para On-Line Transaction Processing. Este sistema es básicamente una aplicación que modifica los datos a medida que los recibe y permite tener un gran numero de usuarios concurrentes.
4. ¿Que es OLAP?
OLAP es la sigla para On-Line Analytical Processing. Este tipo de sistemas son aplicaciones que recolectan, administran, procesan y presentan datos multidimensionales para administración y análisis.
5. ¿Cual es la diferencia entre OLTP y OLAP?
Existen varias diferencias entre OLTP y OLAP, las voy a dividir de acuerdo a ciertos conceptos claves:
• Origen de Datos
o OLTP: Los datos provienen de la fuente original.
o OLAP: Consolidación de datos desde distintas fuentes.
• Objetivo del Procesamiento
o OLTP: Instantánea de procesos de negocios que realizan tareas fundamentales para el negocio.
o OLAP: Vistas multi-dimensionales de actividades del negocio, para permitir administración y planificación.
• Consultas
o OLTP: Consultas rápidas y simples que pueden ser ejecutadas por los usuarios.
o OLAP: Consultas complejas y de ejecución mas larga, ejecutadas por el sistema para actualizar la data recién agregada.
• Diseño de la Base de Datos
o OLTP: Pequeñas Bases de Datos normalizadas. Se utiliza el Modelo Entidad-Relación y diseño orientado a las aplicaciones.
o OLAP: Grandes Bases de Datos No-normalizadas. Se utiliza un diseño orientado al sujeto mediante los Modelos de Estrella, Copo de Nieve o Constelación.
• Respaldo
o OLTP: Respaldos regulares de las Bases de Datos.
o OLAP: Volver a cargar los datos OLTP se considera una buena forma de respaldo.
Creo que con esto es suficiente para comenzar. Como siempre pueden hacer sus comentarios, dejar dudas o sugerencias para incluirlos en el siguiente articulo.
El registro de transacciones (SQL Server)
Todas las bases de datos de SQL Server tienen un registro de transacciones que registra todas las transacciones y las modificaciones que cada transacción realiza en la base de datos. El registro de transacciones se debe truncar periódicamente para evitar que se llene. Sin embargo, algunos factores pueden retrasar el truncamiento del registro, por lo que es importante supervisar el tamaño del registro. Algunas operaciones se pueden registrar mínimamente para reducir su impacto sobre el tamaño del registro de transacciones.
El registro de transacciones es un componente esencial de la base de datos y, si se produce un error del sistema, podría ser necesario para volver a poner la base de datos en un estado coherente. El registro de transacciones nunca se debe eliminar o mover, a menos que se conozcan totalmente las implicaciones de esas acciones.
Ejemplo
RESTORE LOG NewDatabase
FROM DISK = »D: \BackupFiles\TestDatabase_TransactionLogBackup1.Trn’
WITH NORECOVERY
RESTORE LOG NewDatabase
FROM DISK = »D: \BackupFiles\ TestDatabase_TransactionLogBackup2.Trn’
WITH NORECOVERY
RESTORE LOG NewDatabase
FROM DISK = »D: \BackupFiles\ TestDatabase_TransactionLogBackup3.Trn’
WITH NORECOVERY
RESTORE LOG NewDatabase
FROM DISK = »D: \BackupFiles\ TestDatabase_TransactionLogBackup4.Trn’
WITH RECOVERY