Está en la página 1de 34

TRABAJO

U3 Act 3
ADMINISTRACION DE
UNA BASE DE DATOS

1
U3 ACT. 3
Integrantes:
Juana Geovanna Suárez Velázquez
Ezequiel Torres Desilos
Rubén David Rodríguez Gaytán
Oscar Isidro Rodríguez García

Profesor:
Emily Jazmin De la Garza Acuña

Grado y Grupo:
5°” A”

Fecha:
8/11/22

2
INDICE
Administración de datos y bases de datos ...................................................................................... 4
Administración de los recursos de informaciónpara el manejo del conocimiento............................. 5
Responsabilidades de los administradores de datosy los administradores de bases de datos ......... 6
Manipulación del diccionario de datos ............................................................................................ 10
Administración de entornos de bases de datos .......................................................................... 14
Administración de bases de datos de objetos ................................................................................. 15
Detalles con los conceptos y las técnicas administrativas .......................................................... 16
Sentencias CREATE y DROP ROLE ........................................................................................... 18
Sentencias GRANT y REVOKE ................................................................................................... 18
Administración de transacciones ..................................................................................................... 19
15.1 Aspectos básicos de las transacciones de bases de datos .................................................. 19
15.1.1 Ejemplos de transacciones ................................................................................................. 20
Enunciados SQL para definir las transacciones ........................................................................... 20
15.1.2 Propiedades de la transacción ........................................................................................... 21
15.2.2 Problemas de interferencia ................................................................................................ 23
15.2.3 Herramientas de control de concurrencia ......................................................................... 23
Granularidad de candados ........................................................................................................... 25
15.3 Administración de recuperaciones ....................................................................................... 25
15.3.1 Dispositivos de almacenamiento de datos y tipos de fallas ............................................. 25
15.3.2 Herramientas de recuperación .......................................................................................... 26
15.3.3 Procesos de recuperación ................................................................................................. 27
15.4 Aspectos del diseño de transacciones ................................................................................. 28
15.4.1 Límite de transacción y puntos decisivos .......................................................................... 28
15.4.2 Niveles de aislamiento........................................................................................................ 30
15.4.3 Momento de imposición de la restricciónde integridad ................................................... 31
15.4.4 Puntos de protección ........................................................................................................ 32
15.5 Administración del flujo de trabajo ....................................................................................... 32
15.5.1 Caracterización de los flujos de trabajo ............................................................................. 33
15.5.2 Tecnologías que permiten el flujo de trabajo .................................................................... 33

3
Administración de datos y bases de datos
Las bases de datos soportan las operaciones de negocios y la toma de decisiones
administrativas en distintos niveles. La mayoría de las grandes organizaciones han
desarrollado diversas bases de datos operacionales para ayudar a manejar los negocios
con eficiencia, Conforme las organizaciones logran mejorar su operación, empiezan a
darse cuenta del potencial de toma de decisiones de sus bases de datos. Las bases de
datos operacionales ofrecenla materia prima para la toma de decisiones administrativas,
Sin embargo, es preciso agregar mayor valor con el fin de aprovechar las bases de datos
operacionales para la gerencia media y alta. Es necesario limpiar, integrar y resumir las
bases de datos operacionales con el objeto de proporcionar valor para la toma de
decisiones tácticas y estratégicas. La integración se vuelve necesaria porque a menudo las
bases.
Tal vez la gerencia media quiera integrar los datos en distintos departa-mentos, plantas
de manufactura y tiendas detallistas. La alta gerencia depende de los resultados del
análisis de la gerencia media y las fuentes de datos externas. La alta gerencia necesita in-
tegrar los datos de modo que sea posible llevar un registro de clientes, productos,
proveedores y otras entidades importantes en toda la organización. Además, es necesario
resumir los datos externos y luego integrarlos con los internos

4
Administración de los recursos de información para el
manejo del conocimiento

La administración de recursos de información surge como respuesta a los desafíos del


aprovechamiento de las bases de datos operacionales y la tecnología de la información
parala toma de decisiones administrativas, que comprende procesamiento, distribución e
integración de la información en toda la organización, Cada nivel de toma de decisiones
administrativas y operaciones de negocios tiene un ciclo de vida de la informaciónpropio,
La calidad de los datos es una preocupación importante para la administración de los re-
cursos de información por el impacto que tiene en la toma de decisiones administrativas,
en años recientes, surgió un movimiento para ampliar la administración de recursos de
información hacia la administración de la información. Por tradición, la administración de
re- cursos de información ha enfatizado la tecnología en apoyo de las fórmulas
predefinidas para la toma de decisiones, en lugar de la capacidad de reaccionar a un
entorno de negocios en cons- tante cambio. Para tener éxito en el entorno de negocios
actual, las organizaciones deben poner énfasis en una respuesta rápida y adaptarse, en
lugar de realizar planeación. Para enfrentar este reto, el doctor Yogesh Malhotra, un
conocido asesor en administración, argumenta que las orga-nizaciones deben desarrollar
sistemas que faciliten la creación de conocimientos en lugar de la administración de la
información.

Identificar nuevos mercados y productos; Proyecciones económicas y tecnológicas;


planeación del crecimiento; redistribuir los resúmenes de noticias; reportes de la industria;
recursos entre las divisiones. reportes del desempeño a mediano plazo.

Tendencias históricas; desempeño de


Elegir los proveedores; proyección deventas, proveedores; análisis de caminos críticos;planes a
inventario y efectivo; revisar los niveles de corto y mediano plazo.
personal; preparar presupuestos.

Programar los horarios de los empleados;


Bajo corregir las demoras en loscontratos; detectar Reportes de problemas; reportes de
cuellos de botella en la producción; monitoreo excepciones; horarios de empleados;
del uso derecursos. resultados de la producción diaria; niveles
de inventario.

Esta visión de la administración del conocimiento ofrece un contexto para el uso de la


tec-nología de la información en la solución de problemas de negocios.

5
La mejor tecnología de la in-formación fracasa si no se alinea con los elementos humanos
y de la organización. La tecnología de la información debe ampliar la capacidad
intelectual individual, compensar las limitaciones en el procesamiento humano y apoyar
una dinámica positiva en la organización.

Responsabilidades de los administradores de datos y los


administradores de bases de datos
Como parte del control de recursos de información, han surgido nuevas
responsabilidades para laadministración. El administrador de datos (DA) es un puesto de
gerencia alta o media con ampliasresponsabilidades en cuanto a la administración de los
recursos de información, . El administrador de datos veel recurso de la información en
un contexto más amplio que el administrador de bases de datos.El primero considera
todo tipo de datos, sin importar si están almacenados en bases de datosde relación,
archivos, páginas web o fuentes externas. Por lo general, el administrador debases
de datos sólo considera la información almacenada en bases de datos, Una de las
responsabilidades más importantes del administrador de datos es el desarrollo de un
modelo de datos empresariales

