1. 1. • Es un tipo de sistema de información diseñado para recolectar, almacenar,
modificar y recuperar todo tipo de información que es generada por las transacciones en una organización. Una transacción es un evento o proceso que genera o modifica la información que se encuentran eventualmente almacenados en un sistema de información.
2. 2. • Un sistema transaccional debe controlar las transacciones para mantener la
seguridad y consistencia de los datos involucrados. Por ejemplo, un cliente transfiere dinero de una cuenta a otra cuenta dentro de un mismo banco; la cantidad de dinero que se descuenta de la cuenta emisora debe ser igual a la que se suma en la cuenta receptora. De no ser así, la acción (transacción) no se realiza.• Un sistema transaccional debe ser capaz de enmendar cualquier error ocurrido durante una transacción, pudiendo deshacer las operaciones realizadas, manteniendo los datos tal cual estaban antes del error.
3. 3. Propiedades de los sistemas transaccionalesAutomatizan tareas operativas en
unaorganización, permitiendo ahorrar en personal.*Suelen dirigirse especialmente al área deventas, finanzas, marketing, administración y recursos humanos.*Suelen ser los primeros sistemas de información quese implementan en una organización.*Sus cálculos y procesos suelen ser simples.*Se suelen utilizar para cargar grandes bases de datos.* Los beneficios de este tipo de sistemas en unaorganización son rápidamente visibles.*Estos sistemas son optimizados para almacenargrandes volúmenes de datos, pero no para analizar losmismos.
4. 4. Características esperables de un sistema transaccionalPara que un sistema
informático pueda serconsiderado como un sistema transaccional, debesuperar el test ACID.* Rapidez: deben ser capaces de responderrápidamente, en general la respuesta no debe sermayor a un par de segundos.* Fiabilidad: deben ser altamente fiables, de locontrario podría afectar a clientes, al negocio, a lareputación de la organización, etc. En caso defallas, debe tener mecanismos de recuperación y derespaldo de datos.* Inflexibilidad: no pueden aceptar informacióndistinta a la establecida. Por ejemplo, el sistematransaccional de una aerolínea debe aceptarreservas de múltiples agencias de viajes. Cadareserva debe contener los mismos datosobligatorios, con determinadas características.
5. 5. Ahora bien, este ejercicio consiste en usartransacciones, modificar el
campoTeléfono de la persona que tiene el id=57.Como se sabe, los cambios no surtiránefecto hasta que nosotros lo indiquemoscon la sentencia COMMIT. En unaventana, ejecutamos lo que muestra lasiguiente figura:
6. 6. • Observamos que la persona con el id=57 tiene un valor de “1234567″ en el campo
Teléfono. Ahora bien, en la otra ventana que tenemos disponible es donde iniciaremos la transacción: 7. 7. • Al teclear las sentencias mostradas en la anterior figura, nuevamente nos cambiamos a la otra ventana y ejecutamos por segunda vez la consulta SELECT * FROM contactos;• Al ejecutar tal consulta NO observarán el cambio de teléfono. Notarán que sigue teniendo el valor de 1234567. Esto pasa debido a que como ya comentamos, se trata de una transacción y aún no aceptamos (commit) o rechazamos (rollback) los cambios. Ahora, si nuevamente volvemos a la ventana en donde se inicio la transacción y tecleamos el COMMIT, los cambios ya tendrán un efecto:
8. 8. • También debe ser capaz de controlar y administrar múltiples transacciones,
determinando prioridades entre éstas. Por ejemplo, un cliente está haciendo la reserva de un asiento en un vuelo, dicho asiento debe ser bloqueado temporalmente hasta que se concrete la transacción, porque otro cliente podría estar queriendo reservar el mismo asiento en el mismo momento.