Está en la página 1de 43

15

CAPÍTULO Administración y seguridad de bases de datos

En este capítulo, el lector aprenderá:


Que los datos son un valioso activo de negocios que requiere una administración cuidadosa

La forma en que una base de datos desempeña una función crítica en una organización

Que la introducción de un DBMS tiene importantes consecuencias tecnológicas, gerenciales y


culturales para una organización

Cuáles son las funciones gerenciales y técnicas del administrador de una base de datos

Acerca de seguridad de datos y bases de datos y el marco de seguridad de la información

Acerca de varias herramientas y estrategias para la administración de bases de datos

Cómo varias tareas técnicas de administración de bases de datos se ejecutan con Oracle

Este capítulo brinda los fundamentos para poner en marcha una exitosa estrategia de
administración de bases de datos, la cual requiere que los datos sean considerados re-
cursos importantes y valiosos para ser tratados y manejados como activos corporativos.

Se explora cómo la base de datos se incorpora en una organización, cuáles son las Vista
vistas y requisitos de datos en varios niveles de administración, así como el modo en
que el DBMS soporta esas vistas y requisitos. La administración de bases de datos
debe entender y aceptarse perfectamente antes que pueda implementarse una estrate-
Previa
gia razonada de administración. En este capítulo aprenderemos acerca de importantes
problemas de administración de datos al observar funciones gerenciales y técnicas del
administrador de bases de datos (DBA). Este capítulo también explora problemas de
seguridad de bases de datos, como la confidencialidad, integridad y disponibilidad
de datos. En nuestra sociedad basada en la información, uno de los aspectos clave de
la administración de datos es asegurar que éstos estén protegidos contra acceso inten-
cional o no intencional de personas no autorizadas. También es esencial asegurar que
los datos se encuentren disponibles cuando y donde sea necesario, incluso ante desas-
tres naturales o falla del equipo y mantener la integridad de los datos de la base de datos.

Los aspectos técnicos de la administración de base de datos son acrecentados por una
exposición de las herramientas de administración de la base de datos y por la estructura
arquitectónica de datos al nivel de toda una corporación. Los aspectos gerenciales de la
administración de una base de datos se explican al mostrar cómo se ajusta la función de
la administración de una base de datos dentro de estructuras organizacionales clásicas.
Debido a que Oracle es el actual líder en mercados de bases de datos corporativas a
nivel alto y medio, el lector aprenderá cómo un DBA ejecuta algunas funciones típicas
de administración de bases de datos en Oracle.
A D M I N I S T R A C I Ó N Y S E G U R I DA D D E B A S E D E D A T O S 609

15.1 DATOS COMO ACTIVO CORPORATIVO


En el capítulo 1 aprendimos que los datos son la materia prima de la cual se produce la información. Por tanto, no es de
sorprender que en el ambiente de hoy en día movido por la información, los datos sean valiosos activos que requieren
de cuidadosa administración.

Para evaluar el valor monetario de los datos, echemos una mirada a lo que está guardado en la base de datos de una
compañía: datos acerca de clientes, proveedores, inventario, operaciones, etc. ¿Cuántas oportunidades se desperdician
si se pierden datos? ¿Cuál es el costo real de la pérdida de datos? Por ejemplo, una empresa de contadores que pierda
toda su base de datos incurriría en importantes costos directos e indirectos. Los problemas de la empresa crecerían si la
pérdida ocurriera durante el tiempo de pagar impuestos. La pérdida de datos pone a cualquier compañía en una posi-
ción difícil. La compañía podría ser incapaz de manejar con efectividad las operaciones diarias, podría sufrir la pérdida
de clientes que requieren de un servicio rápido y eficiente, además de que podría perder la oportunidad de ganar nuevos
clientes.

Los datos son un valioso recurso que puede convertirse en información. Si la información es precisa y oportuna, es
muy probable que mueva acciones que mejoren la posición competitiva de la compañía y generen riqueza. En efecto,
una organización está sujeta a un ciclo de datos, información, decisión; esto es, el usuario aplica inteligencia a los
datos para producir información, que es la base de conocimientos que se emplean en la toma de decisiones por parte
del usuario. Este ciclo se ilustra en la figura 15.1.

FIGURA El ciclo de datos, –información–, toma de decisiones


15.1

Usuario
Toma de
decisiones

activa
que se usan en

Conocimiento Acciones

aplica
Análisis
inteligencia en
que es la que
base del generan
más
para
producir
Datos información

Nótese en la figura 15.1 que las decisiones tomadas por gerentes de alto nivel activan acciones dentro de niveles más ba-
jos de la organización. Estas acciones producen datos adicionales que han de usarse para revisar la operación de la com-
pañía. A su vez, los datos adicionales deben ser reciclados dentro de la estructura de datos, información y decisiones.
Así, los datos forman la base para la toma de decisiones, la planeación estratégica, control y vigilancia de operaciones.

Un factor de importancia decisiva para el éxito de una organización es una eficiente administración de activos. Para
manejar datos como activo corporativo, los gerentes deben entender el valor de la información, es decir, de los datos
procesados. De hecho, hay compañías (por ejemplo las que dan informes de crédito) cuyo único producto es informa-
ción y cuyo éxito está sólo en función de la administración de información.
610 C A P Í T U L O 1 5

Casi todas las organizaciones continuamente buscan nuevas formas para apalancar sus recursos de datos para obtener
mayores rendimientos. Este apalancamiento puede tomar muchas formas, desde almacenes de datos que soportan
una mejor administración de relaciones públicas hasta una integración más estrecha con clientes y proveedores en
apoyo a una administración electrónica de la cadena de abastecimiento. A medida que las organizaciones se hacen más
dependientes de la información, la precisión de ésta se hace más crítica. Los datos sucios, o sea, datos que sufren
de imprecisiones e inconsistencias, se convierten en una amenaza todavía mayor para esas organizaciones. Los datos
pueden ensuciarse por muchas razones, por ejemplo:
• Falta de aplicación de restricciones de integridad (valores no nulos, unicidad, integridad referencial, etcétera).
• Errores tipográficos al ingresar datos.
• Uso de sinónimos y homónimos en sistemas.
• Uso no estandarizado de abreviaturas en datos de caracteres.
• Diferentes descomposiciones de atributos compuestos en atributos simples en los sistemas.

Algunas causas de datos sucios pueden ser resueltas al nivel de una base de datos individual, por ejemplo, la apropia-
da implementación de restricciones. Pero encarar otras causas de datos sucios es más complicado; algunas fuentes
de datos sucios provienen del movimiento de datos en los sistemas, como en la creación de un almacén de datos. El
trabajo realizado para controlar datos sucios se conoce como iniciativa de calidad de datos.

La calidad de datos es un método integral para asegurar precisión, validez y oportunidad de los datos. La idea de
que la calidad de datos es integral es importante. La calidad de datos se relaciona con más que sólo limpiar datos sucios;
también se concentra en la prevención de futuras imprecisiones en los datos y en construir confianza del usuario en
ellos. Las iniciativas para la calidad de datos a gran escala tienden a ser proyectos complejos y costosos. Como tales,
la alineación de estas iniciativas con objetivos de negocios es algo esencial, como lo es convencer a los directivos de las
organizaciones. Si bien el trabajo de calidad de datos varía grandemente de una organización a otra, casi todo abarca
una interacción de:
• Una estructura de gobernabilidad de datos que sea responsable de la calidad de los datos.
• Medidas de calidad de datos actuales.
• Definición de normas de calidad de datos en línea con objetivos de negocios.
• Implementación de herramientas y procesos para asegurar la calidad futura de datos.

Hay diversas herramientas que pueden ayudar en la implementación de iniciativas de calidad de datos. En particular,
se dispone de software para perfilar datos y software maestro para la administración de datos, ofrecido por numero-
sos vendedores para asistir en asegurar la calidad de datos. El software para perfilar datos está formado por
programas que reúnen estadísticas y analizan fuentes existentes de datos. Estos programas analizan datos existentes y
los metadatos para determinar patrones y pueden comparar los patrones existentes de datos contra normas que la orga-
nización haya definido. Este análisis puede ayudar a que la organización entienda la calidad de los datos que actualmente
están en su lugar e identificar fuentes de datos sucios. El software maestro para administración de datos
maestros (MDM) ayuda a prevenir datos sucios al coordinar datos comunes en sistemas múltiples. El MDM contiene
una copia “maestra” de entidades, por ejemplo, clientes, que aparece en numerosos sistemas en toda la organización.

Si bien es cierto que estos métodos tecnológicos son una pieza importante en la calidad de datos, la solución general
para datos de alta calidad dentro de una organización todavía se apoya fuertemente en la administración y manejo de
los datos.

15.2 NECESIDAD DE UNA BASE DE DATOS Y FUNCIÓN DE ÉSTA


EN UNA ORGANIZACIÓN
Los datos son utilizados por distintas personas en diferentes departamentos por varias razones. Por tanto, la adminis-
tración de datos debe abordar el concepto de datos compartidos. El capítulo 1 mostró cómo la necesidad de compartir
datos hizo casi inevitable al DBMS. Cuando se usa en forma apropiada, el DBMS facilita:
• La interpretación y presentación de datos en formatos útiles al transformar datos sin elaborar en información.
• La distribución de datos e información a la personas apropiadas en el tiempo oportuno.
A D M I N I S T R A C I Ó N Y S E G U R I DA D D E B A S E D E D A T O S 611

• La preservación de datos y vigilancia de uso durante periodos adecuados.


• El control sobre la duplicación y uso de datos, tanto interna como externamente.

Cualquiera que sea el tipo de organización, la función predominante de la base de datos es apoyar a la toma de de-
cisiones gerenciales en todos los niveles, al mismo tiempo que preservar la privacidad y seguridad de los datos.

La estructura gerencial de una organización podría dividirse en tres niveles: superior, medio y operacional. La adminis-
tración de nivel superior toma decisiones estratégicas; la media toma decisiones tácticas y la operacional toma decisio-
nes operacionales. Las decisiones operacionales son de corto plazo y afectan sólo operaciones diarias; por ejemplo,
decidir cambiar el precio de un producto para borrarlo del inventario. Las decisiones tácticas comprenden un marco de
tiempo más largo y afectan operaciones a gran escala; por ejemplo, cambiar el precio de un producto en respuesta a
presiones competitivas. Las decisiones estratégicas son las que afectan el bienestar a largo plazo de la compañía y hasta
su permanencia en el mercado; por ejemplo, cambiar la estrategia de precios en líneas de productos para conseguir
participación en el mercado.

El DBMS debe dar herramientas que den a cada nivel de administración una vista útil de los datos que den soporte al
nivel requerido de toma de decisiones. Las siguientes actividades son típicas de cada nivel gerencial.

Al nivel de administración superior, la base de datos debe ser capaz de:


• Dar la información necesaria para la toma estratégica de decisiones, planeación estratégica, formulación de
políticas y definición de objetivos.
• Dar acceso a datos externos e internos para identificar oportunidades de crecimiento y proyectar la dirección de
éste. (La dirección se refiere a la naturaleza de las operaciones: ¿una compañía se convertirá en organización
de servicio, de manufactura o en alguna combinación de las dos?)
• Dar un marco para definir y aplicar políticas organizacionales. (Recuerde que esas políticas se convierten en
reglas de negocios a niveles más bajos en la organización.)
• Mejorar la probabilidad de un rendimiento positivo sobre inversiones para la compañía, al buscar nuevas formas
de reducir costos o impulsar la productividad.
• Dar retroalimentación para vigilar si la compañía está logrando sus objetivos.

Al nivel medio de administración, la base de datos debe ser capaz de:


• Entregar los datos necesarios para la toma táctica de decisiones y planificación.
• Vigilar y controlar la asignación y uso de recursos de la compañía y evaluar el desempeño de los diversos depar-
tamentos.
• Dar un marco para aplicar y certificar la seguridad y privacidad de los datos de la base de datos. Seguridad signi-
fica proteger los datos contra uso accidental o intencional por usuarios no autorizados. Privacidad se relaciona
con los derechos de individuos y la organización para determinar el “quién, qué, cuándo, dónde y cómo” del uso
de datos.

Al nivel administrativo operacional, la base de datos debe ser capaz de:


• Representar y soportar las operaciones de la compañía en forma tan cercana como sea posible. El modelo de
datos debe ser suficientemente flexible para incorporar todos los datos requeridos presentes y esperados.
• Producir resultados de consulta dentro de niveles de desempeño especificados. Recuerde que los requisitos de
desempeño aumentan para niveles más bajos de administración y de operaciones. Así, la base de datos debe dar
soporte a respuestas rápidas a un número más grande de transacciones al nivel administrativo operacional.
• Aumentar la capacidad operacional a corto plazo de la compañía mediante el suministro de información opor-
tuna para apoyo a clientes y para desarrollo de aplicación y operaciones de computadoras.

Un objetivo general para cualquier base de datos es dar un flujo continuo de información en toda la compañía.

La base de datos de la compañía también se conoce como base de datos corporativa o empresarial. La base de datos
empresarial podría ser definida como “la presentación de datos de la compañía que da soporte a todas las operacio-
nes esperadas presentes y futuras”.
612 C A P Í T U L O 1 5

Casi todas las organizaciones exitosas de hoy en día dependen de la base de datos empresarial para dar soporte a todas
sus operaciones, desde diseño a implementación, desde ventas a servicios y de toma de decisiones diarias a planeación
estratégica.

15.3 INTRODUCCIÓN DE UNA BASE DE DATOS: CONSIDERACIONES


ESPECIALES
Tener un sistema computarizado para administración de una base de datos no garantiza que estos últimos serán uti-
lizados en forma apropiada para dar las mejores soluciones requeridas por gerentes. Un DBMS es una herramienta
para manejar datos; al igual que cualquier herramienta, debe utilizarse en forma eficiente para producir los resultados
deseados. Considere esta analogía: en manos de un carpintero, un martillo puede ayudar a producir muebles; en manos
de un niño, podría hacer daño. La solución a los problemas de una compañía no es sólo la existencia de un sistema
computarizado o su base de datos, sino que, más bien, su eficiente administración y uso.

La introducción de un DBMS representa un gran cambio y desafío; en toda la organización, es probable que el DBMS
tenga un profundo impacto, que podría ser positivo o negativo dependiendo de cómo se administre. Por ejemplo, una
consideración clave es adaptar el DBMS a la organización en lugar de forzar a ésta a adaptarse al DBMS. La cuestión
principal debe ser la necesidad de la organización y no las capacidades técnicas del DBMS. No obstante, la introduc-
ción de un DBMS no puede lograrse sin afectar la organización. El flujo de nueva información generada por el DBMS
tiene un profundo efecto sobre cómo funciona ésta y, por tanto, sobre su cultura corporativa.

La introducción de un DBMS en una organización ha sido descrita como un proceso que incluye tres importantes
aspectos:1
• Tecnológico. Software y hardware del DBMS.
• Gerencial. Funciones administrativas.
• Cultural. Resistencia corporativa al cambio.

El aspecto tecnológico incluye seleccionar, instalar, configurar y vigilar el DBMS para asegurarse que con toda eficiencia
maneja el almacenamiento, acceso y seguridad de datos. La persona o personas a cargo de resolver el aspecto tecnoló-
gico de la instalación del DBMS deben tener los conocimientos técnicos necesarios para dar o asegurar adecuado sopor-
te para los diversos usuarios del DBMS: programadores, gerentes y usuarios finales. Por tanto, asignar personal para la
administración de una base de datos es una consideración tecnológica clave en la introducción del DBMS. El personal
seleccionado debe exhibir la combinación correcta de conocimientos técnicos y gerenciales para dar una transición sin
dificultades al nuevo ambiente de datos compartidos.

El aspecto gerencial de la introducción del DBMS no debe tomarse a la ligera. Un DBMS de alta calidad no garantiza
un sistema de información de alta calidad, igual que tener el mejor automóvil de carreras no garantiza ganar una.

La introducción de un DBMS en una organización requiere de una cuidadosa planeación para crear una estructura
organizacional apropiada para acomodar a la persona o personas responsables de administrar el DBMS. La estruc-
tura organizacional también debe ser sujeta a una bien desarrollada vigilancia y funciones de control. El personal admi-
nistrativo debe tener excelentes conocimientos interpersonales y de comunicación, combinados con gran conocimiento
organizacional y de negocios. La administración superior debe estar comprometida con el nuevo sistema, debe definir y
dar soporte a las funciones de administración de datos, objetivos y funciones dentro de la organización.

El impacto cultural de la introducción de un sistema de bases de datos debe ser evaluado con todo cuidado. Es pro-
bable que la existencia del DBMS tenga un efecto sobre las personas, funciones e interacciones. Por ejemplo, podría
agregarse más personal, nuevas funciones podrían asignarse al personal existente y la operación de empleados po-
dría ser evaluada usando nuevas normas.

Es probable que ocurra un impacto cultural porque el método de la base de datos crea un flujo de información más
controlado y estructurado. Los gerentes de departamento que estén acostumbrados a manejar sus propios datos de-
ben rendir su propiedad subjetiva a la función de administración de datos, deben compartir sus datos con el resto de
la compañía. Los programadores de aplicación deben aprender y seguir nuevas normas de diseño y desarrollo. Los
gerentes podrían enfrentarse a lo que consideren ser una sobrecarga de información y podrían requerir de un tiempo
para ajustarse al nuevo ambiente.
1 Murray, John P. “The Managerial and Cultural Issues of a DBMS”, 370/390 Database Management 1(8), septiembre de 1991, pp. 32-33.
A D M I N I S T R A C I Ó N Y S E G U R I DA D D E B A S E D E D A T O S 613

Cuando la nueva base de datos se ponga en línea, el personal podría ser reacio a usar la información proporcionada por
el sistema y podría cuestionar su valor o precisión. (Muchos se sorprenderán y posiblemente se molestarán al descubrir
que la información no se ajusta a sus nociones preconcebidas y creencias fuertemente sostenidas.) El departamento de
administración de bases de datos debe estar preparado para abrir sus puertas a usuarios finales, escuchar sus quejas,
actuar en consecuencia cuando sea posible y educarlos acerca de los usos y beneficios del sistema.