Puesto Responsabilidades

Administrador de datos Desarrolla un modelo empresarial de datos.

Establece estándares y políticas entre las bases de datos con respecto a los
nombres, la capacidad para compartir datos y la propiedad de los datos.
Negocia los términos contractuales con los distribuidores de tecnología
de la información.

Desarrolla planes a largo plazo para la tecnología de la información.


Desarrolla el conocimiento detallado sobre los DBMS individuales.
Realiza consultas sobre el desarrollo de aplicaciones.

Lleva a cabo el modelado de datos y el diseño lógico de bases de datos.


Pone en práctica los estándares de administración de datos.

Vigila el desempeño de las bases de datos.


Lleva a cabo la evaluación técnica de los DBMS.

6
La seguridad comprende la protección de una base de datos del acceso no autorizado y de
la des- trucción maliciosa. Debido al valor de la información en las bases de datos
corporativas, existeuna gran motivación para los usuarios no autorizados que tratan de
obtener acceso ilegal a ellas. Los competidores se sienten atraídos por el acceso a
información delicada sobre los planes de desarrollo de los productos, las iniciativas para
ahorrar en costos y los perfiles de los clientes, La seguridad es un amplio tema que
comprende muchas disciplinas. Existen aspectos lega-les y éticos relacionados con quién
tiene acceso a los datos y cuándo se pueden revelar.
El planteamiento más común para las reglas de autorización se conoce como control de
acceso discrecional. En éste, a los usuarios se les asignan derechos o privilegios de
acceso a secciones específicas de una base de datos. Para un control preciso, los
privilegios se especifi- can para las vistas en lugar de las tablas o los campos, . Como las
funciones son más estables que losusuarios individuales, las reglas de autorización que
hacen referencia a las funciones requieren menos mantenimiento que las reglas que
hacen referencia a usuarios individuales. A los usuarios se les asignan funciones y una
contraseña. Durante el proceso de registro a la base de datos, el sistema de seguridad
autentica a los usuarios e indica a qué funciones pertenecen.

DBA

Autenticación,

Los controles de acceso obligatorios son menos flexibles que los controles de acceso dis-
crecionales. En los primeros, a cada objeto se le asigna un nivel de clasificación y a cada
usua-rio se le da un nivel de autorización. Un usuario puede tener acceso a un objeto si su
nivel de autorización ofrece acceso al nivel de clasificación del objeto, Además de estos
controles de acceso, los DBMS ofrecen soporte para la encriptación de bases de datos.
La encriptación comprende la codificación de los datos para ocultar su signifi- cado. Un
algoritmo de encriptación cambia los datos originales (conocidos como texto plano o
plaintext).

7
Sentencias de seguridad de SQL:2003

Ejemplos de la sentencia CREATE ROLE

La sentencia GRANT también se puede usar para asignar usuarios a los roles, como se
muestra en las últimos tres sentencias GRANT, el usuario Smith puede otorgar la función
ISAdministrator a otros usuarios. La opciónWITH GRANT se debe utilizar con precaución
porque ofrece mucha libertad al usuario.
La sentencia REVOKE se utiliza para eliminar un privilegio de acceso. se elimina el
privilegio SELECT de ISFaculty. La cláusula RESTRICT significa que el privilegio se revoca
sólo si no se otorgó a la función especificada por más de unusuario.

Definición de vista, sentencias GRANT y REVOKE

(SQL:2003)

TO ISFaculty, ISAdvisor, ISAdministrator;

Seguridad en Oracle y Access

con la sentencia CREATE USER (crear usuario), funciones predefinidas y privilegios


adicionales. En SQL:2003, la creación de usuarios es un problema de implementación.
Como Oracle no depende del sistema operativo parala creación de usuarios, proporciona
la sentencia CREATE USER. Oracle ofrece funciones pre-definidas para usuarios con altos
privilegios que incluyen la función CONNECT (conectar) paracrear tablas en un esquema,
la función RESOURCE para crear tablas y objetos de aplicaciones como procedimientos
almacenados, y la función DBA para administrar bases de datos. La mayoría de los DBMS
permiten restricciones de autorización por objetos de aplica- ciones, como formularios y
reportes, además de los objetos de bases de datos permitidos enla sentencia GRANT.

8
Estas limitaciones adicionales de seguridad casi siempre se especifican en las interfaces
propietarias o en las herramientas de desarrollo de aplicaciones, en lugar de SQL

Procedimiento, función,
Privilegio/ paquete, biblioteca, Vista
Objeto Tabla Vista Secuencia2 operador, tipo de índice materializada 3

ALTER X X
DELETE X X X
EXECUTE X
INDEX X
INSERT X X X
REFERENCES X X
SELECT X X X X
UPDATE X X X

Para las prácticas de encriptación, un DBA debe considerar los estándares de documenta-
ción, el uso de parámetros y el contenido, como resume la tabla 14.6. Los estándares de
docu- mentación pueden incluir estándares de nombres, explicaciones de parámetros y
descripciones de las condiciones previas y posteriores a los procedimientos. Es preciso
vigilar el uso de pa- rámetros en los procedimientos y funciones. Para el contenido, los
disparadores no deben rea-lizar revisiones de integridad que se puedan codificar como
restricciones de integridad declara- tiva (restricciones CHECK, llaves primarias, llaves
foráneas...). Para reducir el mantenimiento, los disparadores y los procedimientos
almacenados deben hacer referencia a los tipos de datos de las columnas de las bases de
datos asociadas. un procedimiento almacenado o un disparador depende de las tablas,
vistas, procedimien-tos y funciones a los que hace referencia, así como de los planes de
acceso que crea el compila-dor SQL.

...

BEGIN

BEGIN

9
Garantizar que los procedimientos almacenados y disparadores funcionan de manera
correcta. Si un procedimiento o disparador utiliza un sentencia SQL, casi todos los DBMS
recopilan au-tomáticamente este procedimiento o disparador, en caso de que el plan de
acceso asociado sea obsoleto.
Un DBA debe estar consciente de las limitaciones de las herramientas que ofrece el DBMS
para el manejo de dependencias. Para procedimientos y funciones almacenados en un
sitio remoto, un DBA puede elegir entre el mantenimiento de la dependencia con sello
de la hora o la firma. Con el mantenimiento del sello de la hora, un DBMS recompila un
objeto dependiente para cualquier cambio en los objetos referenciados, Asimismo, un
DBA debe estar consciente de que un DBMS no va a recompilar un procedimiento ni un
disparador si se elimina uno de los objetos referenciados. El procedimiento o disparador
dependiente se marcará como inválido porque la recompilación no es posible.

