Control de Concurrencia. Control de Concurrencia. Operaciones Conflictivas. AIslamiento (+ Consistencia) Control de Concurrencia

Tamaño: px
Comenzar la demostración a partir de la página:

Download "Control de Concurrencia. Control de Concurrencia. Operaciones Conflictivas. AIslamiento (+ Consistencia) Control de Concurrencia"

Transcripción

1 Control de Concurrencia Objetivo Forzar el aislamiento de transacciones conflictivas mediante la exclusión mutua. Preservar la consistencia de la BD mediante la ejecución adecuada de las transacciones. Resolver los conflictos de escritura simultánea y de lecto-escritura simultáneas. Control de Concurrencia AIslamiento (+ Consistencia) Control de Concurrencia Base de Datos compuesta por ítems de datos Transacción read/write de ítems de datos de la BD Operaciones Conflictivas Plan de ejecución (schedule): desarrollo en el tiempo de la ejecución de transacciones concurrentes ejecución intercalada de sentencias de las transacciones. Un schedule mantiene el orden de las operaciones dentro de cada transacción. Dos operaciones de un plan de ejecución son conflictivas si satisfacen las siguientes condiciones: (1) Pertenecen a diferentes transacciones (2) Intentan acceder al mismo ítem (3) Una o las dos operaciones intentan escribir sobre el ítem 1

2 Operaciones Conflictivas Dos transacciones que acceden al mismo ítem intercaladas de manera que producen un resultado incorrecto. X Y 40 X X - N; X X + M; Y Y + N; X=40 Y=85 N=2 M=3 X fue sobreescrito!! Los valores correctos debieron ser:, X=41, Y=87 o bien, X=41, Y=87 Problemas típicos de la concurrencia Actualización perdida (Lost Update Problem) Análisis (sumario) Inconsistente o Lectura no Repetible (Unrepeatable Read Problem) Lectura Sucia o Fantasma (Dirty Read Problem) Actualización Perdida X X 2*Y commit X Y; commit X = Y = Trans-1, Trans-2 X=5 Trans-2, Trans-1 X= -5 No necesariamente las diferentes ejecuciones seriales arrojan el mismo resultado!! 2

3 A=4 X=4 Y=8 N=2 Análisis Inconsistente : X X - N; Y Y + N; : Suma 0; read_item(a); Suma suma + A; suma sum + X; suma suma + Y; El análisis inconsistente ocurre por utilizar registros en distinto estado de actualización!! utiliza X actualizado e Y sin actualizar suma Lectura Sucia o Fantasma : X X - N; : N=2 Falla!! X X- N; 0 0 Al fallar, el valor X=2 virtualmente nunca existió!! leyó un valor fantasma Plan de Ejecución de Transacciones Serializabilidad de Transacciones el resultado de la ejecución concurrente de dos o más transacciones debe ser igual al que se hubiese obtenido de una ejecución serial (no concurrente) Si hay N transacciones ejecutándose concurrentemente N! ejecuciones seriales posibles 3

4 Serializabilidad Idea: cuáles operaciones pueden intercambiarse en un plan de ejecución? Las siguientes NO, pues el resultado cambia!!: Acciones de la misma transacción Acciones en diferentes transacciones sobre el mismo ítem, cuando al menos una de las acciones es write Serializabilidad de los Planes de Ejecución Serial Un plan es serial si para cada transacción participante, todas las operaciones se realizan consecutivamente en el plan (no hay intercalado de sentencias). Serializable Un plan es serializable si es equivalente a cualquier plan serial de las mismas transacciones. Conflictos Planes conflicto-equivalentes: Tienen el mismo conjunto de acciones, y Cada par de acciones conflictivas están ordenadas de la misma forma Un plan es conflicto-serializable si es conflicto-equivalente a un plan serial 4

5 Bloqueos (locks) Cerrojo que crea una zona de exclusión en determinados ítems de datos. El tamaño del bloqueo define la granularidad: fina (nivel de datos) gruesa (BD) Cerrojo: variable asociada a cada ítem de dato Describe el estado de un ítem con respecto a las operaciones que pueden realizarse sobre él Cerrojo binario: Locked/Unlocked Cerrojo multimodo: ReadLock / WriteLock / Unlocked Tres operaciones read_lock(x) write_lock(x) unlock(x) Cada ítem de dato puede estar en cualquiera de los tres estados. Bloqueos (locks) Granularidad Afecta significativamente el nivel de concurrencia Afecta significativamente el desempeño del control de concurrencia Ejemplos de granularidad de ítems: Un campo de un registro de una BD. Un registro de la BD. Un bloque de disco. Un archivo completo. Toda la BD. Los locks se almacenan en una tabla del sistema. Pueden promover (upgrade lock): ReadLock WriteLock Pueden ser degradados (downgrade lock): WriteLock ReadLock Granularidad 5

6 Bloqueos (locks) Los bloqueos sobre ítems de datos pueden combinarse limitadamente S-locks (compartidos/shared) para lecturas: slock(x) ( ReadLock(x)) X-locks (exclusivos) para escrituras: xlock(x) ( WriteLock(x)) bloqueo solicitado Bloqueo en el ítem - S X - Ok Ok Ok S Ok Ok --- X Ok Compatibilidad de bloqueos Control de Concurrencia: Estrategias Los DBMSs no verifican la serializabilidad Muy ineficiente o impracticable!! (estrategia reparadora) Las transacciones arriban continuamente Se requieren innumerables undo Debería ir probando todas las combinaciones Solución: protocolos (estrategia preventiva) Se puede garantizar la serializabilidad de los planes de ejecución si cada transacción sigue el protocolo y éste es forzado por el procesador de transacciones. Grafos de Precedencia : : X:= X - N; Y:=Y + N; X:= X + M; : : X:= X - N; X:= X + M; Y:=Y + N; : : X:= X + M; X:= X - N; Y:=Y + N; : : X X - N; Y Y- P X X + M; Y Y + N; 6

7 Grafo de Serializabilidad Un nodo para cada transacción T i Un arco de T i a T j si hay una operación de T i que precede y entra en conflicto con una de T j Teorema: Un plan de ejecución es serializable por conflictos si y sólo si su grafo de serializabilidad es acíclico. Locks no evitan todos los problemas read_lock(y); unlock(y); Desbloquea demasiado pronto!! write_lock(x); X X+Y; unlock(x); Ejecutadas según un plan concurrente, con cerrojos read_lock(x); unlock(x); write_lock(y); Y X+Y; unlock(y); Resultado: X=50, Y=50 ciclo en el grafo No-serializable! Y X Protocolo de Bloqueo en 2 Fases (P2F) Se dice que una transacción sigue el protocolo de dos fases si TODOS los bloqueos (fase de crecimiento) preceden al primer desbloqueo (fase de decrecimiento) 7

8 Protocolo de Bloqueo en 2 Fases (P2F) Básico: cuando una transacción devuelve un ítem, ya no puede bloquear ningún otro Cantidad de bloqueos Punto de bloqueo bloquea desbloquea BEGIN Fase 1 crecimiento Fase 2 decrecimiento END duración de la transacción Ejemplo: Dos transacciones read_lock(y); unlock(y); write_lock(x); X X+Y; unlock(x); read_lock(x); unlock(x); write_lock(y); Y X+Y; unlock(y); Ejecutadas según un plan serial S1:, Valores iniciales X=20, Y=30 Resultado: X=50, Y=80 Ejemplo: Dos transacciones según el P2F read_lock(y); write_lock(x); unlock(y); X X+Y; unlock(x); read_lock(x); write_lock(y); unlock(x); Y X+Y; unlock(y); y siguen el P2F Cualquier plan de ejecución de y será serializable La concurrencia es limitada por la necesidad de arbitrar requerimientos de ambas transacciones 8