15.4 LA EVOLUCIÓN DE LA FUNCIÓN DE ADMINISTRACIÓN


DE UNA BASE DE DATOS
La administración de datos tiene sus raíces en el viejo y descentralizado mundo de sistemas de archivos. El costo de
datos y la duplicación gerencial en esos sistemas de archivo dieron lugar a una función centralizada de administración
de datos conocida como procesamiento electrónico de datos (EDP) o departamento de procesamiento de datos (DP). La
tarea del departamento de DP era agrupar todos los recursos de cómputo para dar soporte a todos los departamentos a
nivel operacional. A la función de administración del DP se le dio autoridad para manejar todos los sistemas existentes
de la compañía, así como para resolver conflictos de datos y gerenciales creados por la duplicación o mal uso de datos.

El advenimiento del DBMS y su imagen compartida de datos produjo un nuevo nivel de complejidad de administración
de datos y llevó al departamento de DP a evolucionar en un departamento de sistemas de información (IS).
Las responsabilidades del departamento de IS se ampliaron para incluir:
• Una función de servicio para dar a usuarios finales un soporte activo de administración de datos.
• Una función de producción para dar, a los usuarios finales, las soluciones específicas para sus necesidades de
información a través de sistemas integrados de aplicación o administración de información.

La orientación funcional del departamento de IS se reflejó en su estructura organizacional interna. Los departamentos de
información típicamente estaban estructurados como se ve en la figura 15.2. Cuando creció la demanda para el de-
sarrollo de aplicación, el segmento de desarrollo de aplicación del IS fue subdividido en el tipo de sistema soportado:
contabilidad, inventario, mercadotecnia, etc. No obstante, este desarrollo significaba que las responsabilidades de la ad-
ministración de la base de datos se dividieron. El segmento del desarrollo de aplicación estaba a cargo de captar reque-
rimientos de la base de datos y del diseño lógico de ésta, mientras que el segmento de las operaciones de la base de
datos tomó a su cargo la implementación, vigilancia y control de las operaciones del DBMS.

FIGURA Organización interna Cuando creció el número de aplicaciones de la base de datos,


la administración de datos se convirtió en un trabajo cada vez
15.2 del departamento de
más complejo, llevando así al desarrollo de la función de ad-
sistemas de información
ministración de la base de datos. La persona responsable del
control de la base de datos centralizada y compartida se cono-
Sistemas de ció como administrador de una base de datos (DBA).
información (IS)
El tamaño y papel de la función del DBA varía de una com-
pañía a otra, al igual que su colocación dentro de la estructura
organizacional de una empresa. En el organigrama de una
empresa la función del DBA podría estar definida ya sea como
personal o posición de línea. Colocar la función del DBA en
Desarrollo de Operaciones de una posición de personal crea a veces un ambiente de consulta
aplicación base de datos
en el que el DBA es capaz de diseñar la estrategia de admi-
nistración de datos, pero no tener la autoridad para aplicarla
o resolver posibles conflictos.2 La función del DBA en una
posición de línea tiene la responsabilidad y la autoridad para

2
Para una perspectiva histórica sobre el desarrollo de la función del DBA y una exposición más amplia de sus alternativas de colocación organizacional, consulte la obra clásica
de Jay-Louise Weldon Data Base Administration (Nueva York, Plenum Press, 1981). Aunque podría pensarse que la fecha de publicación del libro lo hace obsoleto, un sor-
prendente número de sus temas están regresando a la actual situación operacional de una base de datos.
614 C A P Í T U L O 1 5

planear, definir, implementar y hacer cumplir las políticas, normas y procedimientos que se usan en la actividad de ad-
ministración de datos. Las dos colocaciones posibles de la función del DBA se ilustran en la figura 15.3.

FIGURA Colocación de la función del DBA


15.3

Posición de autoridad en línea

Sistemas de
información (IS)

Desarrollo de Operaciones de Administración de


aplicación base de datos base de datos

Posición de consulta de personal

Sistemas de
información (IS)

Administración de
base de datos

Desarrollo de Operaciones de
aplicación base de datos

No hay una norma acerca de cómo la función del DBA se ajuste en la estructura de una organización. En parte, esto
es porque la función misma del DBA es probablemente la más dinámica de las funciones de cualquier organización. De
hecho, los rápidos cambios en la tecnología de los DBMS dictan estilos cambiantes en organizaciones. Por ejemplo:
• El desarrollo de bases de datos distribuidas puede forzar a una organización a descentralizar más aún la función
de administración de datos. La base de datos distribuida requiere que el DBA del sistema defina y delegue las res-
ponsabilidades de cada DBA local, imponiendo así nuevas y más complejas actividades de coordinación del
DBA del sistema.
• Es probable que el creciente uso de datos accesibles por internet y el también creciente número de aplicaciones
de almacenamiento de datos, se agreguen a las actividades de modelado y diseño de datos del DBA, con lo cual
se expande y diversifica su trabajo.
• La creciente modernización y potencia de paquetes del DBMS basados en microcomputadoras son una fácil
plataforma para el desarrollo de soluciones de uso sencillo, costo reducido y eficiente para las necesidades de
departamentos específicos. Pero este ambiente también invita a la duplicación de datos, por no mencionar los
problemas creados por personas que carecen de capacidad técnica para producir buenos diseños de bases de da-
tos. En pocas palabras, el nuevo ambiente de microcomputadoras requiere que el DBA desarrolle un nuevo con-
junto de capacidades técnicas y gerenciales.

Es práctica común definir la función del DBA al dividir sus operaciones según las fases del ciclo de vida de una base de
datos (DBLC, database life cycle). Si se utiliza ese método, la función del DBA requiere que el personal abarque las
siguientes actividades:
• Planeación de la base de datos, incluida la definición de normas, procedimientos e imposición.
• Agrupación de requisitos de una base de datos y diseño conceptual.
• Diseño lógico y de transacción de una base de datos.
• Diseño físico e implementación de una base de datos.
A D M I N I S T R A C I Ó N Y S E G U R I DA D D E B A S E D E D A T O S 615

• Prueba y depuración de una base de datos.


• Operaciones y mantenimiento, incluida la instalación, conversión y migración de una base de datos.
• Capacitación y soporte en bases de datos.
• Vigilancia y administración de la calidad de datos.

La figura 15.4 representa una organización de las funciones del DBA acorde con ese modelo.

FIGURA Organización funcional de un DBA


15.4

DBA

Planeación Diseño Implementación Operaciones Capacitación

Conceptual Lógica Física Prueba

Recuerde que una compañía puede tener varios DBMS diferentes e incompatibles instalados para dar soporte a distintas
operaciones. Por ejemplo, no es raro encontrar corporaciones con un DBMS jerárquico para soportar transacciones
diarias al nivel operacional y una base de datos relacional para dar soporte a necesidades de información ad hoc para
los niveles medio y superior de la administración. También puede existir una variedad de DBMS de microcomputadora
instalados en diferentes departamentos. En ese ambiente, la compañía puede tener un DBA asignado para cada DBMS.
El coordinador general de todos los DBA se conoce a veces como administrador de sistemas; esa posición está
ilustrada en la figura 15.5.

FIGURA Varios administradores de bases de datos (DBA) en una organización


15.5

Administrador
de sistemas

Gerente de
DBA DBA DBA DBA DBMS con
microcomputadora

DB2 Oracle Red SQL Server


relacional relacional IDS-II relacional

Hay una creciente tendencia hacia la especialización en la función de administración de datos. Por ejemplo, los orga-
nigramas empleados por algunas de las corporaciones más grandes hacen una distinción entre un DBA y el adminis-
trador de datos (DA). El DA, también conocido como gerente de recursos de información (IRM), por lo
616 C A P Í T U L O 1 5

general informa directamente a los directivos y se le da un grado más alto de responsabilidad y autoridad que el DBA,
aunque las dos funciones se traslapan un poco.

El DA es responsable de controlar los recursos generales de datos corporativos, tanto computarizados como manuales.
Así, la descripción de su trabajo del DA un campo de operaciones más grande que el DBA porque está a cargo de
controlar no sólo los datos computarizados sino también los que están fuera del alcance del DBMS. La posición del
DBA dentro de la expandida estructura organizacional puede variar de una compañía a otra. Dependiendo de los com-
ponentes de la estructura, el DBA puede informar al DA, al IRM, al gerente de IS o directamente al director general de
la compañía.

15.5 COMPONENTE HUMANO DEL AMBIENTE DE UNA BASE DE DATOS


Una parte importante de este libro está dedicada al diseño e implementación de una base de datos relacional, así como
a examinar funciones y características del DBMS. Hasta este punto, el libro se ha concentrado en los muy importantes
aspectos técnicos de la base de datos, pero hay otro lado importante: incluso el sistema de base de datos hecho con el
mayor cuidado no puede operar sin el componente humano. Entonces, en esta sección, vamos a explorar la forma en
que el personal realiza las actividades de administración de datos que hacen útil el diseño de una buena base de datos.

Una administración eficiente de datos requiere de buenos conocimientos técnicos y administrativos. Por ejemplo, el
trabajo del DA generalmente tiene una fuerte orientación administrativa que abarca toda la compañía. En contraste,
el trabajo del DBA tiende a estar más orientado a aspectos técnicos y tiene un ámbito más reducido: un DBMS especí-
fico. No obstante, el DBA, también, debe tener una cantidad considerable de conocimientos sobre relaciones laborales.
Después de todo, tanto el DA como el DBA realizan funciones “de personal” comunes a todos los departamentos en
una organización. Por ejemplo, el DA y el DBA dirigen y controlan la asignación de personal y la capacitación dentro
de sus respectivos departamentos.

La tabla 15.1 contrasta las características generales de ambas posiciones al resumir las actividades típicas del DA y del
DBA. Todas las actividades que salen de las características que se muestran en la tabla 15.1 están invertidas en el DBA
si la organización no emplea un DA y un DBA.

TABLA Contraste de actividades y características de un DA y un DBA


15.1
ADMINISTRADOR DE DATOS (DA) ADMINISTRADOR DE BASE DE DATOS (DBA)
Hace planeación estratégica Controla y supervisa
Establece metas a largo plazo Ejecuta planes para alcanzar objetivos
Establece políticas y normas Impone políticas y procedimientos
Impone normas de programación
Es amplio en alcance Es de ámbito reducido
Se concentra en el largo plazo Se concentra en el corto plazo (operaciones diarias)
Tiene orientación administrativa Tiene orientación técnica
Es independiente del DBMS Es específico del DBMS

Nótese que el DA es responsable de ofrecer una estrategia administrativa general y amplia para todos los datos de la
organización. En otras palabras, los planes del DA deben considerar todo el espectro de datos. Así, el DA es responsa-
ble de la consolidación y consistencia de datos tanto manuales como computarizados.

El DA también debe establecer objetivos para administración de datos. Estos objetivos están definidos por problemas
como:
• “Compartición” de datos y disponibilidad de tiempo.
• Consistencia e integridad de datos.
• Seguridad y privacidad de datos.
• Normas de calidad de datos.
• Magnitud y tipo del uso de datos.
A D M I N I S T R A C I Ó N Y S E G U R I DA D D E B A S E D E D A T O S 617

Naturalmente, la lista se puede ampliar para ajustarse a las necesidades específicas de los datos de la organización.
Cualquiera que sea la forma en que se dirija la administración de datos y a pesar del hecho de que se invierte mucha
autoridad en el DA o el DBA para definir y controlar cómo se usen datos de la compañía, el DA y el DBA no poseen los
datos. En cambio, las funciones del DA y el DBA están definidas para destacar que los datos son un activo compartido
de la compañía.

La exposición precedente no debe llevar a pensar que hay normas administrativas del DA y DBA universalmente acep-
tadas. En realidad, el estilo, tareas, colocación organizacional y estructura interna de ambas funciones varían de una
compañía a otra. Por ejemplo, numerosas empresas distribuyen tareas del DA entre el DBA y el gerente de sistemas.
Para mayor sencillez y para evitar confusiones, la leyenda DBA se usa aquí como título general que abarca todas las
funciones apropiadas de administración de datos. Aclarado ese punto, pasemos al papel del DBA como árbitro entre
datos y usuarios.

El arbitraje de interacciones entre los dos más importantes activos de cualquier organización, que son su personal y sus
datos, coloca al DBA en el ámbito dinámico que se describe en la figura 15.6.

FIGURA Resumen de actividades del DBA


15.6

define y hace cumplir

administra
y vigila
Procedimientos
y normas

verifica Interfaz
de DBA
usados por

escribe

Programas
Programador DBMS
de aplicación

y administra
usan

Usuarios finales Gerentes y Interfaz de


empleados Datos
un DBMS

Al examinar la figura 15.6, nótese que el DBA es un punto focal para la interacción datos/usuario. El DBA define e im-
pone los procedimientos y normas a usar por programadores y usuarios finales durante su trabajo con el DBMS. El DBA
también verifica que el acceso del programador y usuario final satisfaga las normas requeridas de calidad y seguridad.

Los usuarios de bases de datos pueden ser clasificados por el:


• Tipo de soporte requerido para toma de decisiones (operacional, táctico o estratégico).
• Grado de conocimientos en computación (novato, suficiente o experto).
• Frecuencia de acceso (casual, periódico o frecuente).
618 C A P Í T U L O 1 5

Esas clasificaciones no son exclusivas y por lo general se traslapan. Por ejemplo, un usuario operacional puede ser un
experto con acceso casual a una base de datos. Sin embargo, un típico gerente de nivel superior puede ser un novato
estratégico con acceso periódico a la base de datos. Por otra parte, un programador de aplicación de bases de datos
es un experto operacional y usuario frecuente de ésta. Así, cada organización emplea personal cuyos niveles de ex-
periencia en bases de datos abarcan todo un espectro. El DBA debe ser capaz de interactuar con todo ese personal,
entender sus diferentes necesidades, contestar preguntas a todos los niveles de la escala de experiencia y comunicarse
de manera eficiente.

Las actividades del DBA descritas en la figura 15.6 sugieren la necesidad de una mezcla diversa de conocimientos. En
compañías grandes, es probable que esos conocimientos estén distribuidos entre el personal que trabaja dentro de la
función del DBA. En compañías pequeñas, los conocimientos pueden ser el dominio de una sola persona. Los conoci-
mientos se pueden dividir en dos categorías, administrativa y técnica, como se resumen en la tabla 15.2.

TABLA Conocimientos deseables de DBA


15.2
ADMINISTRATIVOS TÉCNICOS
Conocimiento general del negocio Experiencia amplia en procesamiento de datos
Conocimientos de coordinación Conocimiento del Ciclo de vida de Desarrollo de Sistemas
Conocimientos analíticos Metodologías estructuradas:
Diagramas de flujo de datos
Gráficas de estructuras
Lenguajes de programación
Conocimientos para resolución de conflictos Conocimiento del ciclo de vida de base de datos
Conocimientos de comunicación (oral y escrita) Conocimientos de modelado y diseño de bases de datos
Conceptuales
Lógicos
Físicos
Conocimientos de negociación Conocimientos operacionales: implementación de una
base de datos, administración de un diccionario de datos,
seguridad, etcétera.
Experiencia: 10 años en un departamento grande de procesamiento de datos

Al examinar la tabla 15.2, recuerde que el DBA debe realizar dos funciones distintas. La función administrativa se con-
centra en administración de personal y en interacciones con la comunidad de usuarios finales. La función técnica com-
prende el uso del DBMS, diseño, desarrollo e implementación de bases de datos, así como la producción, desarrollo y
uso de programas de aplicación. Las funciones administrativas y técnicas del DBA se examinarán en más detalle en las
siguientes secciones.

15.5.1 Función administrativa del DBA

Como administrador, el DBA debe concentrarse en las dimensiones de control y planeación de la administración de una
base de datos. Por tanto, es responsable de:
• Coordinar, vigilar y asignar los recursos de administración de bases de datos: personal y datos.
• Definir objetivos y formular planes estratégicos para la función de administración de la base de datos.

Más específicamente, las responsabilidades del DBA se presentan en la tabla 15.3.


A D M I N I S T R A C I Ó N Y S E G U R I DA D D E B A S E D E D A T O S 619

TABLA Actividades y servicios del DBA


15.3
ACTIVIDAD DEL DBA SERVICIO DEL DBA
Planeación Soporte a usuario final
Organización Políticas, procedimientos y normas
Prueba de Seguridad, privacidad e integridad de datos
Vigilancia Respaldo y recuperación de datos
Entrega Distribución y uso de datos

La tabla 15.3 ilustra que el DBA es generalmente responsable de planear, organizar, probar, vigilar y entregar pocos
servicios. Esos servicios pueden ser ejecutados por el DBA o, más probablemente, por el personal del DBA. Examine-
mos los servicios en más detalle.

Soporte a usuario final


