Gestion de base de datos

9
FACULTAD DE ADMINISTRACIÓN LIC. EN SISTEMAS COMPUTACIONES ADMINISTRATIVOS CATEDRÁTICO: TORRES GASTELU CARLOS ARTURO EE: BASE DE DATOS INVESTIGACIÓN DE GESTIÓN DE TRANSACCIONES Y APLICACIÓN A LA PYME. EQUIPO 3: SALAZAR CHÁVEZ HERMILO S09007622 UNIVERSIDAD VERACRUZANA

Transcript of Gestion de base de datos

Page 1: Gestion de base de datos

FACULTAD DE ADMINISTRACIÓN

LIC. EN SISTEMAS COMPUTACIONES ADMINISTRATIVOS

CATEDRÁTICO: TORRES GASTELU CARLOS ARTURO

EE: BASE DE DATOS

INVESTIGACIÓN DE GESTIÓN DE TRANSACCIONES Y APLICACIÓN A LA PYME.

EQUIPO 3:

SALAZAR CHÁVEZ HERMILO S09007622

CORTES SOBERANES JUAN M. SO9007694

UNIVERSIDAD VERACRUZANA

Page 2: Gestion de base de datos

Las nuevas tecnologías han avanzado en los últimos años. Las metodologías de desarrollo así como las plataformas y frameworks permiten hoy desarrollar software de porte empresarial con tecnologías que antes se utilizaban solamente para sistemas pequeños y medianos. Sin embargo, esta adaptación de las nuevas tecnologías a este tipo de sistemas no es exitosa si no considera el contexto en donde será utilizado.

Los nuevos sistemas informáticos de porte empresarial deberán interoperar con los sistemas legados en la empresa, así como interactuar con otros sistemas desarrollados en otras plataformas y mediante otras tecnologías.

Uno de los principales retos que enfrentan las empresas al desarrollar nuevo software que interopere con otras aplicaciones existentes es la integración y consistencia de los datos. En muchas empresas se cuenta con fuentes de datos altamente heterogéneas, incluso con redundancia de información en muchos casos.

Desafortunadamente otras aplicaciones corren sobre esas fuentes de datos, lo que implica que nuevas aplicaciones no pueden alterar la estructura de la información debido a que dejaría sin funcionamiento a otras aplicaciones legadas. La manipulación de fuentes de datos heterogéneas es un problema.

INTRODUCCIÓN

Page 3: Gestion de base de datos

Una transacción es una unidad lógica de trabajo que tiene ciertas propiedades conocidas como propiedades ACID: atomicidad, coherencia, aislamiento y permanencia.

Es responsabilidad del sistema gestor de bases de datos el asegurar que se cumplan estas propiedades. Sin embargo, el programador dispone de un cierto grado de control sobre la forma en que SQL Server gestiona algunas de estas propiedades.

Existen tres formas de llevar a cabo este procesamiento: auto confirmación, explícita e implícita (que no voy a abordar en este post pero que os animo a comentar si lo creéis interesante).

Atomicidad. O todas las operaciones de la transacción se reflejan correctamente en la base de datos, o ninguna.

Consistencia. La ejecución aislada de una transacción preserva la consistencia (coherencia) de los datos.

Aislamiento. Aunque varias transacciones se pueden ejecutar concurrentemente, cada transacción debe ignorar a las otras transacciones que se ejecutan

Durabilidad. Tras la finalización con éxito de una transacción permanecen los cambios realizados en la base de datos, incluso si hay fallos en el sistema.

Activa, el estado inicial; la transacción permanece en este estado mientras se está ejecutando.

Parcialmente comprometida, después de ejecutarse la última instrucción. Fallida, después de descubrir que la ejecución normal ya no puede llevarse

a cabo. Abortada, después del retroceso de la transacción y haber restaurado la

base de datos su estado anterior al inicio de la transacción. Dos opciones después de que haya abortado:

– reiniciar la transacción

– cancelar la transacción

GESTIÓN DE TRANSACCIONES

ESTADOS DE UNA TRANSACCIÓN

PROPIEDADES

Page 4: Gestion de base de datos

Los bloqueos se pueden definir formalmente como sigue: "Un conjunto de procesos se bloquean si cada proceso del conjunto esta esperando un evento que solo otro proceso del conjunto puede provocar". Puesto que todos los procesos están en espera, ninguno de ellos podrá ocasionar nunca ninguno de los eventos que podrían desbloquear a algunos de los otros miembros del conjunto.

El control de concurrencia trata sobre los problemas de aislamiento y consistencia del procesamiento de transacciones. El control de concurrencia distribuido en sistema de manejo de bases de datos distribuidas asegura que la consistencia de la base de datos se mantiene, en un ambiente distribuido multiusuario. Si las transacciones son internamente consistentes, la manera más simple de lograr este objetivo es ejecutar cada transacción sola, una después de otra. Sin embargo esto puede afectar enormemente el desempeño de un sistema de manejo de bases de datos distribuidas dado que el nivel de concurrencia se reduce al mínimo.