9 Variaciones del P2F P2F Conservativo : Bloquea TODOS los ítems que necesita ANTES de comenzar la ejecución, predeclarando su conjunto de ítems de lectura y escritura Si uno o más ítems están siendo bloqueados por otra transacción, la transacción que lo requiere ESPERA No se produce Deadlock, pero es muy restrictivo P2F Estricto: Una transacción no desbloquea sus ítems de escritura (WriteLocks) hasta que alcanza el commit o bien aborta No está libre de deadlocks pero garantiza la recuperabilidad del plan (Plan estricto: una transacción no puede leer/escribir X hasta que la última transacción que haya usado X haya llegado al commit o abortado) Es la versión más popular Protocolo de Bloqueo en 2 Fases (P2F) Estricto bloquea Cantidad de bloqueos desbloqueo BEGIN Período de uso del ítem END duración de la transacción Protocolo de Bloqueo en 2 Fases (P2F) Componentes Esenciales Lock Manager: Administra los bloqueos sobre los ítems de datos. Lock table: La utiliza el Lock Manager para almacenar los siguientes datos: o La Base de Datos requiere que todas las transacciones estén bien formadas Debe bloquear los ítems de datos, antes de leerlos o escribirlos. No bloquea un ítem sobre el que ya tiene un bloqueo ni intenta desbloquear un ítem libre. 9

10 Operaciones de Bloqueo Componentes básicos del bloqueo binario: LOCK obtenido no Repetir If LOCK (X) = 0 (*el ítem está desbloqueado*) Then LOCK (X) 1 (*bloquearlo*) obtenido si Else Begin esperar (hasta que LOCK (X) = 0 y el Lock Manager active la transacción) Hasta obtenido = si End; Operaciones de Bloqueo Componentes básicos del bloqueo binario: UNLOCK LOCK (X) 0 (*desbloquea el ítem*) If existe alguna transacción esperando por X Then activar una y adjudicarle el ítem; Operaciones de Bloqueo Componentes básicos del bloqueo multimodo: READLOCK obtenido no Repetir If LOCK (X) = unlocked Then Begin LOCK (X) read-locked #reads (X) 1 obtenido si; End Else If LOCK (X) read-locked Then #reads (X) #reads (X) +1 obtenido si Else Begin esperar (hasta que LOCK (X) = unlocked y el Lock Manager active la transacción) End Hasta obtenido = si End; 10

11 Operaciones de Bloqueo Componentes básicos del bloqueo multimodo: WRITELOCK obtenido no Repetir If LOCK (X) = unlocked Then Begin LOCK (X) Write-locked ; #writes (X) 1; obtenido si; End Else Begin esperar (hasta que LOCK (X) = unlocked y el Lock Manager active la transacción) Hasta obtenido = si End; Operaciones de Bloqueo Componentes básicos del bloqueo multimodo: UNLOCK If LOCK (X) = write-locked Then Begin LOCK (X) unlocked ; activar una de las transacciones que esperan si hay alguna End Else If LOCK (X) read-locked Then Begin #reads (X) #reads (X) -1 If #reads (X) = 0 Then Begin LOCK (X) = unlocked ; Activar alguna transacción en espera si la hay End End; Abrazo Mortal (deadlock) Dos o más transacciones esperan indefinidamente que otra devuelva un ítem de dato. read_lock(y); write_lock(x); no puede espera!! read_lock(x); write_lock(y); no puede espera!! 11

12 Abrazo Mortal (deadlock) e Inanición (livelock) Para prevenir deadlocks P2F conservativo Timestamping las transacciones más jóvenes son abortadas Detección de deadlocks Grafo espera-por Selección de una víctima Recomienzo cíclico Livelock: una transacción no puede obtener los recursos que necesita por un período de tiempo indefinido, mientras las otras avanzan normalmente Estrategia first-come-first-served Equivalencia y Serializabilidad por Vistas Equivalencia: Para cada ítem X, si T i lee el valor inicial de X en P 1, T i debe leer también el valor inicial de X en P 2. Para cada lectura de X por T i en P 1, si el valor leído por T i es escrito por T j, T i debe también leer el valor de X producido por T j en P 2. Para cada ítem X, si la última escritura de X fue ejecutada por T i en P 1, la misma transacción debe escribir el valor final de X en P 2. Equivalencia y Serializabilidad por Vistas Un plan S es serializable por vistas (view serializable) si es equivalente por vistas a un esquema serial. Ofrece una definición menos restrictiva de plan de ejecución que la serializabilidad por conficto: Cada plan conflicto-serializable es serializable por vistas. 12

13 Serializabilidad Semántica Algunas aplicaciones pueden producir planes correctos aunque no sean serializables ni por conflicto ni por vistas. Ejemplo: Débito/Crédito (Suma y resta se vuelven conmutativas) X:=X-10; Y:=Y+10; Y:=Y-20; read_item(z); Z:+Z+20; write_item(z); X:=X-10; Y:=Y+10; Y:=Y-20; read_item(z); Z:+Z+20; write_item(z); Métodos para Serializabilidad Multi-version: se aguardan los valores viejos de los ítems de datos cuando estos son actualizados. Timestamps: son identificadores únicos de las transacciones, generados por el sistema. Las transacciones se ordenan por este identificador para lograr la serializabilidad. Protocolos: cuando cada transacción adhiere a un protocolo, se garantiza la serializabilidad de todos los planes en los cuales participen esas transacciones bloqueos. Control de Concurrencia Pesimista Verifica antes de modificar la BD, bloqueando datos antes de leerlos o escribirlos, o chequeando timestamps. Transacciones en SQL 92 Start Transaction No hay una sentencia explícita Implícitamente comienza por una sentencia SQL End Transaction Si ocurre COMMIT o ROLLBACK Automáticamente con AUTOCOMMIT cuando se completa la sentencia SQL 13

14 Estableciendo Propiedades SET TRANSACTION [READ ONLY READ WRITE] ISOLATION LEVEL [READ UNCOMMITTED SERIALIZABLE REPEATABLE READ READ COMMITTED] Niveles de Aislamiento Read Uncommitted Puede ver cambios no comprometidos de otras transacciones Lectura sucia, Lectura no-repetible Recomendada solamente para funciones estadísticas Read Committed Puede ver cambios comprometidos de otras transacciones No hay lectura sucia, pero es posible la lectura norepetible Aceptable para consultas o soporte a las decisiones Repeatable Read No hay lectura sucia ni no-repetible Puede exhibir el fenómeno fantasma Serializable Niveles de aislamiento 14

15 Implementación de Niveles de Aislamiento Read Uncommitted sin S-locks Read Committed S-locks pueden ser levantados en cualquier momento X-locks con el P2F estricto Repeatable Read P2F estricto sobre todos los datos Serializable P2F estricto sobre todos los datos e índices Tuplas Fantasma o Si una transacción bloquea tuplas de una relacion, por ej. Con el atributo X=25, y luego se insertan nuevas tuplas en la relación con X=25 para algunas transacciones este puede ser un comportamiento no serializable. o Estas tuplas se llaman fantasmas o Los fantasmas pueden ser evitados estableciendo un lock exclusivo en TODA la relación, antes de insertar tuplas limita el grado de concurrencia. o El programador puede elegir el nivel de aislamiento en SQL, para permitir o evitar este fenómeno. Locks en Índices o Cuando se actualiza una relación (archivo) actualización de los índices asociados o Nuevamente locks para asegurar serializabilidad. o Árboles-B la raíz puede ser alterada por cualquier actualización actualizaciones concurrentes no pueden ser manejadas con locks!! 15