El DBA interactúa con el usuario final al darle datos y servicios de soporte de información a departamentos de la orga-
nización. Debido a que los usuarios finales por lo general tienen conocimientos computacionales distintos, los servicios
de soporte al usuario final incluyen:
• Agrupar necesidades del usuario. El DBA debe trabajar dentro de la comunidad de usuarios finales para ayudar
a agrupar los datos requeridos para identificar y describir sus problemas. Los conocimientos en comunicaciones
del DBA son muy importantes en esta etapa, porque trabaja estrechamente con personal de diversos grados de
experiencia en computación y estilos de comunicación. La agrupación de necesidades del usuario requiere que
el DBA desarrolle conocimientos precisos de la visión y necesidades de los usuarios e identifique necesidades de
información presentes y futuras.
• Construir confianza del usuario final. Encontrar soluciones adecuadas a problemas de usuarios finales aumen-
ta la confianza de éstos y la confianza en la función del DBA. La función del DBA es también educar al usuario
final acerca de los servicios proporcionados y cómo éstos mejoran la administración de datos y la seguridad de
éstos.
• Resolver conflictos y problemas. Hallar soluciones a problemas de usuarios finales de un departamento puede
desatar conflictos con otros departamentos. Los usuarios finales por lo general se ocupan de sus propias nece-
sidades específicas y no de las de otros, siendo poco probable que consideren el modo en que sus datos afec-
tan a otros departamentos dentro de la organización. Cuando aparecen conflictos de datos/información, la
función del DBA tiene la autoridad y responsabilidad de resolverlos.
• Hallar soluciones a necesidades de información. La capacidad y autoridad para resolver conflictos de datos
hace posible que el DBA desarrolle soluciones, que se ajustarán bien dentro del marco existente de administra-
ción de datos. El objetivo principal del DBA es dar soluciones para resolver las necesidades de información de
usuarios finales. Dada la creciente importancia de internet, es probable que esas soluciones requieran el desa-
rrollo y administración de servidores web para interactuar con las bases de datos. De hecho, el explosivo creci-
miento del comercio por internet requiere el uso de interfaces dinámicas para facilitar las consultas interactivas
acerca de productos y ventas de productos.
• Asegurar calidad e integridad de datos y aplicaciones. Una vez encontrada la solución correcta, debe ser
implementada y usada bien. Por tanto, el DBA debe trabajar con programadores de aplicación y usuarios
finales para enseñarles las normas y procedimientos de la base de datos, requeridos para la calidad, acceso y
manipulación de datos. El DBA debe también asegurarse que las transacciones de la base de datos no afecten
adversamente la calidad de los datos. Del mismo modo, certificar la calidad de los programas de aplicación que
tienen acceso a la base de datos es una función de importancia decisiva del DBA. Atención especial debe darse
a las interfaces de internet y el DBMS porque son propensas a problemas de seguridad.
• Administrar la capacitación y soporte a usuarios del DBMS. Una de las actividades que más tiempo consumen
al DBA es enseñar a usuarios finales cómo utilizar bien la base de datos. El DBA debe asegurarse que todos los
usuarios con acceso a ésta tengan conocimientos básicos de las funciones y uso del software del DBMS. El DBA
coordina y vigila todas las actividades respecto a la educación del usuario final.
620 C A P Í T U L O 1 5

Políticas, procedimientos y normas


Un componente principal de una estrategia exitosa de la administración de datos es el continuo cumplimiento de las
políticas, procedimientos y normas para la correcta creación, uso y eliminación de datos dentro de la base de datos. El
DBA debe definir, documentar y comunicar las políticas, procedimientos y normas antes que puedan aplicarse básica-
mente:

• Las políticas son declaraciones generales de dirección o acción que comunican y sustentan los objetivos del
DBA.
• Las normas describen las necesidades mínimas de una actividad determinada de un DBA; son más detalladas y
específicas que las políticas. En efecto, las normas son reglas que se usan para evaluar la calidad de la actividad.
Por ejemplo, las normas definen la estructura de programas de aplicación y las convenciones para dar nombres
que los usuarios deban emplear.
• Los procedimientos son instrucciones por escrito que describen una serie de pasos a seguir durante la opera-
ción de una actividad determinada. Los procedimientos deben ser desarrollados dentro de condiciones existentes
de trabajo y deben dar soporte y mejorar ese ambiente.

Para ilustrar las distinciones entre políticas, normas y procedimientos, veamos los siguientes ejemplos:

Políticas
Todos los usuarios deben tener contraseñas.
Las contraseñas deben ser cambiadas cada seis meses.

Normas
Una contraseña debe tener un mínimo de cinco caracteres.
Una contraseña debe tener un máximo de 12 caracteres.
Números de Seguro Social, nombres y fechas de nacimiento no se pueden usar como contraseñas.

Procedimientos
Para crear una contraseña, 1) el usuario final envía al DBA una solicitud por escrito para la creación de
una cuenta; 2) el DBA aprueba la solicitud y la envía al operador de la computadora; 3) el operador de la
computadora crea la cuenta, asigna una contraseña temporal y envía la información de la cuenta al usuario
final; 4) una copia de la información de la cuenta se envía al DBA; y 5) el usuario cambia la contraseña tem-
poral a una permanente.

Las normas y procedimientos definidas por el DBA son empleadas por todos los usuarios finales que deseen beneficiar-
se de la base de datos. Las normas y procedimientos deben complementarse entre sí y deben constituir una extensión
de las políticas de administración de datos. Los procedimientos deben facilitar el trabajo de usuarios finales y del DBA.
El DBA debe definir, comunicar y hacer cumplir procedimientos que abarcan campos de actividad como son:
• Agrupación de necesidades de la base de datos del usuario final. ¿Qué documentación se requiere? ¿Qué
formas deben usarse?
• Diseño y modelado de una base de datos. ¿Qué metodología de diseño de una base de datos ha de usarse (me-
todología de normalización u orientada a objetos)? ¿Qué herramientas han de usarse (herramientas de ingeniería
de software asistida por computadora [CASE], diccionarios de datos, diagramas UML o de ER)?
• Documentación y convenciones para dar nombres. ¿Qué documentación debe usarse en la definición de todos
los elementos de datos, conjuntos y programas con acceso a la base de datos?
• Diseño, codificación y prueba de programas de aplicación de bases de datos. El DBA debe definir las normas
para la codificación, documentación y prueba de programas de aplicación. Las normas y procedimientos del
DBA se dan a los programadores de aplicación y el DBA debe imponer esas normas.
• Selección de software de bases de datos. La selección del paquete del DBMS y cualquier otro software re-
lacionado con la base de datos debe ser manejado en forma apropiada. Por ejemplo, el DBA debe pedir que
el software sea interactuado en forma apropiada con el software existente, que tenga las características que la
organización necesita y que proporcione un rendimiento positivo sobre inversiones. En el ambiente de internet
de hoy en día, el DBA debe también trabajar con administradores de la web para implementar una conectividad
eficiente y segura de la web a la base de datos.
A D M I N I S T R A C I Ó N Y S E G U R I DA D D E B A S E D E D A T O S 621

• Seguridad e integridad de la base de datos. El DBA debe definir las políticas que rigen la seguridad e integri-
dad. La seguridad de una base de datos es especialmente crucial. Las normas de seguridad deben estar definidas
con toda claridad e impuestas en forma estricta. Los procedimientos de seguridad deben estar diseñados para
manejar una multitud de situaciones para cerciorarse que los problemas de seguridad son mínimos. Aunque no
hay sistema que pueda estar por completo seguro, deben diseñarse procedimientos de seguridad para satisfacer
normas críticas. El creciente uso de interfaces de internet a bases de datos abre la puerta a nuevas amenazas
de seguridad que son mucho más complejas y difíciles de manejar, que las que se encuentran con interfaces
más tradicionales, internamente generadas y controladas. Por tanto, el DBA debe trabajar estrechamente con
especialistas en seguridad en internet para cerciorarse que las bases de datos están debidamente protegidas de
ataques lanzados en forma inadvertida o deliberada.
• Respaldo y recuperación de una base de datos. Los procedimientos de respaldo y recuperación de una base
de datos deben incluir la información necesaria, para garantizar la correcta ejecución y administración de los
respaldos.
• Mantenimiento y operación de una base de datos. Las operaciones diarias de un DBMS deben estar clara-
mente documentadas. Los operadores deben mantener bitácoras de trabajo, escribir instrucciones y notas al
operador. Esas notas son útiles para identificar las causas y soluciones de problemas. Los procedimientos ope-
racionales también deben incluir información precisa respecto a procedimientos de respaldo y recuperación.
• Capacitación del usuario final. Debe establecerse un programa de capacitación, con la funcionalidad más
avanzada posible dentro de la organización y deben especificarse con toda claridad los procedimientos que rijan
la capacitación. El objetivo es indicar claramente quién hace qué, cuándo y cómo. Cada usuario final debe estar
informado del tipo y magnitud de la metodología de capacitación disponible.

Los procedimientos y normas deben modificarse, al menos cada año, para mantenerlos actualizados y asegurar que la
organización puede adaptarse rápidamente a cambios en el ámbito del trabajo. Naturalmente, la introducción de nuevo
software del DBMS, el descubrimiento de violaciones de seguridad o integridad, la reorganización de la compañía, así
como los cambios similares, requieren de la modificación de los procedimientos y normas.

Seguridad, privacidad e integridad de datos


La seguridad, privacidad e integridad de los datos de la base de datos son de la mayor preocupación para los DBA
que administren instalaciones actuales de DBMS. La tecnología ha señalado el camino para una mayor productivi-
dad por medio de administración de la información. La tecnología también ha resultado en la distribución de datos
en múltiples sitios, haciendo así más difícil mantener el control, seguridad e integridad de datos. La configuración
de datos, en múltiples sitios, ha hecho imperativo que el DBA utilice mecanismos de seguridad e integridad propor-
cionados por el DBMS, para hacer cumplir políticas de administración de bases de datos definidas en la sección previa.
Además, los DBA deben hacer equipo con expertos en seguridad de internet para formar mecanismos de seguridad y
salvaguardar datos contra posibles ataques o acceso no autorizado. La sección 15.6 estudia con más detalle problemas
de seguridad.

Respaldo y recuperación de datos


Cuando los datos no sean fácilmente disponibles, las compañías se arriesgan a pérdidas potencialmente cuantiosas. Por
tanto, los procedimientos de respaldo y recuperación de datos son de importancia decisiva en todas las instalaciones de
bases de datos. El DBA debe asegurar que los datos de la base de datos pueden ser recuperados por completo en caso
de pérdida física de datos o pérdida de integridad de la base de datos.

La pérdida de datos puede ser parcial o total. La parcial es causada por una pérdida física de parte de la base de datos
o cuando parte de la base de datos ha perdido integridad. Una pérdida total podría significar que la base de datos con-
tinúe existiendo, pero su integridad está enteramente perdida o que toda la base de datos esté físicamente perdida. En
cualquier caso, los procedimientos de respaldo y recuperación son el seguro más barato que se pueda pagar por una
base de datos.

La administración de la seguridad, integridad, respaldo y recuperación de una base de datos es tan crítica que nume-
rosos departamentos de DBA han creado una posición llamada oficial de seguridad de base de datos (DSO).
El único trabajo del DSO es garantizar la seguridad e integridad de la base de datos. En organizaciones grandes, las
actividades del DSO con frecuencia son calificadas como administración de desastres.
622 C A P Í T U L O 1 5

La administración de desastres incluye todas las actividades del DBA diseñadas para asegurar la disponibilidad
de datos, después de un desastre físico o una falla de integridad de la base de datos. La administración de desastres
comprende toda la planeación, organización, prueba de planes de contingencia de bases de datos y de procedimientos
de recuperación. Las medidas de respaldo y recuperación pueden incluir al menos:

• Respaldos periódicos de datos y aplicaciones. Algunos DBMS incluyen herramientas para asegurar el respal-
do y recuperación de los datos de la base de datos. El DBA debe usarlas para hacer automáticas las tareas de
respaldo y recuperación. Productos como DB2 de IBM permiten la creación de diferentes tipos de respaldo:
completos, incrementales y concurrentes. Un respaldo completo, también conocido como depósito de
base de datos, produce una copia completa de toda la base de datos. Un respaldo incremental produce
un respaldo de todos los datos desde la última fecha de respaldo; un respaldo concurrente ocurre cuando el
usuario está trabajando en la base de datos.
• Identificación correcta de respaldo. Los respaldos deben ser identificados claramente por medio de descrip-
ciones detalladas e información de fecha, haciendo posible así que el DBA asegure que se usen los respaldos
correctos para recuperar la base de datos. El medio más común de respaldo ha sido tradicionalmente la cinta; el
almacenamiento y marcado de cintas deben ser hechos de manera diligente por los operadores de la computa-
dora y el DBA debe dar seguimiento a la actualización y ubicación de la cinta. No obstante, las organizaciones
que sean lo suficiente grandes para contratar un DBA por lo general no usan discos compactos (CD) o DVD para
respaldos de sus empresas. Otras soluciones de respaldo de reciente aparición incluyen equipos de respaldo ópti-
cos y de discos. Estas soluciones de respaldo incluyen almacenamiento en línea basado en el Network Attached
Storage (NAS) y el Storage Area Networks (SAN). Las soluciones de respaldo de empresas utilizan un método
de respaldo de capas en el que los datos primero se respaldan a medios de disco rápido para almacenamiento
intermedio y rápida restauración. Después, los datos son transferidos a cinta para almacenamiento en archivo.
• Almacenamiento cómodo y seguro de respaldos. Debe haber múltiples respaldos de los mismos datos y cada
copia de respaldo debe ser guardada en un lugar diferente. Los lugares de almacenamiento deben incluir sitios
dentro y fuera de la organización. (Mantener respaldos diferentes en el mismo lugar derrota al propósito de tener
múltiples respaldos en el primer lugar.) Los lugares de almacenamiento deben estar debidamente preparados y
pueden contar con cajas fuertes y bóvedas de seguridad a prueba de terremotos, así como controles de humedad
y temperatura. El DBA debe establecer una política para responder a dos preguntas: 1) ¿Dónde han de guardar-
se los respaldos? 2) ¿Cuánto tiempo han de guardarse los respaldos?
• Protección física de hardware y software. La protección puede incluir el uso de instalaciones cerradas con
acceso restringido, así como preparación de los sitios de la computadora para proporcionar acondicionamiento
de aire, energía eléctrica para el respaldo y protección contra incendio. La protección física también incluye la
provisión de una computadora y DBMS para respaldo para uso en caso de emergencia. Por ejemplo, cuando el
huracán Katrina golpeó la costa del Golfo de México en 2005, Nueva Orléans sufrió la destrucción casi total de
su infraestructura de comunicaciones. La tormenta sirvió como “llamada de atención” para numerosas organi-
zaciones e instituciones educacionales, que no tenían planes adecuados para recuperarse del desastre para ese
nivel de interrupción del servicio.
• Control personal de acceso al software de una instalación de base de datos. Se pueden usar símbolos de
desafío/respuesta para contraseñas de multiniveles y privilegios, así como hardware y software para identificar
debidamente a usuarios autorizados de recursos.
• La cobertura de seguro para los datos en la base de datos. El oficial DBA o de seguridad deben garantizar una
política de seguros para dar protección financiera en el caso de una falla de la base de datos. El seguro puede
ser costoso, pero es menos caro que el desastre creado por una pérdida masiva de datos.

Dos puntos adicionales merecen la pena ser citados.


• Los planes para recuperación y contingencia de datos deben ser probados, evaluados perfectamente y prac-
ticados con frecuencia. Las prácticas llamadas “simulacro de incendio” no deben menospreciarse y requieren
de apoyo e imposición de parte de la alta dirección de la empresa.
• No es probable que un programa de respaldo y recuperación abarque todos los componentes de un sistema de
información, por lo cual es apropiado establecer prioridades respecto a la naturaleza y extensión del proceso
de recuperación de datos.

Distribución y uso de datos


Los datos son útiles sólo cuando llegan a los usuarios apropiados en forma oportuna. El DBA es responsable de asegurar
que los datos estén distribuidos a las personas apropiadas, en el momento oportuno y en el formato apropiado. Las ta-
A D M I N I S T R A C I Ó N Y S E G U R I DA D D E B A S E D E D A T O S 623

reas de distribución y uso de datos del DBA pueden ser muy lentas, en especial cuando la capacidad de entrega de datos
está basada en un ambiente típico de programación de aplicaciones, donde los usuarios dependen de programadores
para entregar los programas para tener acceso a los datos de la base de datos. Aunque internet y sus extensiones de
intranet y extranet han abierto bases de datos a usuarios corporativos, el empleo de las mismas también ha creado un
nuevo conjunto de desafíos para el administrador de bases de datos (DBA).

La filosofía actual de distribución de datos facilita que usuarios finales autorizados tengan acceso a la base de datos.
Una forma de lograr esa tarea es facilitar el uso de una nueva generación de herramientas más refinadas de consulta y
los nuevos componentes frontales de internet web. Todos éstos hacen posible que el DBA eduque a usuarios finales a
producir la información requerida sin ser dependientes de programadores de aplicaciones. Naturalmente, el DBA debe
asegurar que todos los usuarios se apeguen a normas y procedimientos apropiados.

Esta filosofía de compartir datos es común hoy en día y es probable que se haga más común a medida que avance la
tecnología de bases de datos; este ambiente es más flexible para el usuario final. Es evidente que capacitar a usuarios
finales para que sean relativamente autosuficientes en la aplicación y empleo de datos puede llevar a un más eficiente
uso de datos en el proceso de toma de decisiones. Sin embargo, esta “democracia de datos” puede producir también
algunos efectos colaterales engorrosos. Permitir que usuarios finales hagan un manejo microscópico de sus subconjun-
tos de datos puede, inadvertidamente, cortar la conexión entre esos usuarios y la función de administración de datos.
El trabajo del DBA bajo esas circunstancias puede hacerse lo suficientemente complicado como para comprometer la
eficiencia de la función de administración de datos. La duplicación de datos puede florecer otra vez sin verificaciones al
nivel organizacional para asegurar la unicidad de elementos de datos. Así, los usuarios finales que no conozcan perfec-
tamente la naturaleza y fuentes de datos pueden hacer uso inadecuado de los elementos de datos.

15.5.2 Función técnica del DBA

La función técnica del DBA requiere un conocimiento integral de funciones del DBMS, de su configuración, lenguajes
de programación, metodologías de modelado y diseño de datos, etc. Por ejemplo, las actividades técnicas del DBA inclu-
yen la selección, instalación, operación, mantenimiento y actualización del DBMS y software de utilería, así como el di-
seño, desarrollo, implementación y mantenimiento de los programas de aplicación que interactúan con la base de datos.

Muchas de las actividades técnicas del DBA son una extensión lógica de sus actividades administrativas. Por ejemplo,
el DBA tiene que ver con seguridad e integridad de bases de datos, respaldo y recuperación, así como capacitación y
soporte. De esta forma, la doble función del DBA puede ser conceptualizada como cápsula cuyo núcleo técnico está
cubierto por una capa administrativa clara.