El nivel de concurrencia, el número de transacciones activas, es probablemente el parámetro más importante en sistemas distribuidos. Los mecanismos de control de concurrencia buscan encontrar un balance entre el mantenimiento de la consistencia de la base de datos y el mantenimiento de un alto nivel de concurrencia. El fallo en diseño de mecanismos apropiados de sincronización y en obligar su uso por cada proceso que utiliza recursos comunes, produce frecuentemente un comportamiento erróneo del sistema y rupturas que son notablemente difícil de depurar. La concurrencia puede producir un incremento de la productividad cuando se implementan correctamente, pero puede también degradar la fiabilidad cuando la sincronización impropia entre procesos contamina el sistema con errores artificios de tiempo.

Si no se lleva a cabo un adecuado control de concurrencia, se podrían llegar a presentar dos anomalías. En primer lugar, se pueden perder actualizaciones provocando que los efectos de algunas transacciones no se reflejen en la base de datos. En segundo lugar, pueden presentarse recuperaciones de información inconsistentes.

BLOQUEOS

Page 5: Gestion de base de datos

Área de trabajo privada:

Consiste en realizar copias de los bloques que serán utilizados dentro de una transacción de manera que se trabaje con estas copias para realizar todas las modificaciones necesarias. Todo el espacio de trabajo con la información que será utilizada es contenida dentro de estas copias denominado área de trabajo privada. Los demás usuarios trabajaran con la copia original de los bloques pero no podrán obtener una segunda copia de los mismos.

Al iniciarse la transacción el proceso obtiene una copia privada de los datos. Lecturas y escrituras sobre la zona privada. Para optimizar solo se crean copias privadas de los datos modificados. Una segunda optimización para los datos que están organizados en bloques apuntados desde un índice, como los ficheros, es crear copias solo de los fragmentos modificados.

Bitácora de escritura anticipada:

Este método consiste en realizar una copia con todas las transacciones que van siendo ejecutadas hacia un bloque o espacio (LOG) de trabajo que sea estable, esta lista se la conoce como lista de intenciones. Las transacciones serán actualizadas con la información una vez que se ha determinado el fin de la transacción.

Se modifican los datos pero antes se escribe en un log sobre memoria estable la descripción de la operación. En el log también se escriben registros para indicar el inicio y fin de la transacción, cuando se aborta la transacción se recorre el log para deshacer los cambios. Después de una caída temporal, se debe recorrer el log.

En primer lugar La Distribuidora de cosméticos YULY’S deberá contar con un catálogo de todos los artículos disponibles que puedan ajustarse a las necesidades de los clientes.

Clasificar en el catálogo los artículos dependiendo su características: tipo, fabricante, contenido, precio o por nombre. Aplicando el catálogo es mucho más fácil tanto para la empresa como para los clientes interesados el poder encontrar un artículo que cumpla con sus requerimientos.

TÉCNICAS DE IMPLANTACIÓN DE TRANSACCIONES

APLICACIÓN DE LA GESTIÓN DE TRANSACCIÓN A LA PYME

Page 6: Gestion de base de datos

TRANSACCIÓN COMERCIAL – VENTA

El cliente cumple la acción de pagar y el vendedor cumple la acción de entregar. Ambos procesos deben ser correctos. Por un lado, el cliente mediante la acción pagar, el dinero debe cumplir ciertas reglas. Por ejemplo, que la cantidad sea la correcta, que el dinero resulte legítimo, que el pago se efectúe de forma presencial, etc. Por otro lado, YULY’S mediante la acción entregar, debe también cumplir ciertos requisitos, como por ejemplo, entrega de la mercadería en tiempo y forma, el producto debe presentarse de una manera especial, debe estar intacto, etc. Ahora bien, para que la transacción se cumpla de forma satisfactoria, ambas reglas de juego para cada acción, deben ejecutarse de forma correcta y libre de errores o ambigüedades.

Si se producen fallos, que se puedan dar por defectos de reglas, anomalías diversas, errores de sistemas o por malicia. Sea cual fuere el motivo, ante una situación de insatisfacción de la transacción, la operación debe abortarse cuanto antes.

TRANSFERENCIA BANCARIA

En el caso de transferencia bancaria de dinero o valores, se produce un proceso de doble comprobación de saldo. Por un lado, se registra el dinero que pasa de una entidad a otra y, por el otro lado, se registra el movimiento. Esta doble verificación permite determinar si ambos procesos fueron satisfactorios.

Poor ultimo la distribuidora de cosméticos YULY’S cuentas con 3 computadoras en el caso que un 2 clientes pidan el mismo producto pero que solo exista 1 en el almacén este será vendido al primer cliente mientras que el segundo solo sabrá que el artículo se agoto.

PRODUCTO

ENTREGAR

DINERO

PAGARCLIENTE YULY’S