16 Locks en Árboles-B Idea Establecer un bloqueo exclusivo en un nodo si existe la posibilidad de que sea actualizado. Bloquear todo el camino hacia la base. Desbloquear el camino desde la base al nodo, tan pronto como se haya actualizado. Protocolo de árbol Problemas con los Bloqueos Los bloqueos evitan la no-serializabilidad. Resultan demasiado estrictos en algunos casos, limitando innecesariamente el grado de concurrencia enfoque pesimista. Otras estategias se desempeñan mejor si las transacciones no entran en conflicto con frecuencia enfoque optimista. Optimismo vs pesimismo Enfoque Pesimista mejor en situaciones de alto conflicto: Menor cantidad de abortos. Menor tiempo de procesamiento. Enfoque Optimista mejor en situaciones de bajo conflicto (por ej. muchas transacciones de solo lectura). Mayor grado de concurrencia. En la práctica soluciones híbridas. 16

17 Timestamps (Marcas de Tiempo) Asocia un número único a cada transacción timestamp (marca o estampado de tiempo fecha de nacimiento de la transacción). Las transacciones son ejecutadas en forma intercalada pero simulando su ejecución según su fecha de nacimiento (las mas jóvenes primero). No hay bloqueos no puede producirse deadlock. Cada dato que es accedido adquiere una marca, si la operación es posible. Plan de Ejecución basado en Marcas de Tiempo Si una transacción T: Intenta leer un ítem de la BD escrito por una transacción no comprometida esperar hasta que alcance el commit o aborte. Intenta leer un ítem que ha sido actualizado por una transacción más joven (> timestamp!!) rollback. Intenta actualizar un ítem que ha sido actualizado o leído por una transacción más joven rollback. Rollback recomienzo de T con un nuevo timestamp Actualización física no puede ejecutarse (por conflicto) no se ejecuta ninguna de las operaciones de la transacción (atomicidad) reinicio no requiere rollback pues no hay datos físicamente actualizados. Plan de Ejecución basado en Marcas de Tiempo El sistema debe conocer, para cada ítem de dato, la marca de tiempo de la transacción más joven que leyó o actualizó el ítem valores de sincronización. r(x) - timestamp de la transacción más joven que ejecutó read(x) w(x) - timestamp de la transacción más joven que ejecutó write(x) 17

18 Marcas de Tiempo: Mecanismo Para cada transacción T, con timestamp t(t): T intenta ejecutar READ(Xi) if t(t) >= w(xi) then r(xi) max(t(t), r(xi)) else reiniciar T T intenta ejecutar WRITE(Xj) if t(t) >= r(xj) & t(t) >= w(xj) then w(xj) t(t) else reiniciar T Marcas de Tiempo: Act. Perdida Revisitado Transacción A Leer X tiempo t1 t2 Transacción B Leer X Actualizar X t3 t4 Actualizar X Si A es más joven que B, t(a) > t(b) La actualización de B en t4 fallará porque en t3 w(x) t(a) y t(a) > t(b) B se reinicia. Si A es más antigua que B t(a) < t(b) A debería reiniciarse en t3 porque en t2 r(x) t(b) y t(b) > t(a) Livelock y deadlock no ocurren con marcas de tiempo pero el reinicio reiterado es un problema. Bibliografía Date, C.: An Introduction to Database Systems. 7º edición. Addison Wesley Elmasri, R., Navathe, S.: Fundamentals of Database Systems. Addison Wesley Silberschatz, A., Korth, H, Sudarshan, S.: Database System Concepts. McGraw Hill

Control de Concurrencia

Control de Concurrencia Control de Concurrencia Objetivo BASES DE DATOS I Forzar el aislamiento de transacciones conflictivas mediante la exclusión mutua. Preservar la consistencia de la BD mediante la ejecución adecuada de las

Más detalles

4.6.- Integridad: Control de concurrencia.

4.6.- Integridad: Control de concurrencia. 4.6.- Integridad: Control de concurrencia. 4.6.1.- Introducción 4.6.2.- Técnicas de Bloqueo. 4.6.2.1.- Bloqueo (variable cerrojo) Tipos, protocolos Problemas. Interbloqueo Granularidad 4.6.2.2.- Marcas

Más detalles

Transacciones, Recuperación y Control de Concurrencia

Transacciones, Recuperación y Control de Concurrencia Transacciones, Recuperación y Control de Concurrencia Transacciones Transacción: colección de operaciones que forman una única unidad lógica de trabajo en una BD Control concurrencia Sistemas multiusuario:

Más detalles

Concurrencia y Recuperabilidad

Concurrencia y Recuperabilidad Concurrencia y Recuperabilidad Paradigma Pesimista Lic. Gerardo Rossel 2016 Recuperabilidad Control de Concurrencia Pesimista-Optimista-SQL Serializabilidad Recuperabilidad Control de Concurrencia Pesimista-Optimista-SQL

Más detalles

Fundamentos de Bases de Datos

Fundamentos de Bases de Datos Fundamentos de Bases de Datos Control de Concurrencia y Recuperación CSI-INCO Fundamentos de Bases de Datos 1 Arquitectura de un DBMS Comunicación con el usuario Gestión de Operaciones Gestión de los Datos

Más detalles

Resumen Tema 5: Proceso de transacciones

Resumen Tema 5: Proceso de transacciones Resumen Tema 5: Proceso de transacciones Transacción Unidad lógica de procesamiento secuencial compuesta por una o mas acciones que se ejecutan en bloque sobre una BD. Sentencias: Begin/end transaction.

Más detalles

7. Control de la concurrencia

7. Control de la concurrencia 7. Control de la concurrencia Objetivos Conocer la problemática asociada a la concurrencia de transacciones en los sistemas de bases de datos Entender el significado de la serializabilidad y su aplicación

Más detalles

Gestión de Transacciones: Concurrencia y Recuperación

Gestión de Transacciones: Concurrencia y Recuperación Gestión de Transacciones: Concurrencia y Recuperación Grupo de Ingeniería del Software y Bases de Datos Departamento de Lenguajes y Sistemas Informáticos Universidad de Sevilla noviembre 2011 Objetivos

Más detalles

Universidad Nacional del Sur Departamento de Ciencias e Ingeniería de la Computación Elementos de Bases de Datos 2do. Cuatrimestre de 2004

Universidad Nacional del Sur Departamento de Ciencias e Ingeniería de la Computación Elementos de Bases de Datos 2do. Cuatrimestre de 2004 2do Cuatrimestre de 24 Elementos de Bases de Datos DptoCiencias e Ingeniería de la Computación Universidad Nacional del Sur Lic María Mercedes Vitturini [mvitturi@csunseduar] Repaso Hasta ahora vimos que

Más detalles

Gestión de Transacciones

Gestión de Transacciones Gestión de Transacciones y su relación con el gestor de concurrencia (planificador) y el gestor de recuperación 1 Sistema Monousuario vs. Multiusuario. concurrencia Transacciones Estado de las transacciones.

Más detalles

MVCC: Control de Concurrencia Multiversión sobre. Bases de Datos. Comparación critica de. implementaciones existentes