Manipulación del diccionario de datos


base de datos especial que describe bases de datos individuales y su entorno. El
diccionario de datos contiene descriptores de datos llamados metadatos, que defi-nen la
fuente, el uso, el valor y el significado de los datos. Por lo general, los DBA manejan dos
tipos de diccionarios de datos para registrar el entorno de la base de datos. Cada DBMS
ofrece un diccionario de datos para registrar tablas, columnas, afirmaciones, índices y
otros objetos quemaneja.

Tablas de catálogo en SQL:2003 y Oracle

contiene las tablas del catálogo en el Definition_Schema, como resume la tabla 14.9.El
Definition_Schema contiene una o más tablas del catálogo que corresponden a cada
objeto que se puede crear en una definición de datos SQL o una sentencia de control de
datos. Las tablas de catálogo de la base en el Definition_Schema no están pensadas para
accederse en las aplicaciones.

Contenido

USER_CATALOG Contiene datos básicos sobre cada tabla y vista definidas por un usuario.
USER_OBJECTS Contiene datos sobre cada objeto (funciones, procedimientos, índices,
disparadores, afirmaciones, etc.) definido por un usuario. Esta tabla
contiene la hora de creación y la última vez que cambió para cada objeto.
Contiene datos ampliados acerca de cada tabla, como la distribución del
espacio y los resúmenes estadísticos.
USER_TABLES
Contiene datos básicos y ampliados para cada columna, como nombre de
USER_TAB_COLUMNS columna, referencia de la tabla, tipo de datos y un resumen estadístico.

10
Sin embargo, para cualquier tarea específica, como manejar disparadores, un DBA
necesita utilizar una pequeña cantidad de tablas de catálogo. La tabla 14.10 presenta
algunas delas tablas de catálogo más importantes de Oracle.
Un DBA modifica en forma implícita las tablas de catálogo cuando utiliza comandos de
definición de datos, como la sentencia CREATE TABLE. Los DBMS usan las tablas de catá-
logo para procesar consultas, autorizar usuarios, revisar las limitaciones de integridad y
llevara cabo el procesamiento de otras bases de datos. El DBMS consulta las tablas de
catálogo antes de emprender cada acción. Por tanto, la integridad de estas tablas es
crucial para la operación del DBMS. Sólo los usuarios más autorizados deben tener
permitido modificar las tablas de catálogo. Para aumentar la seguridad y la confiabilidad,
el diccionario de datos casi siempre es una base de datos separada y guardada de
manera independiente de las bases de datos de los usuarios.

Planeación de datos
Muchas de ellas han creado islas deautomatización que ofrecen soporte para los objetivos
locales, pero no para las metas globales de la organización. La estrategia de las islas de
automatización puede dar lugar a una mala ali- neación de los objetivos del negocio y de
la tecnología de la información. Uno de los resultadosde esta alineación equivocada es la
dificultad para extraer el valor de la toma de decisiones de las bases de datos operativas.
Como respuesta a los problemas de las islas de automatización, muchas
organizaciones llevan a cabo un proceso de planeación detallado para la tecnología y
los sistemas de in- formación. El proceso de planeación tiene varios nombres, como
planeación de sistemas de información, planeación de sistemas de negocios, ingeniería
de sistemas de información y arquitectura de sistemas de información. Todos estos
planteamientos ofrecen un proceso para lograr los siguientes objetivos:
• Evaluación de los sistemas de información actuales en cuanto a las metas y objetivos
de laorganización.
• Determinación del alcance y lo oportuno que resulta el desarrollo de nuevos
sistemas deinformación, así como el uso de nueva tecnología de la información.
• Identificación de las oportunidades de aplicar la tecnología de la información para
lograruna ventaja competitiva.

11
Los administradores de datos desempeñan una función importante en el desarrollo de
los planes de sistemas de información: llevan a cabo numerosas entrevistas para
desarrollar el mo-delo de datos empresariales y se coordinan con otros empleados de
planeación con el objeto de desarrollar modelos de interacción. Para aumentar las
probabilidades de que los planes sean aceptados y utilizados, los administradores de
datos deben lograr la participación de la alta ge- rencia.
Selección y evaluación de los sistemas de administración
de bases de datos
La selección y evaluación de un DBMS puede ser una tarea muy importante para una
organi- zación. Los DBMS proporcionan una parte importante de la infraestructura de
cómputo. Con- forme las organizaciones se esfuerzan por manejar el comercio
electrónico a través de Internet y extraer el valor de las bases de datos operativas, los
DBMS desempeñan una función cada vez más importante. El proceso de selección y
evaluación es importante por el impacto que puede tener una mala elección. Los
impactos inmediatos pueden ser el lento desempeño de las bases, de datos y la pérdida
del precio de compra. El proceso de selección y evaluación comprende una valoración
detallada de las necesidades de una organización y las características de los DBMS
candidatos. El objetivo del proceso es de- terminar un grupo reducido de sistemas
candidatos que se investigan con mayor detalle. Debido a la naturaleza detallada del
proceso, un DBA realiza la mayor parte de las tareas. Por tanto, el DBA necesita conocer
bien los DBMS para poder llevarlas a cabo.

12
Calificar

Después de terminar el proceso de selección y evaluación, es necesario evaluar con más


deta- lle los dos o tres DBMS candidatos ganadores. Es posible utilizar evaluaciones
comparativas para proporcionar una valoración más detallada de estos candidatos. Una
evaluación comparativa(benchmark) es una carga de trabajo para evaluar el desempeño
de un sistema o producto, Un DBA puede utilizar los resultados del TPC para cada
evaluación comparativa y así obtener estimados razonables acerca del desempeño de
un DBMS en particular en un entorno de hardware/software específico. Los resultados
del desempeño del TPC comprenden el des- empeño total del sistema y no sólo el
desempeño del DBMS, de modo que los resultados no se exageran cuando un cliente
usa un DBMS en un entorno específico de hardware/software. Para facilitar las
comparaciones entre el precio y el desempeño, el TPC publica la medida del des- empeño
además del precio/desempeño para cada evaluación comparativa. El precio cubre todas
las dimensiones de costos de un entorno completo de sistemas, incluidas estaciones de
trabajo, equipo de comunicación, software de sistemas, sistema de cómputo o host,
almacenamiento derespaldos y costo de mantenimiento por tres años. El TPC realiza una
auditoría de los resultadosde las evaluaciones comparativas antes de su publicación para
asegurarse de que los fabricantesno manipularon los resultados, obtener actualizaciones
de los productos. Por ejemplo, MySQL, el DBMS gratuito más popular,hace poco cambió
sus licencias, de modo que los usuarios comerciales van a tener que pagar una tarifa por
ellas. A pesar de estas incertidumbres, muchas organizaciones utilizan el softwareDBMS

