Lista de Artículos Inicio
- Año II  






La Labor del Administrador de Base de Datos - (PARTE 1)

Juan Manuel A. Herrera Pastor

Analista Desarrollador de AccountTech - Boston - USA
Ing. Informatico
Microsoft Certified Professional
Microsoft Certified Solution Developer
Microsoft Certified Application Developer
Microsoft Certified Solution Developer for .NET
juan_herrera(at)informatizate(dot)net
Junio 14 del 2004.


Introducción

Nos encontramos en la era de la "sociedad de la información", en la que, toda la humanidad se ve y se seguirá viendo afectada, influida y posiblemente dominada por quienes tienen, administran y transmiten información. La facilidad con la que se transmite la información por medio de dispositivos electrónicos modernos está permitiendo que ésta situación se dé.

En estos días es difícil pensar que alguien niegue conscientemente que la información tiene un valor; la información ha ido ganando importancia conforme la gente que toma decisiones está convencida de que ésta se puede asociar a un valor real, frecuentemente ligado a un valor material o económico.

Al escribir este artículo tengo en mente la intención de brindarles un somero panorama de las funciones más importantes que realizará un Administrador de Base de datos (DBA), que es la persona encargada de trabajar directamente con la información de una empresa. En resumen su labor consiste en permitir que los empleados de una empresa obtengan la información que necesitan de una manera adecuada en el momento apropiado y con niveles de seguridad altos.

Antes de comenzar a enumerar y a describir las principales labores del DBA, quiero puntualizar lo siguiente: Es conocido que en el mercado existen muchos productos (Manejadores de Base de Datos) que facilitan dichas tareas, no obstante, al momento de redactar este artículo me he basado en uno de ellos: Microsoft SQL Server 2000.


La creación de la Base de datos.

La primera tarea que tendrá que realizar un DBA es la creación de base de datos. Físicamente hablando, una base de datos no es más que un conjunto de archivos que son almacenados en un dispositivo de almacenamiento y que son vistos como una unidad a la que se le da un nombre y a la que se le definen un conjunto de propiedades. Esta definición constituye la primera perspectiva utilizada para definir una base de datos.

En SQL Server, al crear una base de datos, se configura la estructura de almacenamiento de los datos. Esta estructura incluye al menos un archivo de datos (archivo con extensión mdf), que contiene objetos de la base de datos y un archivo de registro de transacciones (archivo con extensión ldf). Adicionalmente, Una base de datos también puede tener archivos de datos secundarios (.ndf).

Para un DBA es de vital importancia, tener en cuenta los siguientes hechos:

  • Los datos se almacenan en bloques de 8 kilobytes (KB) de espacio contiguo en disco, llamados páginas. Esto significa que una base de datos puede almacenar 128 páginas por megabyte (MB). Las filas o registros no pueden abarcar más de una página. Por tanto, la máxima cantidad de datos de una fila, quitando el espacio necesario para la cabecera de la fila, es 8060 bytes.

  • Las tablas y los índices se almacenan en extensiones. Una extensión son ocho páginas contiguas, o 64 KB. Por tanto, una base de datos tiene 16 extensiones por megabyte. Las tablas pequeñas pueden compartir extensiones con otros objetos de la base de datos.

  • Los archivos del registro de transacciones contienen toda la información necesaria para recuperar la base de datos en caso de un error del sistema.


La siguiente figura muestra un resumen de lo anteriormente mencionado:





La manera recomendable de mantener los archivos que componen una base de datos se muestra en la siguiente figura. Básicamente, consiste en lo siguiente:

  • Tener un control de disco exclusivamente para el sistema operativo.

  • Tener otro controlador de disco para el archivo de registro de transacciones.

  • Y finalmente distribuir el archivo de datos en dos o más controladores de datos.





Para la optimización de base de datos se utilizan una serie de técnicas: La utilización de RAID (conjunto de discos que son vistos como uno solo), la utilización de grupos de archivos o una combinación de las dos técnicas mencionadas anteriormente. De la observación del gráfico anterior se puede aclarar estas técnicas:

  • El archivo de registro de transacciones usa RAID, es decir usa dos discos que funcionan como uno sólo, lo que permite realizar las escrituras y lecturas hasta dos veces más rápido dependiendo del tipo de RAID utilizado.

  • El archivo de datos esta distribuido en dos controladores de RAID los cuales manejan 8 archivos (combinación de archivos con extensión mdf y ldf) que son agrupados en un grupo de archivos. De acuerdo a esta estructura, la velocidad de escritura y lectura se aumenta hasta en 8 veces dependiendo del tipo de RAID usado.


La creación de los objetos de la base de datos

La segunda perspectiva que tenemos para definir una base de datos es la manera lógica. Lógicamente, una base de datos es un conjunto de datos que se encuentran estructurados en tablas y otros objetos que ayudan a definir los mecanismos que mantienen la integridad entre los datos. En la tabla siguiente se describen los objetos de una base de datos de SQL Server:

Objeto Descripción
Tabla Define un conjunto de filas que tienen columnas asociadas.
Tipos de datos Define los valores permitidos para los datos de una columna o una variable. SQL Server proporciona una serie de tipos de datos que son llamados tipos de datos del sistema; pero también brinda la oportunidad a los usuarios de crear sus propios tipos de datos, los cuales son llamados tipos de datos definidos por el usuario.
Restricción Define reglas relacionadas con los valores permitidos en las columnas y es el mecanismo estándar para exigir la integridad de los datos.
Valor predeterminado Define un valor que se almacena en una columna si no se especifica explícitamente ningún otro valor.
Regla Contiene información que define los valores válidos que se pueden almacenar en una columna o en un tipo de datos.
Índice Es una estructura de almacenamiento que proporciona acceso rápido para la recuperación de los datos y que también ayuda a exigir la integridad de los datos. Hay dos tipos: Índice agrupado, en el que el orden lógico o indizado de los valores de la clave es el mismo que el orden físico, o de almacenamiento, de las filas correspondientes existentes en la tabla. Índice no agrupado, en el que el orden lógico del índice no coincide con el orden físico en el que están almacenadas las filas de la tabla.
Vistas Proporciona una forma de ver los datos de una o varias tablas.
Función definida por el usuario Puede devolver un valor escalar o una tabla. Las funciones se utilizan para encapsular la lógica que se realiza con frecuencia.
Procedimiento Almacenado Es una colección de instrucciones Transact-SQL precompiladas que se ejecutan conjuntamente y a las cuales se les da un nombre.
Desencadenador Es una forma especial de procedimiento almacenado que se ejecuta automáticamente cuando un usuario modifica los datos de una tabla o una vista.



Una vez creada la base de datos, la siguiente labor del DBA es crear todos los objetos que la constituirán.













Version PDF


Copyright © 2002-2004 Grupo Informatizate. Reservados todos los derechos.
Prohibida la reproducción total o parcial en cualquier formato sin previa autorización.
On-line desde el 27 de Noviembre del 2002