MVCC: Control de Concurrencia Multiversión sobre. Bases de Datos. Comparación critica de. implementaciones existentes MVCC: Control de Concurrencia Multiversión sobre Bases de Datos. Comparación critica de implementaciones existentes Diaz Ramirez, Rodrigo Marcos Errecart, Rodolfo Emilio INDICE INDICE 1 - INTRODUCCION

Más detalles

Transacciones. Agenda

Transacciones. Agenda Transacciones Alumnos: Jesús Hernández CI:18.020.681 José De Abreu CI: 18 855 500 Agenda 1 Concepto de Transacción 1.1 Consistencia y Aislamiento 1.2 Atomicidad y Durabilidad 2 Transacciones y Planificadores

Más detalles

Transacciones. M. Andrea Rodríguez-Tastets. II Semestre Universidad de Concepción,Chile andrea

Transacciones. M. Andrea Rodríguez-Tastets. II Semestre Universidad de Concepción,Chile  andrea Transacciones M. -Tastets Universidad de Concepción,Chile www.inf.udec.cl\ andrea andrea@udec.cl II Semestre - 2014 Objetivos de la Unidad Entender el concepto de transacciones. Transacciones Una transacción

Más detalles

14. Control de la concurrencia

14. Control de la concurrencia 14. Control de la concurrencia Objetivos Conocer la problemática asociada a la concurrencia de transacciones en los sistemas de bases de datos Entender el significado de la seriabilidad y su aplicación

Más detalles

Conceptos sobre procesamiento de transacciones

Conceptos sobre procesamiento de transacciones Conceptos sobre procesamiento de transacciones Tema 3: Bases de Datos II Contenidos del tema 3 1. Introducción 2. Propiedades deseables en las transacciones. 3. Conceptos de transacciones y sistema. 4.

Más detalles

Transacción. Introducción a los conceptos del Procesamiento de las Transacciones. Monousuarios vs. Multiusuarios. Pablo Turjanski.

Transacción. Introducción a los conceptos del Procesamiento de las Transacciones. Monousuarios vs. Multiusuarios. Pablo Turjanski. Transacción a los conceptos del Procesamiento de las Transacciones Definición Una transacción es un conjunto de instrucciones que se ejecutan formando una unidad lógica de procesamiento. Una transacción

Más detalles

Control de Concurrencia. Carlos A. Olarte BDII

Control de Concurrencia. Carlos A. Olarte BDII Carlos A. Olarte (carlosolarte@puj.edu.co) BDII Contenido 1 Introducción 2 Protocolos basados en Bloqueos 3 Protocolos basados en Grafos 4 Protocolos de Marcas temporales 5 Esquemas Multiversión 6 Granularidad

Más detalles

Introducción a los conceptos del Procesamiento de las Transacc

Introducción a los conceptos del Procesamiento de las Transacc a los conceptos del Procesamiento de las Transacciones 12/Mayo/2017 Transacción Definición Transacción Definición Una transacción es un conjunto de instrucciones que se ejecutan formando una unidad lógica

Más detalles

Transacciones en SQL. Bases de Datos

Transacciones en SQL. Bases de Datos Transacciones en SQL Bases de Datos 2017 Conceptos Generales Transacciones Implícitas/Explicitas ISO SQL: cualquier comando SQL al comienzo de una sesión o inmediato posterior al fin de una transacción

Más detalles

Transacciones, Recuperación y Control de Concurrencia

Transacciones, Recuperación y Control de Concurrencia Transacciones, Recuperación y Control de Concurrencia Diseño de Bases de Datos Relacionales Curso 2011/2012 Sergio Ilarri silarri@unizar.es Transacciones (I) Transacción Secuencia de operaciones que deben

Más detalles

Transacciones en SQL. Lic. Gerardo Rossel

Transacciones en SQL. Lic. Gerardo Rossel Transacciones en SQL Lic. Gerardo Rossel 2016 Conceptos Generales Transacciones Implícitas/Explicitas ISO SQL: cualquier comando SQL al comienzo de una sesión o inmediato posterior al fin de una transacción

Más detalles

Procesamiento de Transacciones

Procesamiento de Transacciones Procesamiento de Transacciones Competencias específicas Explicar el concepto, propiedades y estados de las transacciones en sistemas de bases de datos. Identificar los problemas asociados a la concurrencia

Más detalles

PROGRAMA ACADÉMICO DE TECNOLOGÍAS DE LA INFORMACIÓN. actividad Transacciones en MySQL. como requerimiento parcial para acreditar la asignatura de

PROGRAMA ACADÉMICO DE TECNOLOGÍAS DE LA INFORMACIÓN. actividad Transacciones en MySQL. como requerimiento parcial para acreditar la asignatura de DEXCELENCIA UNIVERSITARIA, FORTALEZA E MEXICO I Z U C A R D E M ATA M O R O S PROGRAMA ACADÉMICO DE TECNOLOGÍAS DE LA INFORMACIÓN actividad Transacciones en MySQL como requerimiento parcial para acreditar

Más detalles

Concurrencia. M. Andrea Rodríguez-Tastets. II Semestre Universidad de Concepción,Chile andrea

Concurrencia. M. Andrea Rodríguez-Tastets. II Semestre Universidad de Concepción,Chile  andrea Concurrencia M. -Tastets Universidad de Concepción,Chile www.inf.udec.cl\ andrea andrea@udec.cl II Semestre - 2014 Objetivos de la unidad Entender los diferentes protocolos de manejo de concurrencia. Técnicas

Más detalles

Conceptos sobre procesamiento de transacciones. Tema 3: Bases de Datos II

Conceptos sobre procesamiento de transacciones. Tema 3: Bases de Datos II Conceptos sobre procesamiento de transacciones Tema 3: Bases de Datos II Contenidos del tema 3 1. Introducción 2. Propiedades deseables en las transacciones. 3. Conceptos de transacciones y sistemas. 4.

Más detalles

Universidad Nacional del Sur Departamento de Ciencias e Ingeniería de la Computación Elementos de Bases de Datos 2do. Cuatrimestre de 2004

Universidad Nacional del Sur Departamento de Ciencias e Ingeniería de la Computación Elementos de Bases de Datos 2do. Cuatrimestre de 2004 2do. Cuatrimestre de 2004 Elementos de Bases de Datos Dpto.Ciencias e Ingeniería de la Computación Universidad Nacional del Sur Lic. María Mercedes Vitturini [mvitturi@cs.uns.edu.ar] Clase 17 1er. Cuatrimestre

Más detalles

cilred.com GESTIÓN DE TRANSACCIONES

cilred.com GESTIÓN DE TRANSACCIONES cilred.com GESTIÓN DE TRANSACCIONES ING. EDUARDO CRUZ ROMERO eduar14_cr@hotmail.com cilred.com GESTIÓN DE TRANSACCIONES En las base de datos existen una serie de operaciones fundamentales tales como la

Más detalles

Asignatura: Administración de Bases de Datos. Pedro P. Alarcón Cavero

Asignatura: Administración de Bases de Datos. Pedro P. Alarcón Cavero Ingeniería Técnica en Informática Escuela Universitaria de Informática Universidad Politécnica de Madrid Asignatura: Administración de Bases de Datos Tema 5: Proceso de Transacciones Pedro P. Alarcón Cavero

Más detalles

Bases De Datos Depto. Computación FCEyN UBA