13
gratuito sobre todo para sistemas que no son de misión crítica.

Evaluación
comparativa
(benchmark) Descripción Medidas de desempeño
TPC-C Evaluación comparativa de Transacciones por minuto; precio por
la captura de pedidos en línea transacciones por minuto
TPC-H Soporte para consultas ad hoc Consultas compuestas por hora; precio de
peticiones compuestas por hora
TPC-App Procesamiento de transacciones Interacciones de los servicios web por
de negocio a negocio con segundo (SIPS) por servidor de aplicaciones;
servicios de aplicaciones y web SIPS totales; precio por SIPS
TPC-W Evaluación comparativa del Interacciones web por segundo; precio
comercio en línea por interacciones web por segundo

Administración de entornos de bases de datos


El procesamiento de transacciones comprende las operaciones cotidianas de una
organización. Todos los días, las organizaciones procesan grandes volúmenes de
pedidos, pagos, retiros de efectivo, reservaciones de líneas aéreas, cobros de seguros y
otros tipos de transacciones. Los DBM prestan los servicios esenciales para realizar las
operaciones de manera eficiente y con- fiable. Organizaciones como los bancos con los
cajeros automáticos, las líneas aéreas con los sistemas de reservaciones en línea y
universidades con registros en línea, no podrían funcionar sin un procesamiento de
operaciones confiable y eficiente. Con el interés cada vez mayor de hacer negocios a
través de Internet, el procesamiento de transacciones adquiere mayor impor- tancia día
a día.
El data warehousing comprende el soporte de las decisiones de bases de datos. Como
muchas organizaciones no han podido utilizar las bases de datos operativas directamente
para ofrecer soporte en la toma de decisiones administrativas, surgió la idea de un data
warehouse.
Los DBMS pueden operar en entornos distribuidos para soportar tanto el procesamiento
de transacciones como los data warehouse. En los entornos distribuidos, los DBMS
ofrecen la ha- bilidad de distribuir el procesamiento y los datos entre computadoras
conectadas en red. Para el procesamiento distribuido, un DBMS puede permitir la
distribución entre varias computadoras en una red de las funciones que ofrece el DBMS,
Como los en- tornos distribuidos no aumentan la funcionalidad, es preciso justificarlos con
las mejoras en las aplicaciones subyacentes. Los administradores de bases de datos
realizan tareas más detalladas

14
Responsabilidades
Área
Educar y consultar sobre el diseño de aplicaciones y las
características

Monitoreo del desempeño problemas de integridad; modificar los niveles de recursos para
mejorar el desempeño

Administración de bases de datos de objetos


Los DBMS de objetos soportan una funcionalidad adicional para el procesamiento de
transac- ciones y las aplicaciones de data warehouses. Muchos sistemas de información
utilizan mayor variedad de tipos de datos que la que ofrecen los DBMS relacionales. Por
ejemplo, muchas bases de datos financieras necesitan manipular series de tiempo, un tipo
de datos que no ofrecenla mayor parte de los DBMS relacionales, los administradores de
datos generalmente llevan a cabo la planeación de responsabilidades que incluyen las
metas de configuración y la determinación de arquitecturas. Por lo regular, los
administradores de bases de datos realizan tareas más de- tallas como monitoreo del
desempeño, consultoría y diseño de bases de datos de objetos. Un DBMS de objetos
puede ser una extensión importante de un DBMS relacional existente o un DBMS nuevo.
Es necesario llevar a cabo un proceso de selección y evaluación para elegir el producto
más apropiado. El capítulo 18 presenta los detalles de los DBMS de objetos.
Los especialistas en bases de datos necesitan entender dos importantes procesos para
ma- nejar la tecnología de información. Los administradores de datos participan en un
proceso de planeación detallado que determina nuevas direcciones para el desarrollo de
sistemas de informa-ción. Este capítulo describió el proceso de planeación de datos como
un componente importantedel proceso de planeación de sistemas de información. Tanto
los administradores de datos comolos administradores de bases de datos participan en
la selección y evaluación de los DBMS. Los segundos realizan las tareas detalladas,
mientras que los administradores de datos a menudo toman las decisiones finales de
selección utilizando recomendaciones detalladas. Este capítulo describió los pasos del
proceso de selección y evaluación y las tareas que realizan los adminis-tradores de datos
y de bases de datos en el proceso.

15
Detalles con los conceptos y las técnicas
administrativas
• Administración de recursos de información: filosofía administrativa para controlar
los re- cursos de información y aplicar la tecnología de información con el fin de
soportar la tomade decisiones administrativas.
• Administrador de bases de datos: puesto de apoyo para administrar bases de datos
indivi- duales y DBMS.
• Administrador de datos: puesto administrativo con responsabilidades de
planeación y polí-ticas para la tecnología de la información.
• Controles de acceso discrecionales para asignar derechos de acceso a grupos y
usuarios.
• Controles de acceso obligatorios para bases de datos muy delicadas y estáticas
utilizadas enla recopilación de inteligencia y la defensa nacional.
• Sentencias SQL CREATE/DROP ROLE y sentencias GRANT/REVOKE para reglas de autorización discrecional.

CREATE ROLE ISFaculty


GRANT SELECT ON ISStudentGPA
TO ISFaculty, ISAdvisor, ISAdministrator REVOKE
SELECT ON ISStudentGPA FROM ISFaculty
• Sistema Oracle 10g y privilegios de objetos para el control de acceso discrecional.
• Sentencia SQL CREATE DOMAIN para limitaciones de tipos de datos.
CREATE DOMAIN StudentClass AS CHAR(2)
CHECK (VALUE IN ('FR', 'SO', 'JR', 'SR') )
• Tipos SQL distintivos para mejorar la verificación de tipos.
• Limitaciones de dominios SQL y tipos distintivos comparados con tipos de datos
definidospor el usuario.
• Sentencia SQL CREATE ASSERTION para limitaciones de integridad complejas.
CREATE ASSERTION OfferingConflict CHECK
(NOT EXISTS
( SELECT O1.OfferNo
FROM Offering O1,
Offering O2 WHERE
O1.OfferNo <>
O2.OfferNo AND
O1.OffTerm = O2.OffTerm

16
AND O1.OffYear =
O2.OffYear AND
O1.OffDays = O2.OffDays
AND O1.OffTime =
O2.OffTime
AND O1.OffLocation = O2.OffLocation ) )
• Limitación CHECK en la sentencia CREATE TABLE para limitaciones
que comprenden las condiciones de fila en columnas de la misma
tabla.
CREATE TABLE Student
( StdSSN CHAR(11),
StdFirstName VARCHAR(50) CONSTRAINT
StdFirstNameRequiredNOT NULL,
StdLastName VARCHAR(50) CONSTRAINT
StdLastNameRequiredNOT NULL,
StdCity VARCHAR(50) CONSTRAINT
StdCityRequired NOTNULL,
StdState CHAR(2) CONSTRAINT
StdStateRequired NOTNULL,
StdZip CHAR(9) CONSTRAINT
StdZipRequired NOTNULL,
StdMajor CHAR(6),
StdClass CHAR(6),
StdGPA DECIMAL(3,2),
CONSTRAINT PKStudent PRIMARY KEY
(StdSSN), CONSTRAINT ValidGPA CHECK ( StdGPA
BETWEEN 0 AND 4 ),
CONSTRAINT MajorDeclared CHECK
( StdClass IN ('FR', 'SO') OR StdMajor IS NOT NULL ) )