Los aspectos técnicos del trabajo del DBA tienen su raíz en las siguientes áreas de operación:
• Evaluar, seleccionar e instalar el DBMS y utilerías relacionadas.
• Diseñar e implementar bases de datos y aplicaciones.
• Probar y evaluar bases de datos y aplicaciones.
• Operar el DBMS, utilerías y aplicaciones.
• Capacitar y dar soporte a usuarios.
• Mantener el DBMS, utilerías y aplicaciones.

Las siguientes secciones exploran los detalles de esas áreas operacionales.

Evaluar, seleccionar e instalar el DBMS y utilerías


Una de las primeras y más importantes responsabilidades técnicas del DBA es seleccionar el sistema de administración
de una base de datos, así como el software de utilería y hardware de soporte a usar en la organización. Por tanto, el
DBA debe desarrollar y ejecutar un plan para evaluar y seleccionar el DBMS, utilerías y hardware. Ese plan debe estar
fundado básicamente en las necesidades de la organización más que en características específicas de software y hard-
ware. El DBA debe reconocer que la búsqueda es de soluciones a problemas más que de una computadora o software
del DBMS. Dicho de un modo sencillo, el DBMS es una herramienta de administración y no un juguete tecnológico.
624 C A P Í T U L O 1 5

El primero y más importante paso del plan de evaluación y adquisición es determinar las necesidades de la compañía.
Para establecer una imagen clara de ellas, el DBA debe asegurarse que toda la comunidad de usuarios finales, incluidos
los gerentes de nivel superior y medio, intervenga en el proceso. Una vez identificadas las necesidades, los objetivos de
la función de administración de datos pueden ser establecidos con claridad, además que se pueden definir las caracte-
rísticas del DBMS y los criterios de selección.

Para igualar la capacidad del DBMS a las necesidades de la organización, el DBA debe crear una lista de verificación de
las características deseadas del DBMS. Esa lista debe abordar al menos estos problemas:

• Modelo del DBMS. ¿Las necesidades de la compañía son atendidas mejor por un DBMS relacional, orientado
a objetos u objeto/relacional? Si se requiere de una aplicación de almacén de datos, ¿debe usarse un DBMS
relacional o multidimensional?, ¿el DBMS da soporte a esquemas en estrella?
• Capacidad de almacenamiento del DBMS. ¿Qué tamaño máximo de disco y base de datos se requiere? ¿Cuán-
tos paquetes de discos deben ser soportados? ¿Cuántas unidades de cinta son necesarias? ¿Cuáles son otras nece-
sidades de almacenamiento?
• Soporte de desarrollo de aplicaciones. ¿Cuáles lenguajes de programación están soportados? ¿De qué herra-
mientas de desarrollo de aplicaciones (diseño de esquema de base de datos, diccionario de datos, vigilancia de
desempeño y pintores de pantalla y menú) se dispone? ¿Se cuenta con herramientas de consulta de usuario final?
¿El DBMS proporciona acceso a componentes frontales de la web?
• Seguridad e integridad. ¿El DBMS soporta reglas referenciales y de integridad de entidad, derechos de acceso,
etc? ¿El DBMS soporta el uso de revisiones de auditoría para localizar errores y violaciones de seguridad? ¿Puede
modificarse el tamaño de la revisión de auditoría?
• Respaldo y recuperación. ¿El DBMS proporciona algunas herramientas automatizadas de respaldo y recupe-
ración? ¿El DBMS soporta respaldo en cinta, disco óptico o en la red? ¿El DBMS respalda automáticamente
las bitácoras de transacción?
• Control de concurrencia. ¿El DBMS soporta múltiples usuarios? ¿Qué niveles de aislamiento (tabla, página,
renglón) ofrece el DBMS? ¿Cuánta codificación manual es necesaria en los programas de aplicación?
• Desempeño. ¿Cuántas transacciones por segundo soporta el DBMS? ¿Son necesarios procesadores de transac-
ción adicionales?
• Herramientas para administración de base de datos. ¿El DBMS ofrece algún tipo de interfaz de administra-
ción del DBA? ¿Qué tipo de información da la interfaz del DBA? ¿El DBMS produce alertas al DBA cuando
ocurren errores o violaciones de seguridad?
• Interoperabilidad y distribución de datos. ¿Puede el DBMS trabajar con otros tipos de DBMS en el mismo
ambiente? ¿Qué nivel de coexistencia o interoperabilidad se alcanza? ¿El DBMS da soporte a operaciones READ
y WRITE hacia y desde otros paquetes DBMS? ¿El DBMS soporta arquitectura cliente/servidor?
• Portabilidad y normas. ¿Puede el DBMS funcionar en diferentes sistemas operativos y plataformas? ¿Puede el
DBMS funcionar en mainframes, computadoras de media capacidad y computadoras personales? ¿Pueden las
aplicaciones del DBMS funcionar sin modificación en todas las plataformas? ¿Qué normas nacionales e indus-
triales sigue el DBMS?
• Hardware. ¿Qué hardware requiere el DBMS?
• Diccionario de datos. ¿El DBMS tiene un diccionario de datos? Si es así, ¿qué información se conserva en él?
¿El DBMS interactúa con alguna otra herramienta de diccionario de datos? ¿El DBMS soporta algunas herra-
mientas CASE?
• Capacitación y soporte de parte del vendedor. ¿El vendedor ofrece capacitación dentro de la empresa? ¿Qué
tipo y nivel de soporte proporciona el vendedor? ¿La documentación del DBMS es útil y fácil de leer? ¿Cuál es
la política de actualizaciones del vendedor?
• Herramientas disponibles de terceros. ¿Cuáles herramientas adicionales son ofrecidas por terceros vendedores
(herramientas de consulta, diccionario de datos, administración y control de acceso o herramientas para admi-
nistración de asignación de almacenamiento)?
• Costo. ¿Qué costos están implicados en la adquisición del software y hardware? ¿Cuánto personal adicional se
requiere y qué nivel de experiencia se necesita de ellos? ¿Cuáles son los costos recurrentes? ¿Cuál es el periodo
esperado de recuperación?
A D M I N I S T R A C I Ó N Y S E G U R I DA D D E B A S E D E D A T O S 625

Los pros y contras de varias soluciones alternativas deben ser evaluados durante el proceso de selección. Es frecuente
que las opciones existentes sean restringidas porque el software debe ser compatible con el sistema de computadoras
existente de la organización. Recuerde que un DBMS es sólo parte de una solución; requiere soporte de hardware co-
lateral, software de aplicación y programas de utilería. Por ejemplo, es probable que el uso del DBMS sea restringido
por la CPU(s) disponible, procesador(es) de componentes frontales, equipos auxiliares de almacenamiento, equipos
de comunicación de datos, el sistema operativo, sistema del procesador de transacciones, etc. Los costos asociados
con los componentes de hardware y software deben estar incluidos en las estimaciones.

El proceso de selección también debe considerar los costos de preparación del sitio. Por ejemplo, el DBA debe incluir
gastos que se hacen sólo una vez y los recurrentes que se hacen en la preparación y mantenimiento de las instalaciones
de la sala de computadoras.

El DBA debe supervisar la instalación de todo el software y hardware diseñado para dar soporte a la estrategia de
administración de datos, debe tener un conocimiento completo de los componentes que se instalen y también debe
estar familiarizado con los procedimientos de su instalación, configuración e inicio. Los procedimientos de instalación
incluyen detalles de ubicación de archivos de bitácora de respaldo y transacción, información de configuración de red y
detalles físicos de almacenamiento.

Recuerde que los detalles de instalación y configuración son dependientes del DBMS. Por tanto, esos detalles no pueden
ser resueltos en este libro. Consulte las secciones de instalación y configuración de la guía de administración del DBMS
de su sistema para revisar esos detalles.

Diseño e implementación de bases de datos y aplicaciones


La función del DBA también es de servicios de diseño y modelado de datos a usuarios finales. Es frecuente que esos
servicios sean coordinados por un grupo de desarrollo de aplicaciones dentro del departamento de procesamiento de
datos. Por tanto, una de las actividades principales de un DBA es determinar e imponer normas y procedimientos a
usar. Una vez en su lugar las normas apropiadas y marco de procedimientos, el DBA debe asegurarse que las actividades
de modelado y diseño de una base de datos sean ejecutadas dentro de ese marco. El DBA entonces proporciona la asis-
tencia y el soporte necesarios durante el diseño de la base de datos en los niveles conceptual, lógico y físico. (Recuerde
que el diseño conceptual es independiente del DBMS y del hardware, que el diseño lógico es dependiente del DBMS e
independiente del hardware y que el diseño físico es dependiente del DBMS y del hardware.)

La función del DBA por lo general requiere que varias personas se dediquen a actividades de modelado y diseño de la
base de datos. Este personal puede estar agrupado de acuerdo con las áreas organizacionales cubiertas por la aplica-
ción. Por ejemplo, el personal que modele y diseñe la base de datos podría estar asignado a sistemas de producción,
sistemas financieros y administrativos, o a sistemas de soporte a ejecutivos y a la toma de decisiones. El DBA programa
los trabajos de diseño para coordinar las actividades de diseño y modelado de datos. Esa coordinación puede requerir la
reasignación de recursos disponibles basada en prioridades determinadas desde el exterior.

El DBA también trabaja con programadores de aplicaciones para asegurar la calidad e integridad de transacciones y
diseño de la base de datos. Esos servicios de soporte incluyen revisar el diseño de aplicación de la base de datos para
asegurarse que las transacciones son:
• Correctas. Las transacciones representan eventos reales.
• Eficientes. Las transacciones no sobrecargan al DBMS.
• Manejables. Cumplen con reglas y normas de integridad.

Estas actividades requieren de personal con conocimientos muy extensos en el diseño y programación de una base de datos.

La implementación de las aplicaciones requiere la implementación de la base de datos física. Por tanto, el DBA debe dar
asistencia y supervisión durante el diseño físico, incluida la determinación y creación del espacio de almacenamiento,
carga de datos, conversión y servicios de migración de la base de datos. Las tareas de implementación del DBA también
incluyen la generación, compilación y almacenamiento del plan de acceso de la aplicación. Un plan de acceso es un
conjunto de instrucciones generadas en el momento de la compilación de aplicación, que determina la forma en que
la aplicación tendrá acceso a la base de datos en el tiempo de ejecución. Para ser capaz de crear y validar el plan de
acceso, el usuario debe tener los derechos requeridos para tener acceso a la base de datos (véase el capítulo 11).
626 C A P Í T U L O 1 5

Antes que una aplicación se encuentre en línea, el DBA debe desarrollar, probar e implementar los procedimientos
operacionales requeridos por el nuevo sistema. Esos procedimientos operacionales incluyen capacitación, seguridad
y planes de respaldo y recuperación, así como asignar responsabilidad para el control y mantenimiento de la base de
datos. Por último, el DBA debe autorizar a los usuarios de la aplicación a tener acceso a la base de datos desde la cual
las aplicaciones toman los datos requeridos.

La adición de una nueva base de datos puede requerir la afinación o la reconfiguración del DBMS. Recuerde que el
DBMS asiste a todas las aplicaciones al manejar el depósito de datos corporativos compartidos. Por tanto, cuando se
agreguen o modifiquen estructuras de datos, el DBMS puede requerir la asignación de recursos adicionales para prestar
servicio a usuarios nuevos y originales con igual eficiencia (véase el capítulo 11).

Prueba y evaluación de bases de datos y aplicaciones


El DBA también debe dar servicios de prueba y evaluación para todas las aplicaciones de la base de datos y el usuario fi-
nal. Esos servicios son la extensión lógica de los servicios de diseño, desarrollo e implementación descritos en la sección
anterior. Es evidente que los procedimientos y normas de prueba ya deben estar en vigor antes que cualquier programa
de aplicación pueda ser aprobado para su uso en la compañía.

Aunque los servicios de prueba y evaluación están estrechamente relacionados con los de diseño e implementación de
la base de datos, por lo general se mantienen en forma independiente. La razón para la separación es que con frecuen-
cia los programadores y diseñadores de aplicación están demasiado cerca del problema en estudio como para detectar
errores y omisiones.

La prueba por lo general empieza con la carga del banco de pruebas de la base de datos, la cual contiene datos de prue-
ba para las aplicaciones y su propósito es verificar las reglas de definición e integridad de la base de datos y programas
de aplicación.

La prueba y evaluación de la aplicación de una base de datos cubren todos los aspectos del sistema, desde la simple
captura y creación de datos hasta su uso y retiro. El proceso de evaluación abarca:
• Aspectos técnicos de las aplicaciones y de la base de datos. El respaldo y recuperación, seguridad e integridad,
usan SQL y debe evaluarse el desempeño de la aplicación.
• Evaluación de la documentación escrita para asegurar que ésta y sus procedimientos sean precisos y fáciles de
seguir.
• Observancia de normas para dar nombre, documentar y codificar.
• Conflictos de duplicación de datos con datos existentes.
• La aplicación de todas las reglas de validación.

A continuación de la prueba completa de todas las aplicaciones, la base de datos y los procedimientos, el sistema se
declara operacional y puede ponerse a la disponibilidad de usuarios finales.

Operación del DBMS, utilerías y aplicaciones


Las operaciones del DBMS se pueden dividir en cuatro áreas principales:
• Soporte del sistema.
• Vigilancia y afinación del desempeño.
• Respaldo y recuperación.
• Auditoría y vigilancia de seguridad.

Las actividades de soporte del sistema abarcan todas las tareas directamente relacionadas con las operaciones dia-
rias del DBMS y sus aplicaciones. Estas actividades incluyen llenar bitácoras de trabajo, cambiar cinta y verificar la si-
tuación del hardware de la computadora, paquetes de discos y fuentes de alimentación de emergencia. Las actividades
relacionadas con el sistema incluyen tareas periódicas y ocasionales como es correr programas especiales y configura-
ciones de recursos para versiones nuevas o actualizadas de aplicaciones de bases de datos.
A D M I N I S T R A C I Ó N Y S E G U R I DA D D E B A S E D E D A T O S 627

La vigilancia y afinación del desempeño requieren mucha de la atención y tiempo del DBA. Estas actividades están
diseñadas para asegurar que el DBMS, utilerías y aplicaciones mantengan niveles satisfactorios de desempeño. Para
realizar las tareas de vigilancia y afinación del desempeño, el DBA debe:
• Establecer objetivos de operación del DBMS.
• Vigilar el DBMS para evaluar si los objetivos se satisfacen.
• Aislar el problema y encontrar soluciones (si los objetivos no se satisfacen).
• Implementar las soluciones de desempeño seleccionadas.

Los DBMS con frecuencia incluyen herramientas para vigilancia del desempeño que permiten al DBA consultar in-
formación de uso de la base de datos. Esas herramientas también están disponibles desde numerosas fuentes: hay
utilerías del DBMS suministradas por vendedores; pueden estar incluidas en utilerías del sistema operativo o equipos
del procesador de transacciones. Casi todas las herramientas para vigilancia de desempeño permiten que el DBA
se concentre en cuellos de botella seleccionados del sistema. Los cuellos de botella más comunes en la afinación de
desempeño del DBMS están relacionados con el uso de índices, algoritmos de optimización de consulta y la admi-
nistración de recursos de almacenamiento.

Debido a que la impropia selección de un índice puede tener un efecto perjudicial en el desempeño del sistema, casi
todas las instalaciones del DBMS se apegan a un plan cuidadosamente definido de creación y uso del índice. Este plan
es especialmente importante en un ambiente de base de datos relacional.

Para producir un desempeño satisfactorio, es probable que el DBA pase mucho tiempo tratando de educar a programa-
dores y usuarios finales sobre el uso adecuado de las instrucciones de SQL. En general, los manuales de programadores
del DBMS y manuales de administración contienen útiles guías de desempeño y ejemplos que demuestran el correcto
uso de instrucciones de SQL, tanto en el modo de línea de comando como dentro de programas de aplicación. De-
bido a que los sistemas relacionales no dan al usuario una selección de índice dentro de una consulta, el DBMS
hace tal selección por el usuario. Por tanto, el DBA debe crear índices que puedan ocuparse para mejorar el desempeño
del sistema. (Para ejemplos de afinación de desempeño de la base de datos, vea el capítulo 11.)

Las rutinas de optimización de consulta suelen estar integradas en el paquete del DBMS, permitiendo pocas opciones
de afinación. Esas rutinas están orientadas a mejorar el acceso concurrente a la base de datos. Varios paquetes de bases
de datos permiten al DBA especificar parámetros para determinar el nivel deseado de concurrencia. La concurrencia
también resulta afectada por los tipos de bloqueos empleados por el DBMS y solicitados por las aplicaciones. Como
el tema de concurrencia es importante para la eficiente operación del sistema, el DBA debe estar familiarizado con los
factores que influyen en ella. (Véase el capítulo 10 para más información sobre ese tema.)

Durante la afinación de desempeño del DBMS, el DBA debe también considerar recursos de almacenamiento disponi-
bles en términos de memoria principal y secundaria. La asignación de recursos de almacenamiento se determina cuan-
do se configura el DBMS. Se pueden usar parámetros para configuración de almacenamiento para determinar:
• El número de bases de datos que puedan abrirse de manera concurrente.
• El número de programas de aplicación o usuarios soportados de manera concurrente.
• La cantidad de memoria principal (tamaño de área de memoria temporal) asignada a cada base de datos y al
proceso de cada base de datos.
• El tamaño y ubicación de los archivos de bitácora. (Recuerde que estos archivos se usan para recuperar la
base de datos. Los archivos de bitácora pueden localizarse en un volumen separado para reducir el movimiento
de la cabeza del disco y aumentar su desempeño.)

Los aspectos de vigilancia del desempeño son específicos del DBMS. Por tanto, el DBA debe estar familiarizado con
los manuales del DBMS para aprender los detalles técnicos que aparecen en la tarea de vigilar el desempeño (véase el
capítulo 11).

Debido a que es probable que la pérdida de datos sea devastadora para la organización, las actividades de respaldo
y recuperación son de importancia máxima durante la operación del DBMS. El DBA debe establecer un programa
para respaldar archivos de la base de datos y de bitácora, a intervalos apropiados. La frecuencia de respaldo depen-
de del tipo de aplicación y de la importancia relativa de los datos. Todos los componentes críticos de un sistema, como
son la base de datos, las aplicaciones de ésta y las bitácoras de transacciones deben ser respaldados periódicamente.
628 C A P Í T U L O 1 5