Bases De Datos Depto. Computación FCEyN UBA Bases De Datos Depto. Computación FCEyN UBA ISO SQL: cualquier comando SQL al comienzo de una sesión o inmediato posterior al fin de una transacción comienza automáticamente una nueva transacción (DB2

Más detalles

CONCURRENCIA, TRANSACCIONES, ACCESOS Y BLOQUEOS

CONCURRENCIA, TRANSACCIONES, ACCESOS Y BLOQUEOS CONCURRENCIA, TRANSACCIONES, ACCESOS Y BLOQUEOS Introducción 3 1. CONTROL DE CONCURRENCIA 3 2. TRANSACCIONES Y ACCESOS 4 3. TRANSACCIONES Y ESTADOS DE LA BASE DE DATOS 5 4. ESTADOS DE LA TRANSACCIÓN 6

Más detalles

Ejecuciones Concurrentes

Ejecuciones Concurrentes Elementos de Bases de Datos Dpto.Ciencias e Ingeniería de la Computación Universidad Nacional del Sur Lic. María Mercedes Vitturini [mvitturi@cs.uns.edu.ar] Clase 24 1er. Cuatrimestre de 2004 Transacciones

Más detalles

CONTROL DE CONCURRENCIA Y RECUPERACIÓN EN BASES DE DATOS

CONTROL DE CONCURRENCIA Y RECUPERACIÓN EN BASES DE DATOS CONTROL DE CONCURRENCIA Y RECUPERACIÓN EN BASES DE DATOS MATERIA: BASE DE DATOS CUATRIMESTRE: 2C2010 DOCENTE: ALEJANDRO EIDELSZTEIN Un Sistema de Gestión de Bases de Datos consta de los siguientes módulos:

Más detalles

Jose Manuel Perez Daniel Futrillé Prof. Ana Aguilera

Jose Manuel Perez Daniel Futrillé Prof. Ana Aguilera Jose Manuel Perez Daniel Futrillé Prof. Ana Aguilera 1 Introducción 2 Concepto de Transacciones 2.1 Propiedades de las transacciones 2.2 Condiciones de terminación de una transacción 2.3 Caracterización

Más detalles

Ing. Informática. Catedrático: Lic. Angélica Avalos Cano

Ing. Informática. Catedrático: Lic. Angélica Avalos Cano Ing. Informática Tema: Resumen de trasparencia, Control de transacciones para base de datos distribuidas, Control de concurrencia, Protocolos de bloqueo Presentado Por: María Cristina Cruz Ramírez Darvin

Más detalles

Unidad 4 Control de Transacciones

Unidad 4 Control de Transacciones Unidad 4 Control de Transacciones e Instrucción COMMIT. 4.2 Instrucción ROLLBACK. 4.3 Niveles de aislamiento. 4.4 Grados de consistencia. ISC Ing. Felipe Alanís González -ITD- 1 Cada vez que se ejecuta

Más detalles

Control de concurrencia en bases de datos relacionales

Control de concurrencia en bases de datos relacionales OpenStax-CNX module: m18939 1 Control de concurrencia en bases de datos relacionales Miguel-Angel Sicilia This work is produced by OpenStax-CNX and licensed under the Creative Commons Attribution License

Más detalles

UNIVERSIDAD NACIONAL DEL SUR 1 BAHIA BLANCA DEPARTAMENTO DE CIENCIAS E INGENIERÍA DE LA COMPUTACION

UNIVERSIDAD NACIONAL DEL SUR 1 BAHIA BLANCA DEPARTAMENTO DE CIENCIAS E INGENIERÍA DE LA COMPUTACION UNIVERSIDAD NACIONAL DEL SUR 1 CARRERAS Y PLANES Ingeniería en Sistemas de Computación Plan 2007 Ingeniería en Computación Plan 2011 PROFESOR RESPONSABLE Lic. María Mercedes VITTURINI Profesor Adjunto

Más detalles

Transacciones. Carlos A. Olarte BDII

Transacciones. Carlos A. Olarte BDII Carlos A. Olarte (carlosolarte@puj.edu.co) BDII Outline 1 2 Ejecuciones Concurrentes 3 Secuencialidad en Cuanto a Conflictos 4 Secuencialidad en Cuanto a Vistas 5 Recuperabilidad 6 en SQL Transacción Definición

Más detalles

Recuperación. Bibliografía: Introducción a los Sistemas de Bases de Datos Date, C.J.

Recuperación. Bibliografía: Introducción a los Sistemas de Bases de Datos Date, C.J. Recuperación Bibliografía: Introducción a los Sistemas de Bases de Datos Date, C.J. Recuperación de transacciones Está vinculado a la noción de procesamiento de transacciones. Operaciones de SQL COMMIT

Más detalles

PROGRAMA ACADÉMICO DE TECNOLOGÍAS DE LA INFORMACIÓN. Actividad Tutorial de comandos de transacciones

PROGRAMA ACADÉMICO DE TECNOLOGÍAS DE LA INFORMACIÓN. Actividad Tutorial de comandos de transacciones E Ohh disculpaa XCELENCIA UNIVERSITARIA, FORTALEZA DE MEXICO I Z U C A R D E M ATA M O R O S PROGRAMA ACADÉMICO DE TECNOLOGÍAS DE LA INFORMACIÓN Actividad Tutorial de comandos de transacciones Como requerimiento

Más detalles

Sistemas Operativos (Parte 2)

Sistemas Operativos (Parte 2) Sistemas Operativos (Parte 2) M. en C. Mario Farias-Elinos e-mail: elinos@ci.ulsa.mx web: http://www.ci.ulsa.mx/~elinos Maestría en Tecnologías de Información Contenido Proceso Scheduller Thread Sincronización

Más detalles

Elementos de Bases de Datos. Serializabilidad en Bases de Datos Distribuidas. Protocolo de Bloqueo de Dos Fases. Protocolo de Compromiso de 2 Fases

Elementos de Bases de Datos. Serializabilidad en Bases de Datos Distribuidas. Protocolo de Bloqueo de Dos Fases. Protocolo de Compromiso de 2 Fases Elementos de Bases de Datos 2do Cuatrimestre de 2004 Elementos de Bases de Datos DptoCiencias e Ingeniería de la Computación Universidad Nacional del Sur Lic María Mercedes Vitturini [mvitturi@csunseduar]

Más detalles

Transacciones y concurrencia. Sistemas de persistencia de objetos

Transacciones y concurrencia. Sistemas de persistencia de objetos Transacciones y concurrencia Sistemas de persistencia de objetos Transacción ACID Es la demarcación de una unidad de trabajo JPA permite trabajar con varios API de transacciones JSE JDBC JTA Declarativas

Más detalles

Diseño de Bases de Datos

Diseño de Bases de Datos Departamento de Lenguajes y Sistemas Informáticos Avda Reina Mercedes s/n. 41012 Sevilla Tlf/Fax 954 557 139 E-mail lsi@lsi.us.es www.lsi.us.es E.T.S. Ingeniería Informática Diseño de Bases de Datos Sevilla,

Más detalles

Sistemas de Operación II

Sistemas de Operación II Sistemas de Operación II Transacciones distribuidas Prof. Carlos Figueira Basado en material de Yudith Cardinale (USB) Andrew Tanembaum y Marteen van Steen Contenido Transacciones: Introducción y definiciones

Más detalles

CAPITULO 6. Control de Concurrencia y Recuperación

CAPITULO 6. Control de Concurrencia y Recuperación CAPITULO 6 Control de Concurrencia y Recuperación 6.1 Protocolos de Bloqueo Un protocolo de bloqueo nace de la necesidad creada cuando una transacción solicita un bloqueo de un modo particular sobre un

Más detalles

Guía de estudio para el examen. Sean tres atributos A, B y C. Indique, para cada par de transacciones T1 y T2, si se garantiza que A+B+C no cambia.

Guía de estudio para el examen. Sean tres atributos A, B y C. Indique, para cada par de transacciones T1 y T2, si se garantiza que A+B+C no cambia. Guía de estudio para el examen Transacciones Problema 1: Suma Invariante Sean tres atributos A, B y C. Indique, para cada par de transacciones T1 y T2, si se garantiza que A+B+C no cambia. 1) T1 T2 Lock