17
Sentencias CREATE y DROP ROLE

CREATE ROLE RoleName


[ WITH ADMIN UserName { CURRENT_USER | CURRENT_ROLE } ]

DROP ROLE RoleName

Sentencias GRANT y REVOKE

-- GRANT statement for privileges


GRANT { <Privilege>* | ALL PRIVILEGES } ON ObjectName
TO UserName* [ WITH GRANT OPTION ]

<Privilege>:
{ SELECT [ (ColumnName*) ] |
DELETE |
INSERT [ (ColumnName*) ] |
REFERENCES [ (ColumnName*) ] |
UPDATE [ (ColumnName*) ]
USAGE |
TRIGGER |
UNDER |
EXECUTE }

18
Administración de transacciones
15
Panorama general

Este capítulo describelas propiedades de las transacciones, enunciados SQL para definir las
transacciones y las pro- piedades del procesamiento de transacciones. Después de aprender los
conceptos de las tran-sacciones, estará listo para estudiar el control de concurrencias y el manejo
de recuperaciones,dos importantes servicios para apoyar el procesamiento de transacciones. En
cuanto al controlde concurrencias, este capítulo describe el objetivo, los problemas de
interferencia y las herra-mientas de control de concurrencias. En relación con el manejo de
recuperaciones, este capítulodescribe los tipos de fallas, las herramientas y los procesos de
recuperación.

15.1 Aspectos básicos de las transacciones de bases de datos


El procesamiento de transacciones comprende el lado operativo de las bases de datos.
Mientrasque la administración de operaciones describe la forma en que se producen los bienes
físicos, laadministración de transacciones describe la manera en que se controlan los bienes de
informacióno transacciones. La administración de transacciones, al igual que la administración de
bienes físi-cos, es muy importante para las organizaciones modernas. Organizaciones como
bancos con caje-ros automáticos, líneas aéreas con sistemas de reservaciones y universidades con
registros en línea,no podrían funcionar sin un procesamiento de transacciones confiable y
eficiente. En la actualidad,las organizaciones grandes realizan miles de transacciones por minuto.
Con el crecimiento conti-nuo del comercio electrónico, aumenta la importancia del procesamiento
de transacciones. En un lenguaje común, una transacción es una interacción entre dos o más
partes para rea-lizar un negocio, como la compra de un auto a una distribuidora. Las transacciones
de bases dedatos tienen un significado más preciso. Una transacción de base de datos
comprende un grupode operaciones que se deben procesar como una unidad de trabajo. Las
transacciones se deben procesar de manera confiable, de modo que no haya ninguna pérdida de
datos debido a usuariosmúltiples o fallas en el sistema. Para ayudarle a entender con mayor
precisión este significado,esta sección presenta ejemplos de transacciones y define sus
propiedades.

19
15.1.1 Ejemplos de transacciones
Un sistema de información puede tener varias clases de transacciones diferentes. La
tabla15.1 ilustra las transacciones de un sistema de captura de pedidos. En cualquier momento
losclientes podrían crear negocios con cada una de estas transacciones. Por ejemplo, muchos
clien-tes pueden hacer pedidos mientras otros revisan el estado de sus pedidos. Como ejemplo
adi-cional de las transacciones en un sistema de información, la tabla 15.2 ilustra las
transaccionestípicas en el sistema de nómina de una universidad. Algunas de estas transacciones
son periódi-cas, mientras otras son eventos únicos.

Enunciados SQL para definir las transacciones


Para definir una transacción puede utilizar algunos enunciados SQL adicionales. La figura 15.1
ilustra enunciados SQL adicionales para definir el prototipo de una transacción en un

20
Como aprenderá más adelante en este capítulo, las transacciones deben estar diseñadas para
durar poco. Con el fin de acortar la duración de una transacción en un cajero automático,la
interacción del usuario debe colocarse fuera de la transacción siempre que sea posible. Enuna
transacción en cajero automático, el enunciado START TRANSACTION se puede colocardespués
de las primeras tres filas para eliminar la interacción con el usuario. Las transaccionesmuy largas
pueden dar lugar a un tiempo de espera prolongado entre los usuarios concurrentesde una base
de datos. Sin embargo, los enunciados UPDATE e INSERT deben permanecer en lamisma
transacción porque forman parte de la misma unidad de trabajo.

15.1.2 Propiedades de la transacción


Los DBMS se aseguran de que las transacciones tengan ciertas propiedades. Como estudia-remos
a continuación, las más importantes y conocidas son las propiedades ACID (atómica,consistente,
aislada (isolated) y durable).

• Atómica
significa que una transacción no se puede subdividir. Ya sea que se realice todoel trabajo en la
transacción o que no se haga nada. Por ejemplo, la transacción en un cajeroelectrónico no
representará débito en una cuenta sin también acreditar una cuenta corres- pondiente. La
propiedad atómica implica que los cambios parciales que realiza una transac-ción deben
deshacerse si ésta se cancela.

• Consistente
significa que si las limitaciones aplicables son ciertas antes de empezar la tran-sacción, éstas
también lo serán al terminarla. Por ejemplo, si se calcula el saldo de la cuentadel usuario antes de
la transacción, también se calcula después de ésta. De lo contrario, latransacción se rechaza y
ningún cambio tiene lugar.

21
• Aislada
significa que las transacciones no interfieren entre sí, excepto en formas permi-tidas. Una
transacción nunca debe sobrescribir los cambios realizados por otra. Además,una transacción no
debe interferir en otros aspectos, como no ver los cambios temporalesrealizados por otras
transacciones. Por ejemplo, su pareja no sabrá que usted retiró dinerosino hasta terminar la
transacción en el cajero electrónico.