Casi todos los paquetes de DBMS incluyen utilerías que programan respaldos automatizados de bases de datos, sean
completos o incrementales. Aunque los respaldos incrementales son más rápidos que los completos, un respaldo incre-
mental requiere la existencia de un respaldo completo periódico para ser útil para fines de recuperación.

La recuperación de datos después de una falla de medios o sistemas requiere la aplicación de la bitácora de transaccio-
nes a la copia correcta de la base de datos. El DBA debe planear, implementar, probar hacer cumplir un procedimiento
de respaldo y recuperación “a prueba de balas”.

La auditoría y vigilancia de seguridad supone la asignación apropiada de derechos de acceso y el adecuado uso de
privilegios de acceso por programadores y usuarios finales. Los aspectos técnicos de la auditoría y vigilancia de se-
guridad comprenden la creación de usuarios, asignar derechos de acceso, usar comandos de SQL para conceder y revo-
car derechos de acceso a usuarios y objetos de base de datos, así como crear revisiones de auditoría para descubrir
violaciones de seguridad o violaciones intentadas. El DBA debe generar periódicamente un informe de revisiones de
auditoría para determinar si ha habido violaciones de seguridad reales o intentadas; si es así, desde qué lugares y hechas
por quiénes. Para una discusión amplia de la seguridad de bases de datos, véase la sección 15.6.

Capacitación y soporte a usuarios


La capacitación del personal para usar el DBMS y sus herramientas está incluida en las actividades técnicas del DBA.
Además, el DBA da o garantiza capacitación técnica en el uso del DBMS y sus utilerías para los programadores de
aplicaciones. La capacitación del programador de aplicaciones abarca el uso de las herramientas del DBMS, así como
los procedimientos y normas requeridos para la programación de la base de datos.

El soporte técnico no programado y a petición para usuarios finales y programadores también está incluido en las
actividades del DBA. Puede crearse un procedimiento técnico para localizar fallas para facilitar ese soporte. El procedi-
miento técnico puede incluir el desarrollo de una base de datos técnica empleada para encontrar soluciones a problemas
técnicos comunes.

Parte del soporte es proporcionado mediante la interacción con los vendedores del DBMS. Establecer buenas relaciones
con proveedores de software es una forma de garantizar que la compañía tenga una buena fuente de soporte externo.
Los vendedores son fuente de información actualizada de nuevos productos y de capacitación de personal. Es probable
también que las buenas relaciones entre vendedores y compañías den a organizaciones una ventaja para determinar la
dirección futura del desarrollo de una base de datos.

Mantenimiento del DBMS, utilerías y aplicaciones


Las actividades de mantenimiento del DBA son una extensión de las actividades operacionales y están dedicadas a la
preservación del ambiente del DBMS.

El mantenimiento periódico del DBMS incluye la administración de los equipos de almacenamiento físico o secundario.
Una de las actividades más comunes de mantenimiento es reorganizar el lugar físico de datos de la base de datos. (Eso
es lo que por lo general se hace como parte de las actividades de afinación del DBMS.) La reorganización de una base
de datos puede estar diseñada para asignar lugares contiguos de página de disco al DBMS para aumentar el desempeño.
El proceso de reorganización también puede liberar espacio asignado para eliminar datos, dando así más espacio de
disco para nuevos datos.

Las actividades de mantenimiento también incluyen actualizar el DBMS y el software de utilería. La actualización pue-
de requerir la instalación de una nueva versión del software o una herramienta de elemento frontal de internet, o puede
crear una compuerta adicional al DBMS para permitir el acceso a un DBMS que se ejecute en una computadora anfi-
trión diferente. Los servicios de compuerta del DBMS son muy comunes en aplicaciones de un DBMS distribuido que
se ejecuten en un ambiente cliente/servidor. Del mismo modo, las bases de datos de nueva generación incluyen carac-
terísticas de soporte de datos espaciales, almacenes de datos y soporte a consulta en estrella, así como soporte para
interfaces de programación de Java para acceso a internet (véase el capítulo 14).

Es frecuente que las compañías se vean en la necesidad de intercambiar datos en formatos diferentes o entre bases
de datos. Los trabajos de mantenimiento del DBA incluyen servicios de migración y conversión para datos en forma-
tos incompatibles o para software diferente del DBMS. Esas condiciones son comunes cuando el sistema se actualiza
de una versión a otra o cuando el DBMS existente es sustituido por un DBMS enteramente nuevo. Los servicios de
conversión de base de datos también incluyen descargar datos del DBMS anfitrión (basado en un mainframe) a una
A D M I N I S T R A C I Ó N Y S E G U R I DA D D E B A S E D E D A T O S 629

computadora personal del usuario final, para permitir que éste realice una variedad de actividades como son análisis
de hojas de cálculo, gráficas, modelado estadístico, etc. Los servicios de migración y conversión pueden realizarse al
nivel lógico (específico del DBMS o del software) o al nivel físico (medios de almacenamiento o específico del sistema
operativo). Los DBMS de la actual generación soportan XML como formato estándar para intercambio de datos entre
sistemas de base de datos y aplicaciones (véase el capítulo 14).

15.6 SEGURIDAD
La seguridad se refiere a actividades y medidas para garantizar la confidencialidad, integridad y disponibilidad de
un sistema de información y su principal activo, los datos.3 Es importante entender que asegurar datos requiere de un
método completo que abarque toda la compañía, es decir, no se pueden asegurar datos si no se aseguran todos los
procesos y sistemas a su alrededor. De hecho, asegurar datos implica asegurar la arquitectura de todo el sistema de
información, incluidos sistemas de hardware, aplicaciones de software, la red y sus equipos, personal (usuarios internos
y externos), procedimientos y los datos mismos. Para comprender el alcance de la seguridad de datos, examinemos con
más detalle los tres objetivos de seguridad.

• La confidencialidad se refiere a asegurar que los datos estén protegidos contra acceso no autorizado y, si
un usuario autorizado tiene acceso a ellos, que se utilicen sólo para un propósito autorizado. En otras palabras,
la confidencialidad implica salvaguardar datos contra la exhibición de cualquier información que violaría los
derechos de privacidad de una persona u organización. Los datos deben ser evaluados y clasificados de acuerdo
con el nivel de confidencialidad: altamente restringidos (muy pocas personas tienen acceso), confidenciales (sólo
ciertos grupos tienen acceso) y no restringidos (todos los usuarios pueden tener acceso a los datos). El oficial de
seguridad de los datos emplea una buena cantidad de tiempo para garantizar que la organización se apegue a
los niveles deseados de confidencialidad. El acatamiento se refiere a actividades emprendidas para satisfacer
la privacidad de datos y guías para informar de la seguridad. Estas guías para dar informes son, ya sea parte
de procedimientos internos o guías impuestas por agencias externas de regulación, como el gobierno federal.
Ejemplos de legislación promulgada con el propósito de asegurar la privacidad y confidencialidad de datos
incluyen la Health Insurance Portability and Accountability Act (HIPAA), Gramm-Leach-Bliley Act (GLBA) y
Sarbanes-Oxley Act (SOX).4
• La integridad, dentro del marco de seguridad de datos, se ocupa de mantener datos consistentes, libres de
errores o anomalías. La integridad se concentra en mantener los datos libres de inconsistencias y anomalías
(véase el capítulo 1 para repasar conceptos de inconsistencias y anomalías de datos). El DBMS desempeña una
función de importancia decisiva para asegurar la integridad de los datos de la base de datos. No obstante, desde
el punto de vista de seguridad, la integridad se refiere no sólo a los datos de la base de datos sino también a
garantizar que los procesos organizacionales, usuarios y patrones de uso mantengan esa integridad. Por ejem-
plo, un empleado que trabaje en casa usando internet para tener acceso al costeo de productos podría ser
considerado un uso aceptable; pero las normas de seguridad pueden requerir que el empleado use una conexión
segura y siga estrictos procedimientos para manejar los datos en casa (destruir informes impresos, usar codifi-
cación criptográfica para copiar datos a la unidad de disco duro local, etc.). Mantener la integridad de los datos
es un proceso que empieza con la captura y continúa con el almacenamiento de datos, procesamiento, uso y
archivado (véase el capítulo 13). La razón fundamental que está detrás de la integridad es tratar datos como el
activo más valioso en la organización y, por tanto, asegurar que una rigurosa validación de datos se realice a
todos los niveles dentro de la organización.
• La disponibilidad se refiere a la accesibilidad de datos siempre que sean requeridos por usuarios autorizados
y para fines autorizados. Para garantizar la disponibilidad de datos, todo el sistema (no sólo el componente
de datos) debe ser protegido de degradación o interrupción de servicio causadas por cualquier fuente (in-
terna o externa). Las interrupciones de servicio podrían ser muy costosas para compañías y usuarios por igual.
La disponibilidad del sistema es un importante objetivo de seguridad.

15.6.1 Políticas de seguridad

Normalmente, las tareas de asegurar el sistema y su activo principal, los datos, son realizadas por el oficial de seguridad
de la base de datos y el administrador(es) de la base de datos, quienes trabajan juntos para establecer una estrategia
3 M. Krause y H. Tipton, Handbook of Information Security Management, CRC Press LLC, 1999.
4 Para encontrar información adicional acerca de estas diferentes leyes, visite http://library.uis.edu/findinfo/govinfo/federal/law.html.
630 C A P Í T U L O 1 5

coherente de seguridad de datos. Esa estrategia de seguridad empieza con definir una política razonada e integral de
seguridad. Una política de seguridad es un conjunto de normas, políticas y procedimientos creados para garan-
tizar la seguridad de un sistema, de una auditoría y del apego a normas. El proceso de auditar la seguridad empieza
por identificar las vulnerabilidades de seguridad en la infraestructura del sistema de información de la organización,
así como identificar medidas para proteger el sistema y datos contra esas vulnerabilidades.

15.6.2 Vulnerabilidades de seguridad

Una vulnerabilidad de seguridad es una debilidad en un componente del sistema que pudiera ser explotada para
permitir el acceso no autorizado o causar interrupción del servicio. La naturaleza de las vulnerabilidades podría ser de
múltiples tipos: técnicas (por ejemplo, una falla en el sistema operativo o navegador web), administrativas (por ejemplo,
no educar a usuarios acerca de problemas críticos de seguridad), culturales (ocultar contraseñas bajo el teclado o no
destruir informes confidenciales), procedimental (no pedir contraseñas complejas o no revisar las ID de usuario), etc.
Cualquiera que sea el caso, cuando una vulnerabilidad de seguridad se deja sin verificar, puede convertirse en una ame-
naza. Una amenaza de seguridad es una inminente violación de seguridad que puede ocurrir en cualquier momento
debido a una vulnerabilidad no revisada.

Una violación de seguridad ocurre cuando una amenaza de seguridad es explotada para afectar negativamente la
integridad, confidencialidad o disponibilidad del sistema. Las violaciones de seguridad pueden resultar en una base de
datos cuya integridad es preservada o dañada:
• Preservada. Se requiere de acción para evitar la repetición de problemas de seguridad semejantes, pero la
recuperación de datos puede no ser necesaria. En realidad, casi todas las violaciones de seguridad son produci-
das por acceso no autorizado y no observado para fines de información, pero esa intromisión no interrumpe la
base de datos.
• Dañada. Se requiere de acción para evitar la repetición de problemas de seguridad semejantes y la base de da-
tos debe ser recuperada a un estado consistente. Este tipo de violaciones de seguridad incluyen acceso a una
base de datos por virus y hackers cuyas acciones tienen la intención de destruir o alterar datos.

La tabla 15.4 ilustra algunas vulnerabilidades a las que están expuestos los componentes del sistema, así como algunas
medidas típicamente tomadas para protegerlos contra ellas.

TABLA Muestra de vulnerabilidades de seguridad y medidas relacionadas


15.4
COMPONENTE
COMPONENTE VULNERABILIDAD
VULNERABILIDAD DEDE SEGURIDAD
SEGURIDAD MEDIDAS DESEGURIDAD
MEDIDAS DE SEGURIDAD
DELSISTEMA
DEL SISTEMA
Personal El usuario fija contraseña en blanco. Imponer políticas complejas de contraseñas.
La contraseña es corta e incluye fecha Usar autenticación de múltiple nivel.
de nacimiento. Usar pantallas de seguridad y protectores de
El usuario siempre deja abierta la puerta pantalla.
de su oficina. Educar a usuarios acerca de datos sensibles.
El usuario deja largo tiempo información Instalar cámaras de seguridad.
de nómina en pantalla. Usar cerraduras automáticas en puertas.
Estación de El usuario copia datos a unidad flash. Usar políticas de grupo para restringir uso
trabajo y La estación de trabajo es usada por múltiples de unidad flash.
servidores usuarios. Asignar derechos de acceso a usuarios a estaciones
Falla de energía detiene operación de la de trabajo
computadora. Instalar fuentes de energía ininterrumpida (UPS).
Personal no autorizado puede usar la Agregar equipos de seguridad a computadoras.
computadora. Implementar un interruptor “muerto” para laptops
Datos sensibles guardados en computadoras robadas.
laptop. Crear y probar planes de respaldo y recuperación
Datos perdidos por disco duro/laptop de datos.
robados. Asegurar sistema contra desastres naturales, usar
Desastres naturales, temblor, inundación, estrategias de co-localización.
etcétera.
A D M I N I S T R A C I Ó N Y S E G U R I DA D D E B A S E D E D A T O S 631

TABLA Muestra de vulnerabilidades de seguridad y medidas relacionadas (continúa)


15.4
COMPONENTE VULNERABILIDAD DE SEGURIDAD MEDIDAS DE SEGURIDAD
DEL SISTEMA
Sistema operativo Ataques de desbordamiento de espacio Aplicar parches y actualizaciones de seguridad al OS.
de almacenamiento temporal. Aplicar parches al servidor de aplicaciones.
Ataques de virus. Instalar software antivirus y antiespías.
Ataques de gusanos y equipos raíz. Imponer revisiones de auditoría en las computadoras.
Ataques de denegación de servicios. Efectuar respaldos sistemáticos periódicos.
Caballos de Troya. Instalar sólo aplicaciones autorizadas.
Aplicaciones de spyware (espías). Usar políticas de grupo para evitar instalaciones no
Violadores de contraseñas. autorizadas.
Aplicaciones Errores de aplicación; desbordamiento de Probar extensamente programas de aplicación.
espacio de almacenamiento temporal Construir salvaguardas en código.
Inyección de SQL, asalto a sesión, etcétera. Hacer extensas pruebas de vulnerabilidad en
Vulnerabilidades de aplicación; aplicaciones.
codificación cruzada, entradas no Instalar filtros antiespam/antivirus para sistema de
validadas. correo.
Ataques por correo: correo basura, Usar técnicas de codificación seguras (véase
suplantación de identidad, etcétera. www.owasp.org).
Correos de ingeniería social. Educar usuarios acerca de ataques de ingeniería social.
Red Falsificación de datos IP. Instalar cortafuegos.
Detectores de paquetes. Redes privadas virtuales (VPN).
Ataques de hackers. Sistemas de detección de intrusión (IDS).
Borrar contraseñas en red. Control de acceso a red (NAC).
Vigilancia de actividad en red.
Datos Partes de datos están abiertas a todos los Implementar seguridad de sistema de archivos.
usuarios. Implementar seguridad de acceso compartido.
Se puede tener acceso remoto a datos. Usar permiso de acceso.
Datos pueden ser borrados desde recurso Cifrar (encriptar) datos al nivel del sistema o base de
compartido. datos.

15.6.3 Seguridad de la base de datos

La seguridad de la base de datos se refiere al uso de las funciones del DBMS y otras medidas relacionadas para
cumplir con los requisitos de seguridad de la organización. Desde el punto de vista del DBA, deben implementarse
medidas de seguridad para proteger el DBMS contra degradación del servicio y a la base de datos contra pérdida, daño
o mal manejo. En pocas palabras, el DBA debe asegurar al DBMS desde el punto de instalación y en toda operación
y mantenimiento.

Nota

James Martin da una excelente lista y descripción de los atributos deseables de una estrategia de seguridad de
una base de datos, que continúa siendo relevante hoy día (James Martin, Magaging the Database Environ-
ment, Englewood Cliffs, NJ: Prentice-Hall, 1977). La estrategia de seguridad de Martin está basada en los
siete puntos esenciales de seguridad de una base de datos y puede resumirse en uno en que:
• Los datos están protegidos, se pueden reconstruir, son auditables y a prueba de falsificaciones.
• Los usuarios son identificables, autorizados, vigilados.

Para proteger el DBMS contra degradación del servicio hay ciertas salvaguardas mínimas de seguridad recomendadas.
Por ejemplo:
• Cambiar contraseñas predeterminadas del sistema.
• Cambiar rutas predeterminadas de instalación.
• Aplicar los parches más recientes.
• Asegurar carpetas de instalación con derechos de acceso apropiados.
632 C A P Í T U L O 1 5

• Asegurarse que se ejecuten sólo los servicios requeridos.


• Establecer bitácoras de auditoría.
• Establecer identificación de sesión.
• Requerir cifrado de sesión.

Además, el DBA debe trabajar estrechamente con el administrador de red para implementar la seguridad de red a fin
de proteger el DBMS y todos los servicios que se ejecuten en la red. En las organizaciones actuales, uno de los compo-
nentes más críticos en la arquitectura de información es la red.

