Sistemas de procesamiento de transacciones

Introducción:
Un sistema de procesamiento de transacciones (TPS por sus siglas en inglés) es un tipo de sistema de información. Un TPS recolecta, almacena, modifica y recupera toda la información generada por las transacciones producidas en una organización. Un TPS monitoriza los programas transaccionales (un tipo especial de programas). La base de un programa transaccional está en que gestiona los datos de forma que estos deben ser siempre consistentes (por ejemplo, si se realiza un pago con una tarjeta electrónica, la cantidad de dinero de la cuenta sobre la que realiza el cargo debe disminuir en la misma cantidad que la cuenta que recibe el pago, de no ser así, ninguna de las dos cuentas se modificará), si durante el transcurso de una transacción ocurriese algún error, el TPS debe poder deshacer las operaciones realizadas hasta ese instante. Si bien este tipo de integridad es que debe presentar cualquier operación de procesamiento de transacciones por lotes, es particularmente importante para el procesamiento de transacciones online: si, por ejemplo, un sistema de reserva de billetes de una línea aérea es utilizado simultáneamente por varios operadores, tras encontrar un asiento vacío, los datos sobre la reserva de dicho asiento deben ser bloqueados hasta que la reserva se realice, de no ser así, otro operador podría tener la impresión de que dicho asiento está libre cuando en realidad está siendo reservado en ese mismo instante. Sin las debidas precauciones, en una transacción podría ocurrir una reserva doble. Otra función de los monitores de transacciones es la detección y resolución de interbloqueos (deadlock), y cortar transacciones para recuperar el sistema en caso de fallos masivos.

Como respuesta a todo ello. sobre todo las estructuras jerárquicas tradicionales. además de que se está erradicando las barreras entre divisiones empresariales. ya que la distancia ya no es un obstáculo para vender en un mercado global. Existen barreras que se están superando con esta nueva modalidad de hacer comercio.Conceptos Básicos ¿Qué es el Comercio Electrónico? Según las definiciones que se dan con respecto al comercio electrónico. Gracias al comercio electrónico se hace posible y se puede soportar los cambios que estamos viendo en estos últimos tiempos los cuales se están dando a escala global. éste es cualquier tipo de transacción comercial en la que ambas partes participan de forma electrónica. . logrando que las empresas sean más eficientes en sus servicios. El comercio electrónico es un medio que se ha caracterizado por un aumento en la capacidad de los suministradores. La venta electrónica es una modalidad de Comercio Electrónico en la que un proveedor suministra los bienes o servicios que éste ofrece a un cliente a cambio de un pago. el comercio a nivel mundial está cambiando gracias a esta influencia. ya que en la práctica se ve. también se permite que éstas puedan entablar un contacto más estrecho con sus proveedores. y tengan mayor flexibilidad en sus funciones internas. Pero no se dice con esto lo que esencialmente queremos decir acerca del tema. de la competitividad global y de las expectativas de los consumidores. como si la necesidad de cambio y el avance de la tecnología se juntaran para realizar un gran cambio en la modalidad de hacer negocios. sin importar la localización geográfica. en lugar de realizar un intercambio o contacto directo.