• Durable
significa que cualquier cambio que resulte de una transacción es permanente. Nin-guna falla va a
borrar ningún cambio después de terminar la transacción. Por ejemplo, sila computadora de un
banco experimenta una falla cinco minutos después de terminar unatransacción, sus resultados
siguen grabados en la base de datos del banco

Los DBMS ofrecen dos servicios para garantizar que las transacciones tienen las propie-dades
ACID: transparencia de recuperación y transparencia de concurrencia. La recuperacióncomprende
acciones para manejar las fallas, como errores en la comunicación y colapsos delsoftware. La
concurrencia comprende acciones para controlar la interferencia entre varios usua-rios
simultáneos de la base de datos. El análisis siguiente proporciona los detalles acerca de
latransparencia de recuperación y concurrencia.

• La transparencia de recuperación

significa que el DBMS restaura automáticamente una base de datos a un estado consistente
después de una falla. Por ejemplo, si ocurre una fallade comunicación durante una transacción en
un cajero automático, los efectos de la tran-sacción quedan borrados de la base de datos. Por otra
parte, si el DBMS se colapsa tressegundos después de que termina una transacción en un cajero
automático, los detalles dela transacción son permanentes.

• La transparencia de concurrencia

significa que los usuarios perciben la base de datoscomo un sistema para un solo usuario, aunque
haya varios usuarios simultáneos. Por ejem- plo, aun cuando muchos usuarios traten de reservar
lugares en el mismo vuelo medianteuna transacción de reservación, el DBMS se asegura de que
cada usuario no sobrescriba eltrabajo de los demás.

22
15.2.2 Problemas de interferencia
Hay tres problemas que se pueden presentar debido al acceso simultáneo a una base de datos:
(1)actualización perdida, (2) dependencia sin realizaciones y (3) recuperación inconsistente.
Estasección define cada problema y presenta ejemplos de su ocurrencia.

Actualización Perdida
Una actualización perdida es el problema de interferencia más serio porque los cambios a una
base de datos se pierden sin que nadie se dé cuenta. En una actualización perdida, la actualiza-
ción de un usuario sobrescribe la de otro, como ilustra la cronología de la figura 15.4. La crono-
logía muestra dos transacciones concurrentes que tratan de actualizar el campo de asientos
libres(SR) en el registro del mismo vuelo. Supongamos que el valor de SR es 10 antes de que
empiecenlas transacciones. Después del tiempo T2 ambas transacciones guardan el valor de 10
para SR en los búfers locales, como resultado de las operaciones leídas. Después del tiempo T4,
ambas

15.2.3 Herramientas de control de concurrencia


Esta sección describe dos herramientas, candados y el protocolo de candado de dos etapas,
queutilizan la mayoría de los DBMS para evitar los tres problemas de interferencia que
estudiamosen la sección anterior. Además de las dos herramientas, se presenta el problema del
punto muerto(deadlock) como resultado del uso de candados. Esta sección termina con el breve
estudio de planteamientos optimistas de control de concurrencia que no utilizan candados.

Candados
Los candados ofrecen una forma de evitar que otros usuarios tengan acceso a un elemento deuna
base de datos que está en uso. Un elemento de una base de datos puede ser una fila, un bloque,
un subconjunto de filas o incluso una tabla completa. Antes de tener acceso al elementode la base
de datos, es necesario obtener un candado. Otros usuarios deben esperar si tratan deobtener un
candado en el mismo elemento. La tabla 15.3 muestra conflictos para ambos tipos

23
El administrador del control de concurrencia es la parte del DBMS responsable de adminis-trar los
candados. Este administrador conserva una tabla oculta para registrar los candados quetienen
diversas transacciones.

Un registro de candados contiene un identificador de transaccio-nes, un identificador de


registros, un tipo y una cuenta, como se explica en la tabla 15.4. Comose dijo antes, en el esquema
más simple, el tipo es compartido o exclusivo. La mayor parte de losDBMS tienen otros tipos de
candados para mejorar la eficiencia y permitir mayor acceso con-currente. El administrador del
control de concurrencias realiza dos operaciones en los registrosde candados. El operador de
candado agrega una fila en la tabla de candados, mientras que eloperador para abrir candados u
operador de liberación elimina una fila de la tabla de candados.

24
Granularidad de candados
La granularidad de candados representa una complicación en relación con los candados.
Lagranularidad se refiere al tamaño del elemento de la base de datos que tiene candado. La mayor
parte de los DBMS manejan candados de distintas granularidades, como ilustra la figura 15.7.El
candado más extenso abarca toda la base de datos. Si toda la base tiene un candado
exclusivo,ningún otro usuario tiene acceso a la base de datos hasta quitarlo. Por otro lado, el
candado más pequeño abarca sólo una columna individual. También puede haber candados en
partes de la base de datos que no ven los usuarios en general. Por ejemplo, es posible tener
candados en losíndices y en las páginas (registros físicos)

La mayor parte de los DBMS de escritorio emplean una política más sencilla de tiempofuera para
controlar los puntos muertos. En una política de tiempo fuera, el administrador decontrol de
concurrencia cancela (con un enunciado ROLLBACK) cualquier transacción quehaya estado en
espera durante más de un tiempo específico. Debemos hacer notar que una po-lítica de tiempo
fuera puede cancelar transacciones que no tienen puntos muertos. El intervalode tiempo fuera
debe ser suficientemente largo para que pocas transacciones sin puntos muertostengan que
esperar mucho

15.3 Administración de recuperaciones


La administración de recuperaciones es un servicio que restaura la base de datos a un
estadoconsistente después de una falla. Esta sección describe los tipos de fallas que hay que
prevenir,las herramientas para el manejo de recuperaciones y los procesos de recuperación que
utilizan lasherramientas.

15.3.1 Dispositivos de almacenamiento de datos y tipos de fallas


Desde la perspectiva de las fallas en las bases de datos, la volatilidad es una característica impor-
tante de los dispositivos para almacenamiento de datos. La memoria principal es volátil porque
pierde su estado en caso de que no haya corriente eléctrica. En contraste, un disco duro es
novolátil porque conserva su estado aun cuando no haya corriente eléctrica. Esta distinción es im-
portante porque los DBMS no pueden depender de la memoria volátil para recuperar los
datosdespués de las fallas. Ni siquiera los dispositivos no volátiles son totalmente confiables.
Porejemplo, ciertas fallas hacen que el contenido de un disco duro quede ilegible. Para lograr
unaalta confiabilidad, los DBMS pueden copiar los datos en diversos tipos de medios de almace-
namiento no volátiles, como disco duro, cinta magnética y disco óptico. El hecho de usar
unacombinación de dispositivos no volátiles aumenta la confiabilidad porque, por lo regular,

25
cadatipo de dispositivo tiene un índice de fallas independiente. Algunas fallas afectan sólo la
memoria principal, mientras que otras afectan la memoriavolátil y la no volátil.

La tabla 15.5 muestra cuatro tipos de fallas con sus efectos y frecuencia.Los primeros dos tipos de
fallas afectan la memoria de una transacción en ejecución. El códigode la transacción puede
revisar que no haya condiciones de error, como un número de cuenta in-válido o la cancelación de
la transacción por parte del usuario. Por lo regular, una falla detectada por un programa da lugar
al aborto de la transacción con un mensaje específico para el usuario.El enunciado SQL ROLLBACK
puede cancelar la transacción si ocurre una condición anormal.Recuerde que el enunciado
ROLLBACK hace que todos los cambios realizados por la transac-ción se eliminen de la base de
datos. Las fallas que detecta el programa son, por lo general, lasmás comunes y menos dañinas.

La terminación anormal tiene un efecto similar para una falla detectada por un programa, mas por
una causa diferente. La transacción se cancela, pero a menudo el usuario no puede entenderel
mensaje de error. La terminación anormal puede ser provocada por eventos como tiempo fueraen
una transacción, fallas en la línea de comunicación o un error de programación (por ejemplo,dividir
entre cero). El enunciado ON ERROR en la figura 15.1 detecta la terminación anormal.
Unenunciado ROLLBACK elimina cualquier efecto de la transacción terminada en la base de datos.

15.3.2 Herramientas de recuperación


El administrador de recuperaciones utiliza la redundancia y el control del tiempo de las escritu-ras
en una base de datos para restaurarla después de una falla. Tres de las herramientas que estu-
diamos en esta sección son formas de redundancia: registro de transacciones, punto de revisióny
respaldo de base de datos. La última herramienta (escritura forzada) permite al administradorde
recuperaciones tener el control del momento en que se graban las escrituras a una base dedatos.
Esta sección explica la naturaleza de estas herramientas, mientras que la siguiente explicacómo
se utilizan en los procesos de recuperación.

26
15.3.3 Procesos de recuperación
El proceso de recuperación depende del tipo de falla. La recuperación de una falla del disposi-tivo
es sencilla, pero puede tomar mucho tiempo, como explicamos a continuación:

• Se recupera la base de datos del respaldo más reciente.

• Luego, el administrador de recuperaciones aplica el operador rehacer a todas las


transaccio-nes realizadas después del respaldo. Como el respaldo puede ser de varias
horas o días atrás,es preciso consultar el registro para restaurar las transacciones
realizadas después de éste.

• El proceso de recuperación termina con el reinicio de las operaciones incompletas. Para


las fallas locales y del sistema, el proceso de recuperación depende del momento enque
los cambios a la base de datos se graban en el disco. Los cambios en la base de datos
puedengrabarse antes de la realización (actualización inmediata) o después de ésta
(actualización dife-rida). La cantidad de trabajo y el uso de las operaciones de registro
(deshacer y rehacer) depen-den del momento en que se realicen las actualizaciones a la
base de datos. El resto de esta seccióndescribe los procesos de recuperación para las
fallas locales y del sistema en cada escenario

27
15.4 Aspectos del diseño de transacciones
Con los servicios de recuperación y concurrencia, puede sorprender el hecho de que el diseña-dor
de transacciones todavía tenga que tomar decisiones importantes de diseño. El diseñador puede
ser un administrador de bases de datos, un programador o un programador asesorado porun
administrador de bases de datos. Las decisiones de diseño pueden tener un impacto signifi-cativo
en el desempeño del procesamiento de las transacciones. Los conocimientos acerca delos
detalles del control de concurrencia y la recuperación lo convierten en un mejor diseñadorde
transacciones. Esta sección describe las decisiones disponibles para que los diseñadores
detransacciones mejoren su desempeño

15.4.1 Límite de transacción y puntos decisivos


Un diseñador de transacciones desarrolla una aplicación para realizar parte del procesamientode
una base de datos. Por ejemplo, puede desarrollar una aplicación para permitir que un
usuarioretire dinero de un cajero automático, pida un producto o se registre en un curso. Para
crear laaplicación, el diseñador utiliza la transacción que define los enunciados de SQL y los
serviciosde control de concurrencia y recuperación del DBMS. El diseñador tiene varias
alternativasacerca del lugar donde va a usar los enunciados de SQL que definen las transacciones.
Estadecisión se conoce como límite de transacción.

límite detransacción

una decisión importantedel diseño de transaccio-nes, en la que una apli-cación, que consiste enun
grupo de enunciadosSQL, se divide en una omás transacciones.

Por lo general, el diseñador de transacciones tiene la opción de realizar una transacciónextensa


que contiene todos los enunciados SQL, o dividir estos enunciados en varias transac-ciones
menores. Por ejemplo, los enunciados SQL en la transacción del cajero automático pue-den
considerarse una transacción, como muestra la figura 15.1. Otra opción es hacer que
cadaenunciado SQL sea una transacción por separado. Cuando no se usan los enunciados de
límitede transacción (START TRANSACTION y COMMIT), cada enunciado SQL es una
transacciónseparada de manera predeterminada.

Intercambios al elegir los límites de transacción

Al elegir el límite de una transacción, el objetivo es minimizar su duración al tiempo que se ga-
rantiza la satisfacción de las restricciones críticas. Los DBMS están diseñados para transaccio-nes
de corta duración porque los candados pueden obligar a que otras transacciones tengan
queesperar. La duración incluye no sólo el número de lecturas y escrituras en una base de datos,
sinotambién el tiempo invertido en esperar las respuestas del usuario. Por lo general, el límite de
unatransacción no debe comprender la interacción con el usuario.

28
En las transacciones realizadasen cajeros automáticos, sistemas de reservaciones en líneas aéreas
y transacciones de pedidos de productos (figuras 15.1, 15.2 y 15.3, respectivamente), los
enunciados START TRANSACTIONy COMMIT pueden moverse para rodear sólo la parte SQL del
pseudocódigo. La duración no debe comprometer la revisión de restricciones. Como la revisión de
restric-ciones debe ocurrir al final de una transacción, tal vez sea difícil revisar algunas
restricciones.

Ejemplo de diseño del límite de una transacción

Para ilustrar la opción del límite de una transacción, los formularios jerárquicos ofrecen
uncontexto conveniente. Un formulario jerárquico representa una aplicación que lee y escribe
enuna base de datos. Por ejemplo, el formulario de registro de la base de datos de la
universidad(figura 15.11) manipula la tabla Registration en el formulario principal y las tablas