Proteger los datos de la base de datos es una función de la administración de autorización. La administración de
autorización define procedimientos para proteger y garantizar la seguridad e integridad de la base de datos. Esos
procedimientos incluyen, pero no están limitados a, la administración de acceso de usuario, definición de vista, control
de acceso a un DBMS y vigilancia de uso de un DBMS.
• Administración de acceso de usuario. Esta función está diseñada para limitar el acceso a la base de datos y es
probable que incluya al menos los siguientes procedimientos:
- Definir cada usuario a la base de datos. Esto se obtiene al nivel del sistema operativo y al nivel del DBMS.
Al nivel del sistema operativo, el DBA puede pedir la creación de una ID (identificación) de usuario que per-
mita a éste registrarse en el sistema computarizado. Al nivel del DBMS, el DBA puede crear una diferente
ID de usuario o emplear la misma ID para autorizar al usuario final a tener acceso al DBMS.
- Asignar contraseñas a cada usuario. Esto, también, puede hacerse a los niveles del sistema operativo y del
DBMS. Las contraseñas de la base de datos pueden asignarse con fechas de expiración predeterminadas. El
uso de fechas de expiración hace posible que el DBA filtre usuarios finales periódicamente y les recuerde cam-
biar sus contraseñas a determinados intervalos, con lo cual se hace menos probable un acceso no autorizado.
- Definir grupos de usuarios. Clasificar usuarios en grupos, de acuerdo con necesidades de acceso comunes,
facilita el trabajo del DBA de controlar y administrar los privilegios de acceso a usuarios individuales. Tam-
bién, el DBA puede usar funciones de la base de datos y límites de recursos para reducir al mínimo el impacto
de usuarios deshonestos en el sistema (para más información sobre estos temas, véase la sección 15.9.6).
- Asignar privilegios de acceso. El DBA asigna privilegios o derechos de acceso a usuarios específicos para
tener acceso a bases de datos específicas. Un privilegio de acceso describe el tipo de acceso autorizado. Por
ejemplo, los derechos de acceso pueden estar limitados sólo a lectura, o el acceso autorizado puede incluir
privilegios READ, WRITE y DELETE. Los privilegios de acceso en bases de datos relacionales son asignados
a través de los comandos GRANT y REVOKE de SQL.
- Controlar acceso físico. La seguridad física puede impedir que usuarios no autorizados tengan acceso
directamente a los equipos e instalación del DBMS. Algunas prácticas comunes de seguridad física que se
encuentran en instalaciones grandes de bases de datos incluyen entradas aseguradas, estaciones de trabajo
protegidas con contraseña, gafetes electrónicos del personal, circuitos cerrados de video, reconocimiento de
voz y tecnología biométrica.
• Definición de vista. El DBA debe definir vistas de datos para proteger y controlar el ámbito de los datos que
sean accesibles a un usuario autorizado. El DBMS debe proporcionar las herramientas que permitan la definición
de vistas que estén compuestas de una o más tablas y la asignación de derechos de acceso a un usuario o un
grupo de usuarios. El comando CREATE VIEW de SQL se utiliza en bases de datos relacionales para definir vis-
tas. El DBMS de Oracle ofrece Virtual Private Database (VPD), que permite al DBA crear vistas personalizadas
de los datos para múltiples usuarios. Con esta función, el DBA podría restringir que un usuario regular consulte
una base de datos de nóminas para ver sólo los renglones y columnas necesarios, en tanto que el gerente del
departamento vería sólo los renglones y columnas pertinentes a ese departamento.
• Control de acceso a un DBMS. El acceso a una base de datos puede ser controlado si se colocan límites al
uso de herramientas de consulta e informes de un DBMS. El DBA debe asegurarse que esas herramientas sean
utilizadas en forma apropiada y sólo por personal autorizado.
• Vigilancia de uso de un DBMS. El DBA también debe auditar el uso de los datos en la base de datos. Varios
paquetes de DBMS contienen funciones que permiten la creación de una bitácora de auditoría, que au-
tomáticamente registra una breve descripción de las operaciones de la base de datos ejecutadas por todos los
usuarios. Esas revisiones de auditoría hacen posible que el DBA localice violaciones de acceso. Las revisiones de
auditoría pueden ser personalizadas para registrar todos los accesos a la base de datos o sólo los fallidos.
A D M I N I S T R A C I Ó N Y S E G U R I DA D D E B A S E D E D A T O S 633

La integridad de una base de datos podría perderse debido a factores fuera del control del DBA. Por ejemplo, la base
de datos podría resultar dañada o destruida por una explosión, incendio o terremoto. Cualquiera que sea la causa, el
espectro del daño o destrucción de una base de datos hace que los procedimientos de respaldo y recuperación sean de
importancia crucial para cualquier DBA.

15.7 HERRAMIENTAS PARA ADMINISTRACIÓN DE UNA BASE DE DATOS

No se puede exagerar la importancia del diccionario de datos como la herramienta de mayor importancia para el DBA.
Esta sección examinará el diccionario de datos como herramienta para administración de datos, así como el uso por
parte del DBA de herramientas de ingeniería de software asistida por computadora (CASE), para contribuir al análisis
y diseño de una base de datos.

15.7.1 El diccionario de datos

En el capítulo 1, un diccionario de datos se definió como un componente de DBMS que guarda la definición de carac-
terísticas y relaciones de datos. El lector puede recordar que tales “datos acerca de datos” se denominan metadatos. El
diccionario de datos del DBMS equipa al DBMS con su característica para describirse a sí mismo. En efecto, el dicciona-
rio de datos se asemeja a una placa de rayos X del conjunto de datos de toda la compañía y es un elemento de mayor
importancia en la administración de datos.

Existen dos tipos principales de diccionarios de datos: integrados y autónomos. Un diccionario integrado está incluido
con el DBMS. Por ejemplo, todos los DBMS relacionales tienen un diccionario de datos integrado o catálogo de sistema
al que los RDBMS tienen frecuente acceso y lo actualizan. Otros DBMS, en especial los de tipo antiguo, no tienen un
diccionario de datos integrado; en cambio, el DBA puede usar sistemas de diccionarios de datos autónomos.

Los diccionarios de datos también se pueden clasificar como activos o pasivos. Un diccionario de datos activo
es actualizado automáticamente por el DBMS con todo acceso a la base de datos, con lo cual mantiene actualizada su
información de acceso. Un diccionario de datos pasivo no se actualiza automáticamente y por lo general requiere
que sea ejecutado un procesamiento por lotes. La información de acceso al diccionario de datos por lo general es utili-
zada por el DBMS para fines de optimización de consulta.

Las principales funciones de un diccionario de datos es guardar la descripción de todos los objetos que interactúan con
la base de datos. Los diccionarios integrados de datos tienden a limitar sus metadatos a los datos manejados por el
DBMS. Los sistemas de diccionario de datos autónomo por lo general son más flexibles y permiten que el DBA describa
y maneje todos los datos de la organización, sean o no computarizados. Cualquiera que sea el formato del diccionario
de datos, su existencia hace posible que diseñadores y usuarios de bases de datos cuenten con mucho mejor capacidad
para comunicarse. Además, el diccionario es la herramienta que ayuda al DBA a resolver conflictos de datos.

Aunque no hay formato estándar para la información guardada en el diccionario de datos, varias características son
comunes. Por ejemplo, el diccionario típicamente guarda descripciones de todos los:
• Elementos de datos que estén definidos en todas las tablas de todas las bases de datos. Específicamente, el
diccionario guarda los nombres, tipos de datos, formato de exhibición, formato de almacenamiento interno y re-
glas de validación. El diccionario dice dónde se utiliza un elemento, por quién es utilizado, etcétera.
• Tablas definidas en todas las bases de datos. Por ejemplo, es probable que el diccionario guarde el nombre del
creador de la tabla, la fecha de creación, autorizaciones de acceso y el número de columnas.
• Índices definidos por cada tabla de base de datos. Por cada índice, el DBMS guarda al menos el nombre
del índice, los atributos utilizados, el lugar, características específicas y fecha de creación.
• Bases de datos definidas. Esto incluye quién creó cada base de datos, cuándo fue creada, dónde se encuentra,
quién es el DBA, etcétera.
• Usuarios finales y administradores de la base de datos.
• Programas que tienen acceso a la base de datos. Esto incluye formatos de pantalla, formatos de informes,
programas de aplicación y consultas de SQL.
• Autorizaciones de acceso para todos los usuarios de todas las bases de datos.
• Relaciones entre elementos de datos. Esto incluye cuáles elementos intervienen, si las relaciones son obligato-
rias u opcionales y cuáles son las necesidades de conectividad y cardinalidad.
634 C A P Í T U L O 1 5

Si el diccionario de datos puede ser organizado para incluir datos externos al DBMS en sí, se convierte en una herra-
mienta especialmente flexible para una administración más general de recursos corporativos. La administración de tan
extenso diccionario de datos hace así posible manejar el uso y asignación de toda la información de la organización,
sin considerar si la información tiene sus raíces en los datos de la base de datos. Esa es la razón por la cual algunos
gerentes consideran que el diccionario de datos es un elemento clave de la administración de recursos de información.
Y esa también es la razón por la cual el diccionario de datos puede ser descrito como el diccionario de recursos
de información.

Los metadatos guardados en el diccionario de datos son con frecuencia la base para vigilar el empleo de la base de datos
y para asignar derechos de acceso a los usuarios de ésta. La información guardada en el diccionario por lo general está
apoyada en un formato de tabla relacional, haciendo así posible que el DBA consulte la base de datos con comandos de
SQL. Por ejemplo, los comandos de SQL se pueden utilizar para extraer información acerca de los usuarios de una tabla
específica o acerca de derechos de acceso a un usuario particular. En el siguiente ejemplo, se usarán tablas del catálogo
del sistema DB2 de IBM como base para varios ejemplos de cómo se usa un diccionario para derivar información.

SYSTABLES guarda un renglón por cada tabla o vista.

SYSCOLUMNS guarda un renglón por cada columna de cada tabla o vista.

SYSTABAUTH guarda un renglón por cada autorización dada a un usuario para una tabla o vista en una base de datos.

Ejemplos de uso de diccionario de datos


Ejemplo 1

Cite los nombres y fechas de creación de todas las tablas creadas por el usuario JONESVI en la base de datos en uso.

SELECT NAME, CTIME


FROM SYSTABLES
WHERE CREATOR = ‘JONESVI’;

Ejemplo 2

Cite los nombres de las columnas para todas las tablas creadas por JONESVI de la base de datos en uso.

SELECT NAME
FROM SYSCOLUMNS
WHERE TBCREATOR = ‘JONESVI’;

Ejemplo 3

Cite los nombres de todas las tablas para las cuales el usuario JONESVI tiene autorización DELETE (para borrar).

SELECT TTNAME
FROM SYSTABAUHT
WHERE GRANTEE = ‘JONESVI’ AND DELETEAUTH = ‘Y’;

Ejemplo 4

Cite los nombres de todos los usuarios que tienen algún tipo de autoridad sobre la tabla INVENTORY.

SELECT DISTINCT GRANTEE


FROM SYSTABAUHT
WHERE TTNAME = ‘INVENTORY’;
A D M I N I S T R A C I Ó N Y S E G U R I DA D D E B A S E D E D A T O S 635

Ejemplo 5

Cite los nombres de usuario y tabla para todos los usuarios que alteran la estructura de la base de datos para cualquier
tabla de la base de datos.

SELECT GRANTEE, TTNAME


FROM SYSTABAUTH
WHERE ALTERAUHT = ‘Y’
ORDER BY GRANTEE, TTNAME;

Como se puede ver en los ejemplos precedentes, el diccionario de datos puede ser una herramienta para vigilar la
seguridad de datos de la base de datos al revisar la asignación de privilegios de acceso a datos. Aunque los ejemplos
anteriores tenían por objetivo tablas de bases de datos y usuarios, la información acerca de los programas de aplicación
que tienen acceso a la base de datos también puede obtenerse del diccionario de datos.

El DBA puede usar el diccionario para soportar análisis y diseño de datos. Por ejemplo, puede crear un informe que
enumere todos los elementos de datos a usar en una aplicación particular; una lista de todos los usuarios que tienen
acceso a un programa particular; un informe que verifique redundancias de datos, duplicaciones, el uso de homónimos
y sinónimos y varios otros informes que describan usuarios, acceso y estructura de datos. El diccionario también se
puede utilizar para asegurar que los programadores de aplicaciones hayan cumplido con todas las normas de aplicar
nombres, para los elementos de datos de la base de datos y que las reglas para validación de datos son correctas. Así,
el diccionario de datos se puede emplear para dar soporte a una amplia variedad de actividades de administración de
datos y para facilitar el diseño e implementación de sistemas de información. Los diccionarios de datos integrados
también son esenciales para el uso de herramientas de ingeniería de software asistida por computadora.

15.7.2 Herramientas CASE

CASE es el acrónimo de ingeniería de sistemas asistida por computadora (CASE, siglas en inglés). Una
herramienta CASE contiene una estructura automatizada para el ciclo de vida de desarrollo de sistemas (SDLC, siglas
en inglés). CASE utiliza metodologías estructuradas y potentes interfaces gráficas. Debido a que automatizan numero-
sas actividades tediosas de diseño e implementación de sistemas, las herramientas CASE desempeñan una cada vez
más importante función en el desarrollo de sistemas de información.

Las herramientas CASE suelen clasificarse de acuerdo con la magnitud del soporte que dan para el SDLC. Por ejemplo,
las herramientas frontales CASE soportan las fases de planeación, análisis y diseño; las herramientas pos-
teriores CASE soportan las fases de codificación e implementación. Los beneficios asociados con las herramientas
CASE incluyen:
• Una reducción en tiempo y costos de desarrollo.
• Automatización del SDLC.
• Estandarización de metodologías para desarrollo de sistemas.
• Más fácil mantenimiento de sistemas de aplicación desarrollados con herramientas CASE.

Uno de los componentes más importantes de las herramientas CASE es un extenso diccionario de datos que da se-
guimiento de todos los objetos creados por el diseñador de sistemas. Por ejemplo, el diccionario de datos CASE guarda
diagramas de flujo de datos, gráficas de estructura, descripciones de todas las entidades externas e internas, almacenes
de datos, elementos de datos, formatos de informes y formatos de pantalla. Un diccionario de datos CASE tam-
bién describe las relaciones entre los componentes del sistema.

Varias herramientas CASE contienen interfaces que interactúan con el DBMS. Esas interfaces permiten que la
herramienta CASE guarde información de su diccionario de datos con el uso del DBMS. Esa interacción CASE/DBMS
demuestra la interdependencia que existe entre desarrollo de sistemas y de base de datos y ayuda a crear un ambiente
perfectamente integrado de desarrollo.

En un ambiente de desarrollo CASE, los diseñadores de la base de datos y de aplicaciones usan la herramienta CASE
para guardar la descripción del esquema de base de datos, elementos de datos, procesos de aplicación, pantallas, infor-
mes y otros datos que son importantes para el proceso de desarrollo. La herramienta CASE integra toda la información
para desarrollo de sistemas en un depósito común que puede revisar el DBA respecto a consistencia y precisión.
636 C A P Í T U L O 1 5

Como beneficio adicional, un ambiente CASE tiende a mejorar la extensión y calidad de comunicación entre el DBA,
los diseñadores de aplicaciones y los usuarios finales. El DBA puede interactuar con la herramienta CASE para verificar
la definición del esquema de datos para la aplicación, la observancia de convenciones para dar nombre, la duplicación
de elementos de datos, las reglas de validación para los elementos de datos y una multitud de otras variables de desa-
rrollo y administración. Cuando la herramienta CASE indica conflictos, violaciones a reglas e inconsistencias, facilita
hacer correcciones. Mejor aún, una corrección es transportada por la herramienta CASE para hacer caer en cascada
sus efectos en todo el ambiente de aplicaciones, con lo cual se simplifica en gran medida el trabajo del DBA y el del
diseñador de aplicación.

Una herramienta CASE típica contiene cinco componentes:


• Gráficas diseñadas para producir diagramas estructurados; por ejemplo: diagramas de flujo de datos, diagramas
ER (entidad relación), diagramas de clase y diagramas de objeto.
• Pintores de pantalla y generadores de informes para producir los formatos de entrada/salida del sistema de infor-
mación (por ejemplo, interface de usuario final).
• Un depósito integrado para guardar y obtener referencia cruzada de datos del diseño del sistema. Este depósito
incluye un extenso diccionario de datos.
• Un segmento de análisis para obtener una verificación totalmente automática de la consistencia del sistema, su
sintaxis y plenitud.
• Un generador de documentación de programa.

La figura 15.7 ilustra cómo se puede usar Visio Professional de Microsoft para producir un diagrama entidad rela-
ción (ER).

FIGURA Ejemplo de una herramienta CASE: Visio Professional


15.7

Menú principal

Opciones de modelado

ERD completado
A D M I N I S T R A C I Ó N Y S E G U R I DA D D E B A S E D E D A T O S 637

Una herramienta CASE, ERwin Data Modeler de Computer Associates, produce diagramas ER completamente docu-
mentados que pueden exhibirse a diferentes niveles de abstracción. Además, ERwin puede producir diseños relaciona-
les detallados. El usuario especifica los atributos y llaves primarias por cada entidad y describe las relaciones. ERwin
entonces asigna llaves foráneas apoyadas en las relaciones especificadas entre las entidades. Los cambios en llaves
primarias siempre son actualizados automáticamente en todo el sistema. La tabla 15.5 muestra una breve lista de los
numerosos vendedores de herramientas CASE que hay.

TABLA Herramientas CASE


15.5
COMPAÑÍA PRODUCTO SITIO WEB
Casewise Corporate Modeler Suite www.casewise.com
Computer ERwin www.ca.com/us/it-management-products.aspx
Associates
Embarcadero ER/Studio www.embarcadero.com/products/er_studio
Technologies
Microsoft Visio office.microsoft.com/en-us/visio
Oracle Designer www.oracle.com/technology/products/designer
IBM System Architect www.telelogic.com/Products/systemarchitect/
Sybase Power Designer www.sybase.com/products/modelingdevelopment/
powerdesigner
Visible Visible Analyst www.visible.com/Products/Analyst

Los principales vendedores de DBMS relacionales, como Oracle, ahora suministran herramientas CASE totalmente
integradas para su propio software, así como para los RDBMS suministrados por otros vendedores. Por ejemplo, las
herramientas CASE de Oracle se pueden usar con el DB2 de IBM, SQL/DA y SQL Server de Microsoft, para producir
diseños totalmente documentados de bases de datos. Algunos vendedores incluso toman los DBMS no relacionales,
desarrollan sus esquemas y producen automáticamente diseños relacionales equivalentes.

No hay duda que CASE ha mejorado la eficiencia del diseñador de bases de datos y del programador de aplicaciones,
pero, sin importar lo refinado de la herramienta CASE, sus usuarios deben estar bien versados en ideas conceptuales
del diseño. En manos de novatos de bases de datos, las herramientas CASE producen diseños simplemente impresio-
nantes, pero malos.

15.8 DESARROLLO DE UNA ESTRATEGIA DE ADMINISTRACIÓN DE DATOS


Para que una compañía tenga éxito, sus actividades deben estar dedicadas a sus principales objetivos o misión. Por tan-
to, cualquiera que sea el tamaño de la compañía, un paso crítico para cualquier organización es asegurar que su sistema
de información apoye sus planes estratégicos para cada una de sus actividades de negocios.

La estrategia de administración de base de datos no debe estar en conflicto con los planes de sistemas de información.
Después de todo, esos planes se derivan de un detallado análisis de los objetivos de la compañía, su condición o si-
tuación y de las necesidades de sus negocios. Existen diversas metodologías para asegurar la compatibilidad entre los
planes de administración de datos y los de sistemas de información y para guiar el desarrollo del plan estratégico. La
metodología que se usa con más frecuencia se conoce como ingeniería de información.

La ingeniería de información (IE) permite la conversión de los objetivos estratégicos de la compañía en datos y
las aplicaciones que ayudarán a que la compañía alcance esos objetivos. La IE se concentra en la descripción de datos
corporativos en lugar de los procesos. La razón fundamental de la IE es sencilla: los tipos de datos de negocios tien-
den a permanecer más o menos estables. En contraste, los procesos cambian con frecuencia y por tanto requieren la
frecuente modificación de los sistemas existentes. Al poner énfasis en los datos, la IE ayuda a reducir el impacto en los
sistemas cuando cambian los procesos.

La salida del proceso de la IE es una arquitectura de sistemas de información (ISA) que sirve como base para
planear, desarrollar y controlar futuros sistemas de información. La figura 15.8 muestra las fuerzas que afectan el de-
sarrollo de la ISA.
638 C A P Í T U L O 1 5

FIGURA Fuerzas que afectan el desarrollo de la ISA


15.8

Gerentes de la
compañía

Objetivos Factores críticos de éxito

Misión de la Ingeniería de Arquitectura


de sistemas de Plan estratégico
compañía información
información

Implementar metodologías de IE en una organización es un proceso costoso que comprende la planeación, una comi-
sión de recursos, responsabilidad de la alta administración, objetivos bien definidos, identificación de factores críticos, así
como control. Una ISA proporciona una estructura que incluye el uso de herramientas computarizadas, automatizadas
e integradas; por ejemplo un DBMS y herramientas CASE.

El éxito de la estrategia general de sistemas de información y, por tanto, de la estrategia de administración de datos,
depende de varios factores críticos. Entenderlos ayuda a que el DBA desarrolle una exitosa estrategia para administra-
ción corporativa de datos. Los factores críticos para el éxito incluyen temas administrativos, tecnológicos y de cultura
corporativa como:

• Compromiso de la administración. El compromiso de la administración de nivel superior es necesario para


hacer cumplir el uso de normas, procedimientos, planeación y controles. El ejemplo debe fijarse en lo más alto.
• Análisis concienzudo de la situación de la compañía. La actual situación de la administración corporativa de
datos debe ser analizada para entender la posición de la compañía y tener una clara visión de lo que debe hacer-
se. Por ejemplo, ¿cómo se manejan el análisis, diseño, documentación, implementación, normas, codificación y
otros asuntos de la base de datos? Las necesidades y problemas deben identificarse primero y, a continuación,
darles prioridad.
• Intervención del usuario final. La intervención del usuario final es otro aspecto crítico para el éxito de la estra-
tegia de administración de datos. ¿Cuál es el grado de cambio organizacional involucrado? Un exitoso cambio
organizacional requiere que el personal sea capaz de adaptarse al cambio. Los usuarios deben recibir un canal
de comunicación abierto a la administración de nivel superior, para asegurar el éxito de la implementación. Una
buena comunicación es clave en el proceso general.
• Normas definidas. Analistas y programadores deben estar familiarizados con adecuadas metodologías, pro-
cedimientos y normas. Si carecen de familiaridad con éstos, puede ser necesario capacitarlos en el uso de los
procedimientos y normas.
• Capacitación. El vendedor debe capacitar al personal del DBA en el uso del DBMS y otras herramientas. Los
usuarios finales deben estar capacitados en el uso de herramientas, normas y procedimientos para obtener y
demostrar el máximo beneficio, con lo cual aumenta la confianza del usuario final. El personal clave debe ser
capacitado primero para que puedan capacitar a otros.
• Un pequeño proyecto piloto. Se recomienda un pequeño proyecto para asegurar que el DBMS funcionará en
la compañía, que la salida es lo que se esperaba y que el personal haya sido capacitado en forma apropiada.
A D M I N I S T R A C I Ó N Y S E G U R I DA D D E B A S E D E D A T O S 639

Esta lista de factores no es ni puede ser completa. Sin embargo, contiene el marco inicial para el desarrollo de una
estrategia exitosa. Recuerde que, sin importar lo completa que sea la lista de factores de éxito, debe estar basada en la
noción de que el desarrollo e implementación de una estrategia exitosa para administración de datos está estrechamente
integrada con los sistemas generales de información que planean la actividad de la organización.

15.9 EL DBA EN EL TRABAJO: USO DE ORACLE PARA


ADMINISTRACIÓN DE BASES DE DATOS
Hasta este punto, hemos aprendido acerca del ambiente y responsabilidades del trabajo del DBA en términos generales.
En esta sección, veremos con más detalle la forma en que puede manejar las siguientes tareas técnicas en un DBMS
específico:
• Crear y expandir estructuras de almacenamiento de una base de datos.
• Administrar objetos de base de datos como tablas, índices, disparadores y procedimientos.
• Administrar el ambiente de base de datos del usuario final, incluido el tipo y extensión del acceso a la base de
datos.
• Ajustar parámetros de inicialización de base de datos.

Muchas de esas tareas requieren que el DBA use herramientas de software y utilerías que por lo general son proporcio-
nadas por el vendedor de la base de datos. De hecho, todos los vendedores de DBMS suministran un conjunto de pro-
gramas para interactuar con la base de datos y realizar una amplia variedad de tareas administrativas de bases de datos.

Escogimos Oracle 11g para Windows para ilustrar las tareas seleccionadas del DBA, porque por lo general se encuentra
en organizaciones que son suficientemente grandes y tienen un ambiente de base de datos que es lo suficiente complejo
para requerir (y tener) el uso de un DBA, tiene buena presencia en el mercado, pero también se encuentra en colegios
pequeños y universidades.

Nota

Aunque Microsoft Access es un DBMS excelente, típicamente se emplea en organizaciones más pequeñas,
en organizaciones y departamentos con ambientes de datos relativamente sencillos. Access produce un
buen prototipo de base de datos y, dadas sus herramientas GUI fáciles de usar, el rápido desarrollo de una
aplicación de componentes frontales es cosa fácil. Además, Access es uno de los componentes de la suite
MS Office, con lo cual la integración de aplicaciones de usuario final es relativamente sencilla y continua.
Por último, Access suministra algunas herramientas importantes para administración de bases de datos, pero
el ambiente basado en Access para bases de datos no requiere por lo general los servicios de un DBA. Por
tanto, MS Access no tiene cabida en la misión de esta sección.

Recuerde que casi todas las tareas descritas en esta sección se tropiezan con el DBA, cualesquiera que sean sus DBMS
o su sistema operativo, pero la ejecución de esas tareas tiende a ser específica para el DBMS y el sistema operativo.
Por tanto, si usted usa DB2 Universal Database de IBM o SQL Server de Microsoft debe adaptar los procedimientos
mostrados aquí con su DBMS. Y como estos ejemplos corren bajo el sistema operativo Windows, si usted usa algún otro
sistema debe adaptarlo a los procedimientos mostrados en esta sección.

Esta sección no servirá como manual de administración de base de datos. En cambio, ofrecerá una breve introducción a
la forma en que algunas tareas típicas del DBA se ejecutarían en Oracle. Antes de saber cómo usar Oracle para realizar
tareas específicas de administración de datos, usted debe familiarizarse con las herramientas que ofrece Oracle para la
administración de bases de datos y con los procedimientos para iniciar sesión, lo cual se estudiará en las siguientes dos
secciones.

Nota

Aunque el formato general para creación de base de datos tiende a ser genérico, su ejecución tiende a ser
específica de un DBMS. Para un repaso ligero, pero paso a paso, para crear una base de datos usando el
Oracle Database Configuration Assistant, vea el apéndice N.
640 C A P Í T U L O 1 5

15.9.1 Herramientas de Oracle para administración de base de datos

Todos los vendedores de bases de datos suministran un conjunto de herramientas para administración de base de
datos. En Oracle, usted realiza casi todas las tareas del DBA por medio de la interfaz Oracle Enterprise Manager
(figura 15.9.)

FIGURA Interfaz Oracle Manager Enterprise


15.9

En la figura 15.9, nótese que se muestra el estatus de la base de datos en uso. (Esta sección utiliza la base de datos
GRADORA.) En las siguientes secciones, usted examinará las tareas que el DBA encuentra con más frecuencia.

15.9.2 Inicio de sesión por default

Para realizar cualquier tarea administrativa, usted debe conectarse a la base de datos usando un nombre de usuario
con privilegios administrativos (DBA). Por default, Oracle automáticamente crea las ID de usuario SYSTEM y SYS que
tienen privilegios administrativos con cada nueva base de datos que usted cree. Usted puede definir las credenciales
preferidas para cada base de datos al dar un clic en el vínculo Preferences de la parte superior de la página, luego
dar un clic en Preferred Credentials. Por último, escoja su nombre de usuario objetivo bajo Set Credentials.
La figura 15.10 ilustra la página Edit Local Preferred Credentials que define la ID de usuario (SYS) que se utiliza para
iniciar sesión en la base de datos GRADORA.

Recuerde que nombres de usuario y contraseñas son específicos de la base de datos. Por tanto, cada base de datos
puede tener diferentes nombres de usuario y contraseñas. Una de las primeras cosas que usted debe hacer es cambiar la
contraseña para los usuarios SYSTEM y SYS. Inmediatamente después de hacerlo, puede usted empezar a definir sus
usuarios y asignarles privilegios de base de datos.
A D M I N I S T R A C I Ó N Y S E G U R I DA D D E B A S E D E D A T O S 641

FIGURA Página Oracle Edit Local Preferred Credentials


15.10

15.9.3 Para asegurar un inicio automático de RDBMS

Una de las tareas básicas del DBA es asegurar que el acceso de usted a la base de datos se inicie automáticamente
cuando encienda su computadora. Los procedimientos de inicio serán diferentes para cada sistema operativo. Debido a
que Oracle se emplea para ejemplos en esta sección, usted necesitaría identificar los servicios requeridos para asegurar
un inicio automático de la base de datos. (Un servicio es el nombre del sistema Windows para un programa especial que
corre automáticamente como parte del sistema operativo. Este programa asegura la disponibilidad de servicios requeri-
dos para el sistema y para usuarios finales en la computadora local o en la red.) La figura 15.11 ilustra los servicios de
Oracle necesarios que son iniciados automáticamente cuando se arranca Windows.

FIGURA Servicios del RDBMS de Oracle


15.11

Al examinar la figura 15.11, nótense los siguientes servicios de Oracle:


• OracleOraDb11g_home1TNSListener es el proceso que “escucha” y procesa las solicitudes de conexión de
usuario final en la red. Por citar un caso, cuando una solicitud de conexión SQL, por ejemplo “connect userid/
password@GRADORA”, es enviada por la red, el servicio de escucha la toma, la valida y establece la conexión.
642 C A P Í T U L O 1 5

• OracleServiceGRADORA se refiere a los procesos de Oracle que corren en memoria y que están asociados con
la instancia de la base de datos GRADORA. Usted puede considerar una instancia de base de datos como
un lugar separado en memoria reservado para ejecutar la base de datos de usted. Debido a que usted puede
tener varias bases de datos (y, por tanto, varias instancias) ejecutándose en memoria al mismo tiempo, necesita
identificar de manera única cada uno de ellas usando un sufijo diferente para cada una.

15.9.4 Creación de espacios de tabla y archivos de datos

Cada uno de los DBMS maneja de manera diferente el almacenamiento de datos. En este ejemplo, el RDBMS de Ora-
cle se utilizará para ilustrar cómo la base de datos maneja el almacenamiento en los niveles lógico y físico. En Oracle:

Una base de datos está compuesta lógicamente por uno o más espacios de tabla. Un espacio de tabla es un espacio
lógico de almacenamiento. Los espacios de tabla se utilizan principalmente para agrupar datos relacionados de manera
lógica.

Los datos de un espacio de tabla se guardan físicamente en uno o más archivos de datos. Un archivo de datos
guarda físicamente los datos de la base de datos. Cada uno de los archivos de datos está asociado con un espacio de
tabla y sólo uno, pero puede residir en un directorio diferente en el disco duro o incluso en uno o más discos duros
distintos.

Dada la descripción precedente de espacios de tabla y de archivos de datos, se puede concluir que una base de datos
tiene una relación de uno a muchos con espacios de tabla y que un espacio de tabla tiene una relación de uno a muchos
con archivos de datos. Este conjunto de relaciones jerárquicas 1:M aísla al usuario final de cualesquier detalles físicos
del almacenamiento de datos. No obstante, el DBA debe estar consciente de esos detalles para manejar en forma
apropiada la base de datos.

Para ejecutar tareas de administración de almacenamiento de base de datos, por ejemplo, crear y manejar espacios de
tabla y archivos de datos, el DBA utiliza la opción Enterprise Manager, Administration, Storage (figura 15.12).

FIGURA Administrador de almacenamiento de Oracle


15.12
A D M I N I S T R A C I Ó N Y S E G U R I DA D D E B A S E D E D A T O S 643

Cuando el DBA crea una base de datos, Oracle automáticamente crea los espacios de tabla y archivos de datos que se
ven en la figura 15.12. Unos pocos de ellos se describen a continuación.
• El espacio de tabla SYSTEM se utiliza para guardar los datos del diccionario de datos.
• El espacio de tabla USERS se utiliza para guardar los datos de tabla creados por los usuarios finales.
• El espacio de tabla TEMP se utiliza para guardar las tablas e índices temporales creados durante la ejecución de
instrucciones de SQL. Por ejemplo, tablas temporales son creadas cuando las instrucciones de SQL contienen
una cláusula ORDER BY, GROUP BY o HAVING.
• El espacio de tabla UNDOTBS1 se utiliza para guardar información de recuperación de transacciones de base
de datos. Si por alguna razón una transacción debe deshacerse (por lo general para preservar la integridad de la
base de datos), el espacio de tabla UNDOTBS1 se utiliza para guardar la información de deshacer.

Con el uso del Storage Manager, el DBA puede:


• Crear espacios de tabla adicionales para organizar los datos en la base de datos. Por tanto, si usted tiene una
base de datos con varios cientos de usuarios, puede crear varios espacios de tabla para segmentar el almace-
namiento de datos para diferentes tipos de usuarios. Por ejemplo, usted podría crear un espacio de tabla de un
maestro y un espacio de tabla de un estudiante.
• Crear espacios de tabla adicionales para organizar los diversos subsistemas que existen dentro de la base de da-
tos. Por ejemplo, usted podría crear diferentes espacios de tabla para datos de recursos humanos, de nóminas,
de contabilidad y de manufactura. La figura 15.13 presenta la página utilizada para crear un nuevo espacio de
tabla llamado C:\ORACLE\SMORRIS\ORADATA\GRADORA\ROBCOR.DBF y su tamaño inicial es 100
megabytes. Observe en la figura 15.13 que el espacio de tabla se pondrá en línea de inmediato para que se
encuentre disponible a usuarios para fines de almacenamiento de datos. Observe también el botón “Show SQL”
en la parte superior de la página. Se puede usar este botón para ver el código de SQL generado por Oracle para
crear el espacio de tabla. (En realidad, todas las tareas del DBA también se pueden lograr a través del uso directo
de comandos del SQL. De hecho, algunos DBA intransigentes prefieren escribir su propio código de SQL y no
usar el GUI “easy-way-out”, es decir, “salida fácil”.)
• Expandir la capacidad de almacenamiento de espacio de tabla al crear archivos de datos adicionales. Recuerde
que los archivos de datos se pueden almacenar en el mismo directorio o en discos duros diferentes para aumen-
tar el desempeño de acceso. Por ejemplo, se puede aumentar el desempeño de almacenamiento y acceso al
espacio de tabla USERS al crear un nuevo archivo de datos en una unidad diferente de disco.

Administración de objetos de base de datos: tablas, vistas, disparadores


15.9.5
y procedimientos

Otro importante aspecto de administrar una base de datos es vigilar los objetos de ésta que fueron creados en la base de
datos. El Oracle Enterprise Manager da al DBA una interfaz gráfica de usuario para crear, editar, ver y eliminar objetos
de base de datos. Un objeto de base de datos es básicamente cualquier objeto creado por usuarios finales; por
ejemplo, tablas, vistas, índices, procedimientos almacenados y disparadores. La figura 15.14 ilustra algunos tipos de
objetos citados en el Oracle Schema Manager.

Un esquema en Oracle es una sección lógica de la base de datos que pertenece a un usuario determinado y ese esque-
ma está identificado por el nombre de usuario. Por ejemplo, si el usuario llamado SYSTEM crea una tabla VENDOR,
la tabla pertenecerá al esquema SYSTEM. Oracle aplica un prefijo al nombre de tabla con el nombre de usuario. Por
tanto, el nombre de la tabla VENDOR de SYSTEM recibirá el nombre SYSTEM.VENDOR por parte de Oracle. Del
mismo modo, si el usuario PEROB crea una tabla VENDOR, esa tabla será creada en el esquema PEROB y tendrá el
nombre de PEROB.VENDOR.

Dentro del esquema, los usuarios pueden crear sus propias tablas y otros objetos. La base de datos puede contener
tantos esquemas diferentes como usuarios haya. Debido a que los usuarios ven sólo sus propios objetos, podrían tener
la impresión de que no hay otros usuarios de la base de datos.

Normalmente, los usuarios son autorizados para tener acceso sólo a los objetos que pertenecen a sus propios esque-
mas. Los usuarios podrían, desde luego, dar a otros usuarios el acceso a sus datos al cambiar los derechos de acceso.
De hecho, todos los usuarios con autorización del DBA tienen acceso a todos los objetos de todos los esquemas de la
base de datos.
644 C A P Í T U L O 1 5

FIGURA Creación de un nuevo espacio de tabla


15.13

Como se puede ver en la figura 15.14, el Schema Manager presenta una vista organizada de todos los objetos del es-
quema de base de datos. Con este programa, el DBA puede crear, editar, ver y borrar (eliminar) tablas, índices, vistas,
funciones, disparadores, procedimientos y otros objetos especializados.

15.9.6 Administración de usuarios y establecimiento de seguridad

Una de las actividades más comunes de administración de base de datos es crear y administrar usuarios de la base de
datos. (En realidad, la creación de las ID de usuario es sólo el primer componente de cualquier función bien planeada
de seguridad de base de datos. Como ya se indicó antes, la seguridad de base de datos es una de las tareas más impor-
tantes de la administración de bases de datos.)

La sección Security de la página Enterprise Manager’s Administration hace posible que el DBA pueda crear usuarios,
funciones y perfiles.
• Un usuario es un objeto identificable de manera única que permite que una persona determinada inicie sesión
en la base de datos. El DBA asigna privilegios para tener acceso a los objetos de la base de datos. Dentro de la
asignación del privilegio, el DBA puede especificar un conjunto de límites que define cuántos recursos de la base
de datos puede utilizar el usuario.
• Una función es un conjunto con nombres de privilegios de acceso a la base de datos que autoriza a un usuario
a conectarse a la base de datos y ocupar los recursos del sistema de la base de datos. Ejemplos de funciones son
como sigue:
- CONNECT permite a un usuario conectarse a la base de datos, crear y modificar tablas, vistas y otros objetos
de datos relacionados.
- RESOURCE permite a un usuario crear disparadores, procedimientos y otros objetos para administración de
datos.
- DBA da al usuario privilegios para administración de una base de datos.
A D M I N I S T R A C I Ó N Y S E G U R I DA D D E B A S E D E D A T O S 645

FIGURA Página Schema Manager en Oracle


15.14

• Un perfil es un conjunto con nombres de ajustes que controlan cuánto de los recursos de la base de datos
puede usar un usuario determinado. (Si consideramos la posibilidad de que una consulta fugitiva puede causar
que la base de datos se bloquee o que deje de responder a los comandos del usuario, usted entenderá por qué
es importante limitar el acceso a los recursos de la base de datos.) Al especificar perfiles, el DBA puede limitar
cuánto espacio de almacenamiento puede utilizar el usuario, cuánto tiempo puede estar conectado, cuánto tiem-
po ocioso puede ocuparse antes que el usuario sea desconectado, etc. En un mundo ideal, todos los usuarios
tendrían acceso ilimitado a todos los recursos todo el tiempo, pero en el mundo real, ese acceso no es posible
ni deseable.

La figura 15.15 muestra la página Enterprise Manager Server. De aquí, el DBA puede administrar la base de datos y
crear objetos de seguridad (usuarios, funciones y perfiles).

Para crear un nuevo usuario, el DBA utiliza la página Create User que se ve en la figura 15.16.

La página Create User contiene numerosos vínculos; los más importantes son:
• El vínculo General permite que el DBA asigne el nombre, perfil y contraseña al nuevo usuario. También, en esta
página el DBA define el espacio de tabla predefinido para guardar datos de la tabla y el espacio de tabla temporal
para datos temporales.
• El vínculo Roles permite al DBA asignar las funciones para un usuario.
• El vínculo Object Privileges es utilizado por el DBA para asignar derechos específicos de acceso a otros objetos
de base de datos.
• El vínculo Quotas permite que el DBA especifique la cantidad máxima de almacenamiento que el usuario puede
tener en cada espacio de tabla asignado.
646 C A P Í T U L O 1 5

FIGURA Página Enterprise Manager Administration de Oracle


15.15

FIGURA Página Create User


15.16
A D M I N I S T R A C I Ó N Y S E G U R I DA D D E B A S E D E D A T O S 647

15.9.7 Ajuste de los parámetros de inicialización de la base de datos

La afinación de una base de datos es otra tarea importante del DBA. Esta tarea por lo general requiere la modificación
de parámetros para configuración de la base de datos, algunos de los cuales puede cambiarse en tiempo real mediante
comandos de SQL. Otros requieren que la base de datos sea apagada y reiniciada. También, algunos parámetros pue-
den afectar sólo la instancia de la base de datos, en tanto que otros afectan todo el RDBMS y todas las instancias en
ejecución. Por tanto, es importante que el DBA se familiarice con parámetros para configuración de la base de datos,
en especial aquellos que afectan el desempeño.

Cada una de las bases de datos tiene un archivo de inicialización asociado que guarda sus parámetros para configuración
en tiempo de ejecución. El archivo de inicialización se lee al arrancar la instancia y se utiliza para establecer el ambiente
de trabajo para la base de datos. El Enterprise Manager de Oracle permite que el DBA inicie, apague y vea/edite los
parámetros para configuración de la base de datos (guardados en el archivo de inicialización) de una instancia de base de
datos. La interfaz Enterprise Manager de Oracle contiene una GUI para modificar ese archivo de texto, que se observa
en la figura 15.17.

FIGURA Página Enterprise Manager – Initialization Parameters de Oracle


15.17

Una de las funciones importantes proporcionadas por los parámetros de inicialización es reservar los recursos que
deben ser utilizados por la base de datos en el tiempo de ejecución. Uno de esos recursos es la memoria principal a
ser reservada para el caché de cada base de datos. Ese caché es utilizado para afinar el desempeño de la base de datos.
Por ejemplo, el parámetro “db_cache_size” fija la cantidad de memoria reservada para el caché de la base de datos. Este
parámetro debe fijarse a un valor que sea lo suficientemente grande para soportar todas las transacciones concurrentes.

Una vez que usted modifique los parámetros de inicialización, puede requerírsele reiniciar la base de datos. Como ya
ha visto en esta breve sección, el DBA es responsable de una amplia variedad de tareas. La calidad e integridad de las
herramientas para administración disponibles para el DBA recorren una gran distancia para hacer más fácil su trabajo.
Incluso así, el DBA debe familiarizarse con las herramientas y detalles técnicos del RDBMS para ejecutar sus tareas en
forma correcta y eficiente.
648 C A P Í T U L O 1 5

R E S U M E N

La administración de datos es una actividad de importancia crítica para cualquier organización. Los datos deben
ser tratados como activo empresarial. El valor de un conjunto de datos es medido por la utilidad de la informa-
ción derivada de ella. Es probable que una buena administración produzca buena información, que es la base
para una mejor toma de decisiones.
La calidad de datos es un enfoque integral para asegurar la precisión, validez y oportunidad de los datos. La
calidad de datos refiere a limpiar datos sucios y prevenir futuras imprecisiones en los datos, así como construir
confianza en éstos.
El DBMS es la herramienta electrónica de más amplio uso para la administración corporativa de datos. El DBMS
da soporte a la toma estratégica, táctica y operacional a todos los niveles de la organización. Los datos de la
compañía que son administrados por el DBMS se guardan en la base de datos corporativa o de la empresa.
La introducción de un DBMS en una organización es un trabajo muy delicado. Además de administrar los deta-
lles técnicos de la introducción del DBMS, debe examinarse con todo cuidado el impacto de éste en la estructura
administrativa y cultural de la organización.
El desarrollo de la función administrativa de datos está basado en la evolución, desde el procesamiento departa-
mental de datos hasta el más centralizado departamento de procesamiento electrónico de datos (EDP) y hasta
el más formal departamento de sistemas de información (IS) de “datos como activo empresarial”. Los sistemas
de archivo típicos se caracterizaban por aplicaciones que tendían a comportarse como “islas de información”.
Cuando las aplicaciones empezaron a compartir un depósito común de datos, se hizo evidente la necesidad de
una administración centralizada de datos para controlar esos datos.
El administrador de base de datos (DBA) es responsable de administrar la base de datos corporativa. La organi-
zación interna de la función de administración de una base de datos varía de una compañía a otra. Aunque no
existe una norma, es práctica común dividir operaciones del DBA de acuerdo con las fases del ciclo de vida de
base de datos. Algunas compañías han creado una posición con un mandato más general para administración
de datos, para administrar datos computarizados y de otra naturaleza dentro de la organización. Esta actividad
más general para administración de datos es manejada por el administrador de datos (DA).
Las funciones del DA y del DBA tienden a traslaparse. En términos generales, el DA está más orientado admi-
nistrativamente que el DBA, que está más orientado técnicamente. En comparación con la función del DBA, la
función del DA es independiente del DBMS, con un enfoque más general y a un plazo más largo. No obstante,
cuando el organigrama no incluya una posición del DA, el DBA ejecuta todas las funciones del DA. Debido a
que el DBA tiene responsabilidades tanto técnicas como administrativas, debe tener una combinación diversa de
conocimientos.
Los servicios administrativos de la función del DBA incluyen al menos: dar soporte a la comunidad de usuarios
finales; definir y hacer cumplir políticas, procedimientos y normas para la función de la base de datos; garantizar
la seguridad, privacidad e integridad de datos; proporcionar servicios de respaldo y recuperación de datos, así
como vigilar la distribución y uso de los datos de la base de datos.
La función técnica requiere que el DBA intervenga en al menos estas actividades: evaluar, seleccionar e instalar
el DBMS; diseñar e implementar bases de datos y aplicaciones; probar y evaluar bases de datos y aplicaciones;
operar el DBMS, utilerías y aplicaciones; capacitar y dar soporte a usuarios y mantener el DBMS, utilerías y
aplicaciones.
La seguridad se refiere a actividades y medidas para garantizar la confidencialidad, integridad y disponibilidad de
un sistema de información y su activo principal: los datos. Una política de seguridad es un conjunto de normas,
políticas y prácticas creado para garantizar la seguridad de un sistema y asegurar auditorías y apego a ellas.
Una vulnerabilidad de seguridad es la debilidad en un componente del sistema que puede ser explotada para
permitir acceso no autorizado o interrupción del servicio. Una amenaza de seguridad es una violación inminente
de seguridad causada por una vulnerabilidad de seguridad no revisada. Existen vulnerabilidades de seguridad
en todos los componentes de un sistema de información: personal, hardware, software, red, procedimientos y
datos. Por tanto, es de importancia decisiva tener una robusta seguridad de la base de datos. La seguridad de la
base de datos se refiere al uso de funciones del DBMS y medidas relacionadas para cumplir con los requisitos de
seguridad de la organización.
A D M I N I S T R A C I Ó N Y S E G U R I DA D D E B A S E D E D A T O S 649

El desarrollo de la estrategia de administración de datos está estrechamente relacionado con la misión y objetivos
de la compañía. Por tanto, el desarrollo de un plan estratégico de una organización corresponde al de admi-
nistración de datos, requiriendo un análisis detallado de objetivos de la compañía, situación y necesidades de
negocios. Para guiar el desarrollo de este plan general, se requiere de una metodología de integración. La meto-
dología de integración más comúnmente empleada se conoce como ingeniería de información (IE).
Para ayudar a convertir planes estratégicos en planes operacionales, el DBA tiene acceso a un arsenal de he-
rramientas para administración de la base de datos. Estas herramientas incluyen el diccionario de datos y herra-
mientas de ingeniería de software asistida por computadora (CASE).

T É R M I N O S C L A V E
acatamiento, 629 diccionario de datos activo, 633 perfil (Oracle), 645
administración de autorización, 632 diccionario de recursos de plan de acceso, 625
administración de desastres, 622 información, 634 política de seguridad, 630
administrador de base de datos diccionario de datos pasivo, 633 políticas, 620
(DBA), 613 disponibilidad, 629 privacidad, 611
administrador de datos (DA), 615 espacio de tabla (Oracle), 642 procedimientos, 620
administrador de sistemas, 615 esquema (Oracle), 643 respaldo completo (database dumo),
amenaza de seguridad, 630 gerente de recursos de información 622
archivo de datos (Oracle), 642 (IRM), 615 respaldo concurrente, 622
arquitectura de sistemas de herramientas CASE back-end, 635 respaldo incremental, 622
información (ISA), 637 herramientas CASE front-end, 635 rol (Oracle), 644
base de datos empresarial, 611 herramientas CASE de componente seguridad, 629
bitácora de auditoría, 632 posterior, 635 seguridad de lambase de datos, 631
calidad de datos, 610 ingeniería de información (IE), 637 software maestro para
CASE (ingeniería de sistemas integridad, 629 administración de datos
asistido por computadora), instancia de base de datos (Oracle), (MDM), 610
635 642 software para perfilar datos, 610
confidencialidad, 629 normas, 620 usuario (Oracle), 644
datos sucios, 610 objeto de base de datos (Oracle), violación de seguridad, 630
departamento de sistemas de 643 vulnerabilidad de seguridad, 630
información (IS), 613 oficial de seguridad de base de datos
depósito de base de datos, 622 (DSO), 621

C O N T E N I D O E N L Í N E A

Las respuestas a preguntas de repaso seleccionadas para este capítulo están contenidas en el sitio web Pre-
mium para este libro.

P R E G U N T A S D E R E P A S O

1. Explique la diferencia entre datos e información. Dé algunos ejemplos de datos sin elaborar e información.
2. Defina datos sucios e identifique algunas de sus fuentes.
3. ¿Qué es calidad de datos y por qué es importante?
4. Explique las interacciones entre usuario final, datos, información y toma de decisiones. Trace un diagrama y
explique las interacciones.
5. Suponga que usted es miembro del personal del DBA. ¿Qué dimensiones de datos describiría a los directores del
más alto nivel para obtener su apoyo para la función de administración de datos?
650 C A P Í T U L O 1 5

6. ¿Cómo y por qué los sistemas para administración de bases datos se convirtieron en normas para administración
de datos en las orgnizaciones? Discuta algunas ventajas del planteamiento de una base de datos sobre el del
sistema de archivo.
7. Usando una sola oración, explique la función de bases de datos en organizaciones. A continuación, explique su
respuesta.
8. Defina seguridad y privacidad. ¿Cómo están relacionados esos dos conceptos?
9. Describa y contraste las necesidades de información a los niveles estratégico, táctico y operacional en una orga-
nización. Use ejemplos para explicar su respuesta.
10. ¿Cuáles consideraciones especiales debe usted tener en cuenta cuando contemple la introducción de un DBMS
en una organización?
11. Describa las responsabilidades del DBA.
12. ¿Cómo puede ponerse la función del DBA dentro del organigrama de una empresa? ¿Cuáles efectos tendrá esa
posición en la función del DBA?
13. ¿Por qué y cómo es que los avances tecnológicos en computadoras y bases de datos están cambiando la función
del DBA?
14. Explique la organización interna del departamento del DBA, con base en el método de DBLC.
15. Explique y contraste las diferencias y similitudes entre el DBA y el DA.
16. Explique en qué forma el DBA desempeña una función de arbitraje entre dos principales activos de una organi-
zación. Trace un diagrama para facilitar su explicación.
17. Describa y caracterice las habilidades deseables de un DBA.
18. ¿Cuáles son las funciones administrativas del DBA? Describa las actividades y servicios administrativos propor-
cionados por el DBA.
19. ¿Cuáles actividades del DBA se usan para dar soporte a la comunidad de usuarios finales?
20. Explique la función administrativa del DBA en la definición e imposición de políticas, procedimientos y normas.
21. Proteger la seguridad, privacidad e integridad de datos son funciones importantes de la base de datos. ¿Cuáles
actividades se requieren en la función administrativa del DBA para cumplir esas funciones?
22. Discuta la importancia y características de los procedimientos de respaldo y recuperación de una base de datos.
A continuación describa las acciones que deben ser detalladas en planes de respaldo y recuperación.
23. Suponga que la compañía de usted le ha asignado la responsabilidad de seleccionar el DBMS corporativo. Ela-
bore una lista de verificación para los aspectos técnicos y de otra naturaleza que intervienen en el proceso de
selección.
24. Describa las actividades que están típicamente asociadas con los servicios de diseño e implementación de la
función técnica del DBA. ¿Cuáles conocimientos técnicos son deseables en el personal del DBA?
25. ¿Por qué la prueba y evaluación de la base de datos y aplicaciones no son hechas por el mismo personal respon-
sable para diseño e implementación? ¿Qué normas mínimas deben ser satisfechas durante el proceso de prueba
y evaluación?
26. Identifique algunos cuellos de botella en la operación de un DBMS. A continuación proponga algunas soluciones
empleadas en la afinación del desempeño de un DBMS.
27. ¿Cuáles son las actividades típicas involucradas en el mantenimiento del DBMS, utilerías y aplicaciones? ¿Con-
sideraría usted que la afinación del desempeño de una aplicación es parte de las actividades de mantenimiento?
Explique su respuesta.
28. ¿Cómo define usted normalmente la seguridad? ¿En qué es semejante o diferente la definición de usted respecto
a la definición de seguridad de una base de datos expuesta en este capítulo?
29. ¿Cuáles son los niveles de confidencialidad de datos?
30. ¿Qué son vulnerabilidades de seguridad? ¿Qué es una amenaza de seguridad? Dé algunos ejemplos de vulnera-
bilidades de seguridad que existen en diferentes componentes del IS.
31. Defina el concepto de un diccionario de datos. Discuta los diferentes tipos de diccionarios de datos. Si usted
fuera a administrar todo el conjunto de datos de una organización, ¿qué características buscaría en el diccionario
de datos?

También podría gustarte