Podemos citar como ejemplo a un cliente particular que realiza una compra ordinaria realizando el pago por vía electrónica también en lugar de una empresa. se ha establecido una nueva era. tomando y combinando las cualidades de carácter abierto que tiene Internet con una interfaz de usuario sencilla . siendo el medio de comunicación más conveniente entra ambas partes. Se cometería un error si es que las empresas subestimaran esta nueva forma de negociar. ¿Cómo nació el Comercio Electrónico? La historia del comercio electrónico comenzó hace más de dos décadas por parte de las empresas con la introducción del Intercambio Electrónico de Datos (EDI). es sólo un caso particular del caso más general de cualquier forma de operación o transacción comercial. el que se dio entre firmas comerciales. En lo que respecta a la parte de Cliente-Servidor. pues cada vez que se hace uso de una de estas modalidades se está realizando una transacción de comercio electrónico. que está orientado al consumidor no tiene pocos años por que tenemos conocimiento de lo que es un cajero automático o una tarjeta de crédito. Debemos tomar en cuenta que a pesar de que este caso especial tiene una considerable importancia económica. etc). viéndola como una de las tantas formas de hacer un negocio. pero estos trabajan en un sistema cerrado y es por eso que se ajustan estrictamente a las medidas de la transacción. con el envío y recibo de pedidos. El avance de la tecnología se está expresando en cambios que se están dando en el comercio. De igual modo el comercio electrónico. información de reparto y pago. pues éste ha creado toda una revolución en el mercado. la cual se lleva a cabo a través de medios electrónicos. EDI Y ATM (Modo de Transferencia Asíncrono). por intermedio de la World Wide Web.

Pero ¿qué queremos decir con Mercado Electrónico? Estos se refieren por norma a ventas y subastas online. y el Mercado Electrónico es uno de ellos. pero no fue tan fácil el ingreso a Internet por que demoró dos años a Mosaic en hacer su ingreso y otros dos años más antes de que las empresas y en general el público de que se dieran cuenta de su potencial. intermediarios y consumidores interactúan de alguna forma electrónica o por intermedio de un contacto digital. con Mosaic. en donde los productores. y fue en el Laboratorio de Física de Partículas CERN en Ginebra en 1991. subasta online de ordenadores y otros artículos. podemos poner de ejemplo mercados de comercio de stocks online. Aquí les damos algunos recursos Web relacionados: • • • • • History of Computing en los Alamos National Lab Hobbes´s Internet Timeline Little History of the Wordl Wide Web World Wide Web CERN El Mercado Electrónico Hay conceptos que se deben conocer para estar más familiarizados con el tema. El mercado electrónico está referido al mercado económico que se encuentra en crecimiento.La WWW tiene varios años de haber sido creada. . Los mercados físicos son representados de forma virtual en el mercado electrónico y la economía digital se encuentra representada por medio de las actividades económicas a cargo de este mercado electrónico. quien fue predecesor de Netscape.