Más detalles

Una técnica de baja tecnología para el aprendizaje de control de concurrencia en bancos de datos

Una técnica de baja tecnología para el aprendizaje de control de concurrencia en bancos de datos Una técnica de baja tecnología para el aprendizaje de control de concurrencia en bancos de datos Vinícius Medina Kern UNIVALI, Cursos de Ciência e Engenharia de Computação Rodovia SC 407, Km 4; 88122-00;

Más detalles

Concurrencia de Procesos

Concurrencia de Procesos Concurrencia de Procesos Dos o mas procesos, se dice que son concurrentes o paralelos, cuando se ejecutan al mismo tiempo. Esta concurrencia puede darse en un sistema con un solo procesador (pseudo paralelismo)

Más detalles

Contenido Manejo de Concurren en Mysql... 2 Modos de bloqueo InnoDB... 2 InnoDB y AUTOCOMMIT... 3

Contenido Manejo de Concurren en Mysql... 2 Modos de bloqueo InnoDB... 2 InnoDB y AUTOCOMMIT... 3 Manejo de Concurrencia en Mysql Contenido Manejo de Concurren en Mysql... 2 Modos de bloqueo InnoDB... 2 InnoDB y AUTOCOMMIT... 3 InnoDB y TRANSACTION ISOLATION LEVEL... 3 Lecturas consistentes que no

Más detalles

Universidad Nacional del Sur Departamento de Ciencias e Ingeniería de la Computación Elementos de Bases de Datos 2do. Cuatrimestre de 2004

Universidad Nacional del Sur Departamento de Ciencias e Ingeniería de la Computación Elementos de Bases de Datos 2do. Cuatrimestre de 2004 2do. Cuatrimestre de 2004 Elementos de Bases de Datos Dpto.Ciencias e Ingeniería de la Computación Universidad Nacional del Sur Lic. María Mercedes Vitturini [mvitturi@cs.uns.edu.ar] Clase 21 1er. Cuatrimestre

Más detalles

Concurrencia Condiciones de Carrera. Guillermo Román Díez

Concurrencia Condiciones de Carrera. Guillermo Román Díez Concurrencia Condiciones de Carrera Guillermo Román Díez groman@fi.upm.es Universidad Politécnica de Madrid Curso 2016-2017 Guillermo Román, UPM CC: Condiciones de Carrera 1/20 Condiciones de carrera Condición

Más detalles

TEMA 4 PROFESOR: M.C. ALEJANDRO GUTIÉRREZ DÍAZ

TEMA 4 PROFESOR: M.C. ALEJANDRO GUTIÉRREZ DÍAZ 1 1 BASES DE DATOS DISTRIBUIDAS TEMA 4 PROFESOR: M.C. ALEJANDRO GUTIÉRREZ DÍAZ 2 4. MANEJO DE TRANSACCIONES 4.1 Conceptos de Transacciones 4.2 Control de concurrencia 4.3 Serialización de transacciones

Más detalles

De que hay que Recuperarse?

De que hay que Recuperarse? Conceptos de Recuperación de Información en Bases de Datos [EN - 21] CSI-INCO Fundamentos de Bases de Datos 1 De que hay que Recuperarse? En un sistema, se pueden dar fallas que pongan en riesgo la integridad

Más detalles

Recuperación de Fallos del Sistema

Recuperación de Fallos del Sistema Recuperación de Fallos del Sistema Competencias específicas Proteger la información almacenada frente a fallos del sistema mediante las técnicas disponibles en los SGBDs. Justificar la necesidad de disponer

Más detalles

Procesamiento de transacciones Fernando Berzal,

Procesamiento de transacciones Fernando Berzal, Procesamiento de transacciones Fernando Berzal, berzal@acm.org Procesamiento de transacciones Transacciones ACIDez de las transacciones Implementación Versiones Procesamiento de transacciones distribuidas

Más detalles

Capítulo 5. Edición de datos

Capítulo 5. Edición de datos Capítulo 5 Edición de datos ÍNDICE CAPÍTULO 5 Inserción de registros Cláusula INSERT Cláusula REPLACE Modificación de registros Borrado de registros Borrados/Modificaciones e integridad referencial Transacciones

Más detalles

Bases de datos Unidad 1 Introducción a las BD. Mónica María Rojas Rincón Oficina: P19-103

Bases de datos Unidad 1 Introducción a las BD. Mónica María Rojas Rincón Oficina: P19-103 Bases de datos Unidad 1 Introducción a las BD Mónica María Rojas Rincón mmrojas@elpoli.edu.co Oficina: P19-103 Competencias a desarrollar Identificar los conceptos propios de la asignatura. Diferenciar

Más detalles

PROGRAMA ACADÉMICO DE TECNOLOGÍAS DE LA INFORMACIÓN MANUAL SINTAXIS DE LOS COMANDOS PARA UNA TRANSACCION BASES DE DATOS PARA APLICACIONES

PROGRAMA ACADÉMICO DE TECNOLOGÍAS DE LA INFORMACIÓN MANUAL SINTAXIS DE LOS COMANDOS PARA UNA TRANSACCION BASES DE DATOS PARA APLICACIONES DEXCELENCIA UNIVERSITARIA, FORTALEZA E MEXICO I Z U C A R D E M ATA M O R O S PROGRAMA ACADÉMICO DE TECNOLOGÍAS DE LA INFORMACIÓN MANUAL SINTAXIS DE LOS COMANDOS PARA UNA TRANSACCION BASES DE DATOS PARA

Más detalles

GESTION DE TRANSACCIONES

GESTION DE TRANSACCIONES GESTION DE TRANSACCIONES Recuperación ante Fallos Control de Concurrencia Esquema de la Clase Concepto de transacción Propiedades y estados de una transacción Estructura de almacenamiento Acceso a los

Más detalles

ADMINISTRACIÓN DE BASES DE DATOS. Control de Concurrencia y Recuperación

ADMINISTRACIÓN DE BASES DE DATOS. Control de Concurrencia y Recuperación ADMINISTRACIÓN DE BASES DE DATOS Tema 4 Control de Concurrencia y Recuperación Francisco Ruiz González Departamento de Informática Escuela Superior de Informática Universidad de Castilla-La Mancha Resumen:

Más detalles

Bases de Datos Distribuidas. Carlos A. Olarte BDII

Bases de Datos Distribuidas. Carlos A. Olarte BDII Carlos A. Olarte (carlosolarte@puj.edu.co) BDII Contenido 1 Introducción 2 Fragmentación de Datos 3 Transparencia de Red 4 Transacciones Distribuidas 5 Control de Concurrencia Introducción Por que distribuir

Más detalles

Tema 6. Transacciones y seguridad

Tema 6. Transacciones y seguridad Tema 6. Transacciones y seguridad Las aplicaciones de bases de datos a gran escala, con bases de datos de gran tamaño y con cientos de usuarios concurrentes, como los sistemas de reservas, los bancos,

Más detalles

Fallas, concurrencia y seguridad

Fallas, concurrencia y seguridad Fallas, concurrencia y seguridad Tipos de memoria Memoria Volátil: Memoria principal, su contenido se pierde al ocurrir una Falla. Memoria No-Volátil: Disco o cinta. Es raro que su contenido se pierda

Más detalles

UNIDAD 2 ESPECIFICACIÓN FORMAL DE SISTEMAS CONCURRENTES

UNIDAD 2 ESPECIFICACIÓN FORMAL DE SISTEMAS CONCURRENTES UNIDAD 2 ESPECIFICACIÓN FORMAL DE SISTEMAS CONCURRENTES Sentencias Concurrentes Ahora es necesario, dado un programa concurrente, saber que secciones del código son concurrentes y cuáles no, además es

Más detalles

Bases de Datos Paralelas. Carlos A. Olarte BDII

Bases de Datos Paralelas. Carlos A. Olarte BDII Carlos A. Olarte (carlosolarte@puj.edu.co) BDII Contenido 1 Introducción 2 Paralelismo de I/O 3 Paralelismo entre Consultas 4 OPS Introducción Por qué tener bases de datos paralelas? Tipos de arquitecturas:

Más detalles

Manejo de Transacciones

Manejo de Transacciones Bases de Datos Transacciones 1 Manejo de Transacciones Jorge Pérez Rojas Universidad de Talca, II Semestre 2006 Bases de Datos Transacciones 2 Transacciones Hasta ahora el modelo de operación en la BD

Más detalles

Mecanismos de Recuperación

Mecanismos de Recuperación Mecanismos de Recuperación 1 Índice Aspectos generales sobre recuperación Tipos de fallos Fallos con pérdida de memoria volátil Actualización inmediata Actualización diferida Fallos con pérdida de memoria

Más detalles

Introducción a las Bases de Datos

Introducción a las Bases de Datos Introducción a las Bases de Datos Organización lógica de los datos Sistemas basados en archivos Concepto intuitivo de base de datos Sistemas gestores de bases de datos Definición Características y ventajas

Más detalles

Introducción al Álgebra Relacional

Introducción al Álgebra Relacional 21/11/2013 Introducción al Álgebra Relacional Grupo de Ingeniería del Software y Bases de Datos Departamento de Lenguajes y Sistemas Informáticos Universidad de Sevilla noviembre 2013 Objetivos de este

Más detalles

Sobre la programación concurrente

Sobre la programación concurrente Sobre la programación concurrente Lecturas recomendadas: G. Andrews, introducción parte 1 Ben-Ari, secciones 2.1 y 2.3 A. Burns, A. Wellings, capítulo 2 (hasta 2.4) Andrews & Schneider, todo el artículo

Más detalles

Universidad Autónoma del Estado de Hidalgo Instituto de Ciencias Básicas e Ingeniería Área Académica de Computación y Electrónica

Universidad Autónoma del Estado de Hidalgo Instituto de Ciencias Básicas e Ingeniería Área Académica de Computación y Electrónica Universidad Autónoma del Estado de Hidalgo Instituto de Ciencias Básicas e Ingeniería Área Académica de Computación y Electrónica Licenciatura en Sistemas Computacionales Sistemas Operativos Docente: M.G.A.

Más detalles

Uso de recursos compartidos

Uso de recursos compartidos Uso de recursos compartidos Cada proceso o hebra se ejecuta de forma independiente. Sin embargo, cuando varias hebras (o procesos) han de acceder a un mismo recurso, se ha de coordinar el acceso a ese

Más detalles

Acceso coordinado a recursos compartidos

Acceso coordinado a recursos compartidos Programación Concurrente en Linux Acceso coordinado a recursos compartidos Alberto Lafuente, Dep. KAT/ATC de la UPV/EHU, bajo Licencia Creative Commons 1 Contenido 1. Recursos compartidos 2. Mecanismos

Más detalles

Mecanismos de Recuperación

Mecanismos de Recuperación Mecanismos de Recuperación Índice Aspectos generales sobre Tipos de fallos Fallos con pérdida de memoria volátil Actualización inmediata Actualización diferida Fallos con pérdida de memoria estable Mecanismos

Más detalles

BASES DE DATOS (IG18 Semipresencial) Introducción a las Bases de Datos: Sistemas de Bases de Datos frente a Sistemas de Ficheros

BASES DE DATOS (IG18 Semipresencial) Introducción a las Bases de Datos: Sistemas de Bases de Datos frente a Sistemas de Ficheros Tema 1.b BASES DE DATOS (IG18 Semipresencial) Introducción a las Bases de Datos: Sistemas de Bases de Datos frente a Sistemas de Ficheros Lledó Museros / Ismael Sanz museros@icc.uji.es / isanz@icc.uji.es

Más detalles

La Máquina de Acceso Aleatorio (Random Access Machine)

La Máquina de Acceso Aleatorio (Random Access Machine) La Máquina de Acceso Aleatorio (Random Access Machine) Nuestro modelo de cómputo secuencial es la máquina de acceso aleatorio (RAM, Random Access Machine) mostrada en la Figura 2.1, y que consiste de:

Más detalles

Técnicas de control de concurrencia

Técnicas de control de concurrencia Técnicas de control de concurrencia Bases de datos II: Tema 4 Universitat de València 26/7 BD2-Tema 4: Control de concurrencia (Esther de Ves, Vicente Cerverón) Índice Ordenamiento por marcas de tiempo.

Más detalles

Arquitectura de un data warehouse Funcionamiento detallado de un data warehouse

Arquitectura de un data warehouse Funcionamiento detallado de un data warehouse El modelo multidimensional Data a Warehousing OLAP vs. OLTP Data Warehousing El modelo multidimensional Dimensiones, medidas y hechos Arquitectura de un data warehouse Funcionamiento detallado de un data

Más detalles

Aplicaciones Concurrentes

Aplicaciones Concurrentes PROGRAMACIÓN CONCURRENTE TEMA 6 Aplicaciones Concurrentes ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA INFORMÁTICA DEPARTAMENTO DE CIENCIAS DE LA COMPUTACIÓN PROGRAMACIÓN CONCURRENTE Aplicaciones Concurrentes

Más detalles

5. Bases de datos distribuidas

5. Bases de datos distribuidas 5. Bases de datos distribuidas 5.1 Introducción Un sistema de bases de datos distribuidas se compone de un conjunto de sitios conectados entre sí mediante algún tipo de red de comunicaciones en el cual:

Más detalles

Concurrencia Monitores. Guillermo Román Díez

Concurrencia Monitores. Guillermo Román Díez Concurrencia Monitores Guillermo Román Díez groman@fi.upm.es Universidad Politécnica de Madrid Curso 2016-2017 Guillermo Román, UPM CC: Monitores 1/25 Recursos Compartidos Pregunta La especificación de

Más detalles

TRANSACCIONES DISTRIBUIDAS

TRANSACCIONES DISTRIBUIDAS TRANSACCIONES DISTRIBUIDAS Tema # V Sistemas de operación II Abril-Julio 2008 Yudith Cardinale INDICE Introducción y definiciones Algoritmos de compromiso Two Phase Commit Three Phase Commit Algoritmos

Más detalles

UNIVERSIDAD NACIONAL DE ITAPUA U.N.I. Creada por Ley Nº:1.009/96 del 03/12/96 Facultad de Ingeniería PROGRAMA DE ESTUDIOS