Enrollment y Offering en el subformulario. Al utilizar el formulario de registro para las inscripciones


enlos cursos, se inserta un registro en la table Registration después de completar el formulario
principal. Al completar cada línea en el subformulario, se inserta una fila en la tabla Enrollment.

y se actualiza la columna OffSeatsRemain de la fila Offering asociada. Aunque el campo

Off-SeatsRemain no aparece en el subformulario, es preciso actualizarlo después de insertar


cadalínea en el subformulario. Al diseñar un formulario jerárquico, el programador de bases de
datos tiene tres opcionesrazonables para el límite de una transacción:1. El formulario completo.2.
El formulario principal como una transacción y todas las líneas del subformulario comouna
segunda transacción.3. El formulario principal como una transacción y cada línea del subformulario
como transac-ciones separadas.

Cómo evitar el tiempo de interacción de usuarios

29
Otro aspecto del límite de transacciones es la interacción de usuarios. Por lo general, ésta
debetener lugar fuera de la transacción. La figura 15.12 muestra la transacción de reservación en

15.4.2 Niveles de aislamiento


Si todos los candados en dos etapas se conservan hasta el final de la transacción, se evitan lostres
problemas de control de concurrencia que describimos en la sección 15.2.2. Sin embargo,es
probable que algunas transacciones no necesiten este nivel de control de concurrencia. El pro-
blema de la actualización perdida es el más serio y siempre debe prevenirse. Algunas transaccio-
nes pueden tolerar los conflictos provocados por los problemas de dependencia y
recuperacióninconsistente. Quizá las transacciones que no necesitan protegerse de estos
problemas puedenliberarse más pronto de los candados y alcanzar una velocidad de ejecución
más alta.

30
15.4.3 Momento de imposición de la restricciónde integridad
Además de establecer el nivel de aislamiento, SQL permite el control del momento de imposi-ción
de la restricción de integridad. En forma predeterminada, las restricciones se ponen en prác-tica
inmediatamente después de cada enunciado INSERT, UPDATE y DELETE. Para la mayor parte de
las restricciones, como llaves primarias y foráneas, es apropiado ponerlas en práctica deinmediato.
Si se viola una restricción, el DBMS emite una operación de restauración al estadooriginal de la
transacción. El regreso al estado original restaura la base de datos a una condiciónconsistente, ya
que las propiedades ACID garantizan la consistencia al final de una transacción. Para las
restricciones complejas, quizá no sea apropiado ponerlas en práctica de inmediato.Por ejemplo,
una restricción de la carga de trabajo de los profesores garantiza que cada maestroimparte entre
tres y nueve unidades cada semestre. Si una transacción asigna una carga de tra- bajo completa,
es necesario diferir la revisión de la restricción hasta el final de la transacción.Para este tipo de
restricciones complejas es preciso especificar el momento de la restricción.

Las restricciones que nunca necesitan una revisión


diferidano necesitan la cláusula del momento, ya que el
valor predeterminado es NOT DEFERRABLE.La cláusula del
momento define el grado en que una restricción puede
diferirse, además de laforma de ponerla en práctica
(diferida o inmediata), como muestran los ejemplos 15.2 y
15.3.

31
Para cada transacción, el diseñador puede especificar si las restricciones que lo permitense
difieren o se ponen en práctica de inmediato, utilizando el enunciado SET CONSTRAINTS.Por lo
regular, este enunciado se coloca justo después del enunciado START TRANSACTION,como
muestra el ejemplo 15.4.

15.4.4 Puntos de protección


Algunas transacciones tienen acciones tentativas que pueden cancelarse mediante las accionesde
los usuarios u otros eventos. Por ejemplo, el usuario puede cancelar un artículo en un pe-dido al
descubrir que no lo hay en existencia. Como el enunciado ROLLBACK elimina todoslos cambios a
las transacciones, no puede utilizarse para borrar sólo el artículo cancelado si latransacción
comprende un pedido completo. El diseñador de transacciones puede codificar losenunciados
para eliminar de forma explícita las partes tentativas de una transacción, pero estacodificación
puede ser tediosa y comprender un trabajo adicional excesivo.

15.5 Administración del flujo de trabajo


La administración de transacciones forma parte de un área mucho más extensa conocida
comoadministración del flujo de trabajo. La administración del flujo de trabajo ofrece soporte
paralos procesos de negocios, tanto automatizados como realizados por un ser humano. En con-
traste, la administración de transacciones ofrece soporte para las propiedades del
procesamientoautomatizado de bases de datos. Esta sección presenta la administración del flujo
de trabajo para ofrecer una perspectiva más amplia para la administración de transacciones. Esta
seccióndescribe primero los flujos de trabajo, un concepto más amplio que las transacciones de
basesde datos. Luego, estudia las tecnologías para la administración del flujo de trabajo
mostrando laimportancia de la administración de transacciones.

32
15.5.1 Caracterización de los flujos de trabajo
Los flujos de trabajo soportan procesos de negocios tales como ofrecer un servicio telefónico,la
obtención de un préstamo y pedir un producto. Los flujos de trabajo consisten en tareas que
pueden realizar las computadoras (hardware y software), los seres humanos o una
combinaciónde ambos. Por ejemplo, al dar un servicio telefónico, el software determina la hora
de la cita para el servicio y actualiza una base de datos de horarios, mientras un técnico
inspecciona lacaja del teléfono para determinar si existe algún problema. Un flujo de trabajo define
el orden enque se realizan las tareas, las condiciones para que se lleven a cabo y los resultados de
las tareasrealizadas. Por ejemplo, el hecho de prestar un servicio telefónico comprende el
contacto inicialcon el cliente, una visita opcional de servicio, la facturación y el cobro. Cada una de
estas tareas puede tener condiciones en las cuales se prefieran, o puedan dar como resultado,
acciones comola actualización de la base de datos y una invocación de otras tareas.

15.5.2 Tecnologías que permiten el flujo de trabajo


Para respaldar el concepto de un flujo de trabajo como el que estudiamos en la sección
anterior,son importantes tres tecnologías: (1) administración de objetos distribuidos, (2)
especificacióndel flujo de trabajo y (3) administración de transacciones personalizadas. Como
describimos enla sección anterior, la administración de transacciones forma parte de la tercera
tecnología. Elresto de esta sección analiza cada una de las tecnologías.

33
Siñani, V. (2014). Administración de Bases de Datos Diseño y Desarrollo de Aplicaciones cd.
(pp. 482 – 543)
https://www.academia.edu/6813144/Administraci%C3%B3n_de_Bases_de_Datos_Dise%C3%B1o_y_Des
arrollo_de_Aplicaciones_cd

34

También podría gustarte