si queremos definir con mayor amplitud al Comercio Electrónico. Es decir aunque no nos hayamos dado cuenta. por ejemplo. tiendas o galerías y consumidores). al menos uno de estos componentes es electrónico. Por ello. lo involucraremos muy estrechamente al mercado electrónico. . • Productos (artículos. El comercio electrónico nos hace pensar inmediatamente en los mercados físicos que nosotros conocemos. proveedores. pago y distribución. bienes y servicios) • Proceso (abastecimiento. Pero si por algún motivo su negocio o consumo se desarrolla por medio de un proceso digital. virtual u online. al igual que en los mercados físicos. siguen realizándose de manera convencional. Por ejemplo un participante digital es alguien que posee una dirección de correo electrónico o una página Web. ya que se dan muchos aspectos que son típicos de éstos. intermediarios. Los vendedores puramente “físicos” pueden estar vendiendo un producto digital. etc.) • Si queremos ver la diferencia que existe es que en el mercado electrónico. entre los componentes de los mercados de la economía digital se encuentran incluidos: Participantes (agentes del mercado como empresas. producción. (escoja el término que prefiera). mientras que la producción. Alguien que venda productos físicos en una tienda física pueden ofrecer información sobre los productos online (permitiendo a los consumidores “buscar online”). digital. distribución.Entonces. se pone énfasis sobre el núcleo del mercado electrónico donde toda acción se hace online. un CD-ROM digital. pedido. competición. casi todos nosotros ya somos partícipes del mercado electrónico. usted está formando parte del mercado digital. En la actualidad. marketing. consumo.

¿Y cómo puede ser respetada y soportada la diversidad ligüística y cultural de una comunidad de usuarios global? Estos son algunos de los temas que forman parte de la banda abierta de la globalización. como si se hiciera con alguien que este en la calle del frente. y hacer de estos negocios algo tan simple. ¿Cómo puede una empresa conocer y comprender las tradiciones y reglas de negocio de algunos países tan remotos. pero como podremos apreciar no es suficiente sólo la comunicación. existen cosas que son importantes y que debemos tener en cuenta. aunque necesaria. particularmente cuando estas reglas no suelen ser escritas?.Globalización: Las redes globales nos dan la oportunidad de establecer negocios con empresas que se encuentran en otro lado del mundo. . que hará del comercio electrónico global una realidad práctica. entre ellas ¿Cómo pueden dos empresas de diferentes continentes saber de su existencia mutua y de los productos o servicios que necesitan u ofrecen?.

sin otra transacción que se ejecute concurrentemente) conserva la consistencia de la base de datos Aislamiento: Aunque se ejecuten varias transacciones concurrentemente. incluso si hay fallos en el sistema.¿Qué es una transacción? Una Transacción es una unidad de la ejecución de un programa que accede y. los cambios realizados en la base de datos permanecen. el sistema garantiza cada transacción ignora al resto de transacciones (para cada Ti el resto de Tj no ha comenzado o ya ha acabado) Durabilidad: Tras la finalización con éxito de una transacción. en la base de datos. posiblemente. . Consistencia: La ejecución aislada de la transacción (Es decir. todas las operaciones de la transacción o no se realiza ninguna de ellas. actualiza varios elementos de datos Una Transacción está delimitada por instrucciones de inicio transacción y fin transacción (la transacción consiste en todas las operaciones que se ejecutan entre inicio transacción y fin transacción) PROPIEDADES ACID Propiedades de las transacciones que debe mantener el sistema de base de datos para garantizar la integridad de los datos: Atomicidad: O se realizan adecuadamente.

B := B + 50.EJEMPLOS DE PROPIEDADES ACID Sistema Bancario simplificado: .50. leer(B).) Ti: leer(A). . escribir(A). Valores reflejados en la Base de Datos: El valor de A es 950€ y el valor de B es 2000€ El estado del sistema deja de reflejar el estado real del mundo que se supone que modela en estado inconsistente . fallos de hardware. etc. errores software.Acceso a través de dos operaciones: leer(X) y escribir(x) (transfiere el dato X desde la Base de Datos/memoria intermedia local de la transacción a una memoria intermedia local de la transacción/Base de Datos Ejemplo P-ACID: Atomicidad -Antes de ejecutar Ti: El valor de A es 1000€ y el valor de B es 2000€ -Durante la ejecución de Ti: Se produce un fallo que impide que la transacción finalice con éxito (fallos de alimentación.Base de datos residente en disco pero con una porción de la misma en memoria principal. A := A . .Constituido por varias cuentas y un conjunto de transacciones que acceden y actualizan dichas cuentas. escribir(B).

La responsabilidad de asegurar la consistencia es del programador que codifica la transacción (la comprobación de las restricciones de integridad puede ayudar) Ejemplo P-ACID: Aislamiento Incluso tras asegurar las propiedades de atomicidad y consistencia para cada transacción pueden ocurrir problemas si varias transacciones concurrentes entrelazaran sus operaciones de modo no deseado (produciendo un estado inconsistente) una segunda transacción que modifique A y/o B (a porcentaje) La Base de Datos puede quedar en un estado inconsistente aunque las dos transacciones terminen. . La responsabilidad de asegurar las atomicidades del sistema de base de datos (en concreto del componente de gestión de transacciones) Ejemplo P-ACID: Consistencia El requisito de consistencia es que la suma de A y B no se vea alterada al ejecutar la transacción. tiene que seguir siéndolo después de ejecutar dicha transacción.Estado Inconsistente: Hay que asegurarse que las inconsistencias no sean visibles en un sistema de base de datos. Los estados inconsistentes sólo deben aparecen durante la ejecución de la transacciones. Si una base de datos es consistente antes de ejecutar una transacción. Un sistema puede alcanzar en algún momento un estado inconsistente (incluso si Ti se ejecuta completamente existe un momento en que la base de datos está en estado inconsistente.

Concurrencia Una solución al problema de la concurrencia de transacciones es la ejecución secuencial de estas (pero a costa de rendimiento) La responsabilidad de asegurar el aislamiento es del sistema de base de datos (en concreto del componente de control de concurrencias) Ejemplo P-ACID: Durabilidad Una vez que se completa con éxito la ejecución de una transacción no puede suceder que un fallo del sistema produzca la pérdida de datos. La responsabilidad de asegurar las durabilidades del sistema de base de datos (en concreto del componente de gestión de recuperaciones) Responsabilidades La responsabilidad de asegurar las atomicidades del sistema de base de datos (componente de gestión de transacciones) La responsabilidad de asegurar la consistencia es del programador que codifica la transacción La responsabilidad de asegurar el aislamiento es del sistema de base de datos (componente de control de concurrencias) La responsabilidad de asegurar la durabilidad es del sistema de base de datos (componente de gestión de recuperaciones) . Las modificaciones realizadas por la transacción se guardan en disco antes de finalizar la transacción. La información guardada en disco de las modificaciones realizadas por transacción es suficiente para reconstruir dichas modificaciones.

las transacciones abortadas no deben tener efecto sobre el estado de la base de datos así se realice cualquier tipo de cambio y luego la transacción abortada debe deshacerse. todas las transacciones se completan con éxito. En ausencia de fallos. Para asegurar la atomicidad. Transacción Compensadora Una vez que una transacción se ha comprometido no se pueden deshacer sus efectos abortándola sólo se pueden invertir sus efectos mediante una transacción compensadora. No siempre se puede crear una transacción compensadora asociada a cada transacción a realizar queda a responsabilidad del usuario .Estados de las Transacciones Transacción Comprometida Una transacción que termina su ejecución con éxito se dice que está comprometida. Una transacción comprometida que haya hecho modificaciones transforma la base de datos llevándola a un nueva estado consistente. que permanece incluso si hay fallo en el sistema. Una vez deshechos los cambios de una transacción abortada se dice que la transacción se ha retrocedido. Transacción Abortada Una transacción que no termina su ejecución con éxito se dice que está abortada.

Abortada: la transacción pasa a este estado después de haber restablecido la base de datos a su estado anterior . Es por eso q el procesamiento por lotes no es un procesamiento de transacciones. y las tareas largas se pueden comenzar y dejar que se ejecuten sin prestarles atención.Parcialmente Comprometida: la transacción pasa a este estado cuando acaba de realizar la última instrucción . El procesamiento por lotes implica procesar varias transacciones al mismo tiempo. Los archivos de procesamiento por lote pueden automatizar instrucciones largas o repetitivas. y no se dispone inmediatamente de los resultados del resto de transacciones cuando comienza cada una de ellas para un mejor funcionamiento de un sistema. . La posibilidad de cometer errores en la digitación de un mandato se reduce. Cuando se teclea solo el nombre de un archivo de procesamiento por lote.Fallida: la transacción pasa a este estado tras descubrir que no puede continuar la ejecución normal .Modelo de Transacción Una transacción debe estar en uno de los siguientes estados: . Diferencias con el procesamiento por lotes: Como se sabe un archivo de procesamiento por lote proporciona una forma abreviada de ejecutar uno o varios mandatos del MSDOS.Activa (estado inicial): la transacción permanece en este estado durante su ejecución . el archivo ejecuta cada línea como si se la estuvieran introduciendo desde el teclado. La escritura de esta clase de archivos se puede concebir como una forma de programar MS-DOS.Comprometida: la transacción pasa a este estado tras completarse con éxito.

es decir. . no debemos quitarlo de la cuenta de origen. se borran todas las modificaciones de los datos. SQL Server funciona por defecto con Transacciones de confirmación automática. es decir.Transacciones en SQL Concepto de transacción Una transacción es un conjunto de operaciones Transact SQL que se ejecutan como un único bloque. El ejemplo clásico de transacción es una transferencia bancaria. en la que quitamos saldo a una cuenta y lo añadimos en otra. Transacciones implícitas y explicitas Para agrupar varias sentencias Transact SQL en una única transacción. Si no somos capaces de abonar el dinero en la cuenta de destino. disponemos de los siguientes métodos: • Transacciones explícitas Cada transacción se inicia explícitamente con la instrucción BEGIN TRANSACTION y se termina explícitamente con una instrucción COMMIT o ROLLBACK. cada instrucción individual es una transacción y se confirma automáticamente. pero cada transacción se completa explícitamente con una instrucción COMMIT o ROLLBACK. • Transacciones implícitas Se inicia automáticamente una nueva transacción cuando se ejecuta una instrucción que realiza modificaciones en los datos. todas las modificaciones de los datos realizadas durante la transacción se confirman y se convierten en una parte permanente de la base de datos. Si una transacción tiene éxito. Si una transacción encuentra errores y debe cancelarse o revertirse. si falla una operación Transact SQL fallan todas.

Con este sistema.Caso Siemens Siemens presentó el primer sistema de identificación para transacciones financieras a través de la huella digital que dotará de "mayor seguridad" a este tipo de operaciones. según subrayó hoy Enrique Torres. ya que diversos estudios ponen de manifiesto que la sensación de inseguridad entre los usuarios hace que sean reacios a operar de manera 'online'. quien destacó que el sistema está aún en una fase inicial. según explicó Torres. por lo que muy pronto también se podrá utilizar a través de móvil o PDAs. Gabriel Tarazona. que interpretan una señal óptica encriptada enviada sobre la pantalla del PC por la entidad financiera. el cliente sólo necesita adquirir la tarjeta 'Internet ID-Card'. sin requerir ningún contacto físico. director de Siemens IT Solutions and Services. El director de desarrollo corporativo de Siemens IT Solutions and Services. ya que ésta interactúa sobre la pantalla de cualquier dispositivo conectado a Internet o cajero automático. De momento no se ha fijado un precio para la tarjeta porque depende de la entidad financiera que la comercialice. sin que deba adquirir ningún otro mecanismo. El sistema utiliza una tarjeta del tamaño de una tarjeta bancaria normal pero de mayor grosor. que incorpora una pequeña pantalla LCD y una serie de sensores ópticos en su reverso. Esta información codificada contiene detalles concretos de la operación bancaria que el cliente ha solicitado realizar. destacó que el objetivo del lanzamiento es garantizar la seguridad de los clientes en sus operaciones por Internet. .

ENTIDADES INTERESADAS. BENEFICIOS DE UTILIZAR EL SISTEMA DE SIEMENS • Garantiza la seguridad del cliente y posibles usos fraudulentos o robos. o dedo del pánico en caso de robo. aunque no especificó el nombre de ninguna "por motivos de confidencialidad". también adelantó que Siemens se ha puesto en contacto con algunas entidades para desarrollar este modelo y que han mostrado un gran interés. Garantizar la seguridad de los clientes en sus operaciones por Internet • • . La compañía ya ha realizado pruebas pilotos en algunos países como Alemania o Suiza con entidades financieras y señaló que aunque. abre un "abanico de posibilidades" que en el futuro se podrán desarrollar. pero que permite a la entidad reconocer esa situación por lo que la operación no se efectúa. Para garantizar la seguridad del cliente y posibles usos fraudulentos o robos. En este sentido. un sistema por el que el cliente podrá operar en caso de atraco. La tarjeta solo funciona con una determinada temperatura del dedo y cuenta con el denominado panic finger. está enfocado a este segmento. de momento. la tarjeta sólo funciona con una determinada temperatura del dedo y cuenta con el denominado 'panic finger'.