jueves, 25 de agosto de 2011

"SERIABILIDAD"


SERIABILIDAD

La serialización es el criterio de lo correcto, para el control de la concurrencia. Un conjunto entrelazado de transacciones es correcto si es serializable. Es decir si produce el mismo resultado mediante la ejecución en serie de las mismas transacciones. Dado un conjunto de transacciones entrelazadas, cualquier ejecución de esas transacciones se dice que es una calendarización (“scheduling”)

Formas de planificar la seriabilidad:

 1) por conflicto

2) por visión

Seriabilidad por conflicto

·         Eliminar conflictos entre dos o más transacciones

·         Operaciones sobre los mismos datos en más de una transacción *

·         Tipos de operaciones:

Seriabilidad por visión

·         Se basa en definir una regla de equivalencia menos estricta que la de conflicto.

·         Pero basándose solo en las operaciones de lectura y escritura.

·         Se puede considerar como un refinamiento de la equivalencia por conflicto

Serialización es el criterio de corrección importante de ejecuciones transacciones concurrentes. It is considered the highest level of isolation between transactions , and plays an essential role in concurrency control . Es considerado el más alto nivel de aislamiento entre transacciones , y juega un papel esencial en el control de concurrencia . As such it is supported in all general purpose database systems. Strong strict two-phase locking (SS2PL) is a popular serializability mechanism utilized in most of the database systems (in various variants) since their early days in the 1970s. Como tal, es compatible con todos los sistemas de bases de datos de propósito general. Fuerte estricto bloqueo de dos fases (SS2PL) es un mecanismo de serialización populares utilizadas en la mayoría de los sistemas de base de datos (en diversas variantes) desde sus inicios en la década de 1970.

·         Distributed serializability is the serializability of a schedule of a transactional distributed system (eg, a distributed database system). Serialización distribuida es la serialización de un programa de una transacción de sistemas distribuidos (por ejemplo, una base de datos distribuida del sistema). With the proliferation of the Internet , Cloud computing , Grid computing , and small, portable, powerful computing devices (eg, smartphones ) the need for effective distributed serializability techniques to ensure correctness in, and among distributed applications seems to increase. Commitment ordering [ 4 ] [ 5 ] [ 6 ] [ 7 ] (or Commit ordering ; CO; introduced publicly in 1991) is a general serializability technique that allows to effectively achieve distributed serializability (and Global serializability ) across different (any) concurrency control mechanisms, also in a mixed heterogeneous environment with different mechanisms. Con la proliferación de la Internet , computación en nube , Grid Computing , y pequeños, dispositivos portátiles, computadoras de gran alcance (por ejemplo, los teléfonos inteligentes ) la necesidad de técnicas efectivas de serialización distribuidos para garantizar la exactitud de y entre las aplicaciones distribuidas parece aumentar. Compromiso ordenar [4 ] [5] [6] [7] (o Comité de pedido, CO, presentó públicamente en 1991) es una técnica que permite la serialización en general para lograr efectivamente distribuidos serialización (y serialización global ) a través de diferentes (los hay) los mecanismos de control de concurrencia, también en un entorno mixto heterogéneo con diferentes mecanismos. CO does not interfere with the mechanisms' operations, and also guarantees automatic distributed deadlock resolution. CO no interfiera con las operaciones de los mecanismos ", y también garantías automáticas de resolución distribuido callejón sin salida. Unlike other distributed serializability mechanisms, CO does not require the (costly) distribution of local concurrency control information (eg, local precedence relations, locks, timestamps, or tickets), a fact which provides scalability , and typically saves considerable overhead and delays. A diferencia de otros mecanismos de serialización distribuidos, CO no requiere de la distribución (costosas) de información local de control de concurrencia (por ejemplo, locales de relaciones de precedencia, las cerraduras, las marcas de tiempo, o billetes), lo que proporciona escalabilidad , y por lo general guarda una sobrecarga considerable y los retrasos. Thus, CO (including its variants , eg, SS2PL) is the only known effective general method for distributed serializability (and it is probably the only existing one ). Por lo tanto, CO (incluyendo sus variantes , por ejemplo, SS2PL) es el único método efectivo conocido general de serialización distribuidos (y es probable que sea el único existente ). It also allows the effective distribution of all other known concurrency control mechanisms. También permite la distribución efectiva de todos los demás conocidos los mecanismos de control de concurrencia. The popular SS2PL, which is a special case of CO and inherits many of CO's qualities, is the de-facto standard for distributed serializability (and Global serializability ) across multiple (SS2PL based) database systems since the 1980s. [ 4 ] CO has been utilized extensively since 1997 as a solution for distributed serializability in works on transactional processes , [ 8 ] [ 9 ] and more recently an optimistic version of CO has been proposed as a solution for Grid computing [ 10 ] and Cloud computing . [ 11 ] El SS2PL popular, que es un caso especial de CO y hereda muchas de las cualidades de CO, es el estándar de facto para la serialización distribuidos (y serialización global ) a través de múltiples sistemas de bases de datos (SS2PL base) desde la década de 1980. [4] CO ha sido utilizado ampliamente desde 1997 como una solución para la serialización distribuidos en las obras de los procesos transaccionales , [8] [9] y más recientemente una versión optimista de CO ha sido propuesta como una solución de computación Grid [10] y la computación en nube . [11]