UNIVERSIDAD NACIONAL DE ITAPUA U.N.I. Creada por Ley Nº:1.009/96 del 03/12/96 Facultad de Ingeniería PROGRAMA DE ESTUDIOS Materia: Base de Datos Semestre: Cuarto Ciclo: Ingeniería Informática Código: 102 Teóricas: 4 Horas Semanales: Prácticas: - Laboratorio: 2 Horas Semestrales: Teóricas: 68 Pre-Requisitos: Prácticas: - Laboratorio:

Más detalles

Modelamiento y Diseño de Base de Datos

Modelamiento y Diseño de Base de Datos Modelamiento y Diseño de Base de Datos Sentencias complementarias + Disparadores Objetivos: Elaborar sentencias especiales con diferentes usos y componentes. Introducción: Siempre hay tipos de consultas

Más detalles

INTEGRIDAD Y CONTROL DE CONCURRENCIA

INTEGRIDAD Y CONTROL DE CONCURRENCIA Universidad Central de Venezuela Facultad de Ciencias Escuela de Computación INTEGRIDAD Y CONTROL DE CONCURRENCIA María Gertrudis López Centro de investigación en Sistemas de Información CISI. 1 INDICE

Más detalles

Procesamiento y Optimización de Consultas

Procesamiento y Optimización de Consultas 16/12/2011 s Procesamiento y Optimización de Consultas Grupo de Ingeniería del Software y Bases de Datos Departamento de Lenguajes y Sistemas Informáticos Universidad de Sevilla diciembre 2011 s Objetivos

Más detalles

Procesamiento y Optimización de Consultas

Procesamiento y Optimización de Consultas 30/09/2016 s Procesamiento y Optimización de Consultas Grupo de Ingeniería del Software y Bases de Datos Departamento de Lenguajes y Sistemas Informáticos Universidad de Sevilla septiembre 2016 s Objetivos

Más detalles

UNIVERSIDAD NACIONAL DE RÍO CUARTO FACULTAD DE CIENCIAS EXACTAS, FÍSICO-QUÍMICAS Y NATURALES DEPARTAMENTO DE COMPUTACIÓN

UNIVERSIDAD NACIONAL DE RÍO CUARTO FACULTAD DE CIENCIAS EXACTAS, FÍSICO-QUÍMICAS Y NATURALES DEPARTAMENTO DE COMPUTACIÓN UNIVERSIDAD NACIONAL DE RÍO CUARTO FACULTAD DE CIENCIAS EXACTAS, FÍSICO-QUÍMICAS Y NATURALES DEPARTAMENTO DE COMPUTACIÓN CARRERA/S: LICENCIATURA EN CIENCIAS DE LA COMPUTACIÓN. PLAN DE ESTUDIOS: 1999 ASIGNATURA:

Más detalles

Universisdad de Los Andes Facultad de Ingeniería Escuela de Sistemas

Universisdad de Los Andes Facultad de Ingeniería Escuela de Sistemas Universisdad de Los Andes Facultad de Ingeniería Escuela de Sistemas Introducción y Conceptos Básicos Prof. Gilberto Díaz gilberto@ula.ve Departamento de Computación, Escuela de Sistemas, Facultad de Ingeniería

Más detalles

Fundamentos de los Bloqueos en SQL Server

Fundamentos de los Bloqueos en SQL Server Fundamentos de los Bloqueos en SQL Server Enrique Puig MAP MCITP e.puig@outlook.es @epuignouselles Moderador: Freddy Angarita Gracias a nuestros auspiciadores Database Security as Easy as A-B-C http://www.greensql.com

Más detalles

Formato para prácticas de laboratorio

Formato para prácticas de laboratorio Formato para prácticas de laboratorio CARRERA PLAN DE ESTUDIO CLAVE ASIGNATURA NOMBRE DE LA ASIGNATURA LSC 2009-2 12001 Administración de Bases de Datos PRÁCTICA No. 6 LABORATORIO DE NOMBRE DE LA PRÁCTICA

Más detalles

Optimización de Consultas

Optimización de Consultas Optimización de Consultas Ejercicios simples Base de Datos, DC-FCEyN-UBA Rosana Matuk 13 de octubre de 2016 Rosana Matuk (DC-FCEyN-UBA) Optimización 13 de octubre de 2016 1 / 32 Esquema General 1 Introducción

Más detalles

Porqué es dificil sincronizar en un S.D.?

Porqué es dificil sincronizar en un S.D.? 1 Porqué es dificil sincronizar en un S.D.? Problemas: - Información repartida - No existe timing global - Decisiones con información local - Puntos de falla? 2 Relojes Lógicos LAMPORT (1978) Eventos a

Más detalles

Bases de datos 1. Teórico: Introducción

Bases de datos 1. Teórico: Introducción Bases de datos 1 Teórico: Introducción Conceptos generales Base de Datos: Es un conjunto de datos relacionados Representa algún aspecto del mundo real Es construida para un propósito específico Database

Más detalles

Lección 6: Ejemplos de programación con semáforos

Lección 6: Ejemplos de programación con semáforos Lección 6: Ejemplos de programación con semáforos El problema de la cena de los filósofos El problema de los lectores y escritores Ejercicios Gestión de concurrencia mediante paso de testigo (implementación

Más detalles

Bases de Datos I. Cursada 2008. Clase 7: Recuperación de BD. Introducción a la Seguridad. Introducción a la Seguridad

Bases de Datos I. Cursada 2008. Clase 7: Recuperación de BD. Introducción a la Seguridad. Introducción a la Seguridad Bases de Datos I Cursada 2008 Clase 7: Recuperación de BD Facultad de Ciencias Exactas Universidad Nac. Centro de la Pcia. de Bs. As. 1 Introducción a la Seguridad Una base de datos es: Un conjunto de

Más detalles

UNIVERSIDAD DE SAN C ARLOS DE GUATEMALA FACULTAD DE INGENIER IA ESCUELA DE CIENCIAS Y SISTEMAS PROGRAMA DEL CURSO: SISTEMAS DE BASES DE DATOS 2

UNIVERSIDAD DE SAN C ARLOS DE GUATEMALA FACULTAD DE INGENIER IA ESCUELA DE CIENCIAS Y SISTEMAS PROGRAMA DEL CURSO: SISTEMAS DE BASES DE DATOS 2 UNIVERSIDAD DE SAN C ARLOS DE GUATEMALA FACULTAD DE INGENIER IA ESCUELA DE CIENCIAS Y SISTEMAS PROGRAMA DEL CURSO: SISTEMAS DE BASES DE DATOS 2 CODIGO: 775 CREDITOS: 4 ESCUELA: Ciencias y Sistemas AREA

Más detalles

Jerarquía de Almacenamiento

Jerarquía de Almacenamiento 1) Explicar la organización de los medios de almacenamiento en primarios, secundarios y terciarios. Jerarquía de Almacenamiento Velocidad de Acceso, Costo, Memoria Cache Memoria Ppal. Volátil Almacenamiento

Más detalles

TRANSACCIONES, AISLAMIENTO Y CANDADOS. Bases de Datos Ingeniería de Sistemas Universidad Nacional de Colombia 2013

TRANSACCIONES, AISLAMIENTO Y CANDADOS. Bases de Datos Ingeniería de Sistemas Universidad Nacional de Colombia 2013 TRANSACCIONES, AISLAMIENTO Y CANDADOS Bases de Datos Ingeniería de Sistemas Universidad Nacional de Colombia 2013 Ejemplo de una cuenta corriente RETIRO Ingrese retiro Lea saldo del cliente A Si saldo

Más detalles