·         Serializability theory provides the formal framework to reason about and analyze serializability and its techniques. La teoría de serialización proporciona el marco formal a la razón y analizar los secuencialidad y sus técnicas. Though it is mathematical in nature, its fundamentals are informally (without Mathematics notation) introduced below. A pesar de que es matemática en la naturaleza, sus fundamentos son de manera informal (sin notación matemática) se presentan a continuación.

·         Comment: Unless explicitly referenced or linked, most of the material about centralized ( vs . distributed) serializability in the following sections is covered in the text books (Bernstein et al. 1987)  and (Weikum and Vossen 2001).  However, the presentation of Commitment ordering in (Weikum and Vossen 2001, pages 102, 700) is partial and misses CO's essence (see Background in The History of Commitment Ordering

·         Secuencialidad es una propiedad de una transacción de horario (la historia). It relates to the isolation property of a database transaction . Se relaciona con el aislamiento de la propiedad de una transacción de base de datos .

·         Serializability of a schedule means equivalence (in the outcome, the database state, data values) to a serial schedule (ie, sequential with no transaction overlap in time) with the same transactions. Serialización de un programa de medios de equivalencia (en el resultado, el estado de la base de datos, los valores de datos) a una planificación secuencial (es decir, secuencial, sin que se solapen en el tiempo de transacción), con las mismas transacciones. It is the major criterion for the correctness of concurrent transactions' schedule, and thus supported in all general purpose database systems. Es el criterio más importante para la corrección del horario de transacciones concurrentes, y por ello apoya en todos los sistemas de bases de datos de propósito general.

·         The rationale behind serializability is the follow El fundamento de la serialización es el siguiente:

·         If each transaction is correct by itself, ie, meets certain integrity conditions, then a schedule that comprises any serial execution of these transactions is correct (its transactions still meet their conditions): "Serial" means that transactions do not overlap in time and cannot interfere with each other, ie, complete isolation between each

 Si cada transacción es correcta por sí mismo, es decir, cumple con ciertas condiciones de integridad, a continuación, un horario que comprende toda la ejecución en serie de estas transacciones es correcto (sus operaciones siguen cumpliendo las condiciones): "Serie" significa que las transacciones no se solapan en el tiempo y no puede interferir unos con otros, es decir, aislamiento, completa entre cada uno existe otro. Any order of the transactions is legitimate, if no dependencies among them exist, which is assumed (see comment below). Cualquier orden de las transacciones es legítimo, si no existen dependencias entre ellas, que se supone (ver comentario abajo). As a result, a schedule that comprises any execution (not necessarily serial) that is equivalent (in its outcome) to any serial execution of these transactions, is correct. Como resultado, un horario que comprende toda la ejecución (no necesariamente de serie) que es equivalente (en sus resultados) a cualquier ejecución en serie de estas operaciones, es la correcta.



En ciencias de la computación , en el contexto de almacenamiento y transmisión de datos, serialización es el proceso de convertir una estructura de datos o de objetos estado en un formato que puede ser almacenado (por ejemplo, en un archivo de búfer o memoria, o transmitir a través de una red de conexión de enlace ) y "resucitado" más adelante en el mismo u otro entorno informático. Cuando la serie de bits resultante se volverá a leer de acuerdo con el formato de serialización, se puede utilizar para crear un clon semánticamente idéntico del objeto original. For many complex objects, such as those that make extensive use of references , this process is not straightforward. Para muchos objetos complejos, como los que hacen un amplio uso de referencias , este proceso no es sencillo. Serialization of object oriented objects does not include any of their associated methods with which they were previously inextricably linked. Serialización de orientación a objetos objetos no incluye ninguno de sus asociados los métodos con los que antes estaban inextricablemente ligados.

This process of serializing an object is also called deflating or marshalling an object.  The opposite operation, extracting a data structure from a series of bytes, is deserialization (which is also called inflating or unmarshalling ). Este proceso de serialización de un objeto también se conoce como deflación o clasificación de un objeto.  La operación inversa, la extracción de una estructura de datos de una serie de bytes, es deserialización (que también se conoce como la inflación o unmarshalling).

Serialización establece lo siguiente:

·         a method of persisting objects which is more convenient than writing their properties to a text file on disk, and re-assembling them by reading this back in. un método de persistencia de objetos que es más conveniente que la escritura de sus propiedades a un archivo de texto en el disco y volver a montar la lectura de este nuevo pulg

·         a method of remote procedure calls , eg, as inSOAPun método de llamadas a procedimientos remotos , por ejemplo, como en JABÓN

·         a method for distributing objects, especially in software componentry such as COM , CORBA , etc. un método para distribuir los objetos, sobre todo en componentry del software tales como COM , CORBA , etc.

·         a method for detecting changes in time-varying data. un método para detectar cambios en los datos variables de tiempo.

2 comentarios: