Red de conocimientos turísticos - Conocimientos sobre calendario chino - ¿Cuáles son los niveles de aislamiento de transacciones?

¿Cuáles son los niveles de aislamiento de transacciones?

Hay cuatro niveles de aislamiento de transacciones, de menor a mayor: lectura no confirmada, lectura confirmada, lectura repetible y serializable. En el funcionamiento concurrente de las cosas, pueden producirse lecturas sucias casuales, lecturas no repetibles y lecturas fantasmas.

1. El primer nivel de aislamiento: lectura no confirmada (lectura no confirmada)

Si una transacción ha comenzado a escribir datos, otra transacción no puede escribir datos al mismo tiempo, pero está permitido Si otras transacciones leen esta fila de datos, este nivel de aislamiento se puede lograr mediante un "bloqueo de escritura exclusivo", pero no excluye los hilos de lectura. Esto evita la pérdida de actualizaciones, pero pueden ocurrir lecturas sucias, lo que significa que la transacción B lee datos no confirmados de la transacción A.

La pérdida de actualizaciones se solucionó, pero aún pueden ocurrir lecturas sucias.

2. El segundo nivel de aislamiento: lectura confirmada (lectura confirmada)

Si es una transacción de lectura (hilo), otras transacciones pueden leer y escribir. Al escribir la transacción, otras transacciones tienen prohibido acceder a la fila de datos. Este nivel de aislamiento evita lecturas sucias, pero pueden ocurrir lecturas no repetibles. La transacción A lee los datos por adelantado, la transacción B actualiza los datos y confirma la transacción, y cuando la transacción A lee los datos nuevamente, los datos han cambiado.

Se resolvieron problemas de pérdida de actualización y lectura sucia.

3. El tercer nivel de aislamiento: lectura repetible (lectura repetible)

La lectura repetible se refiere a leer los mismos datos varias veces dentro de una transacción. Antes de que finalice la transacción, otras transacciones. No se puede acceder a los datos, por lo que los datos leídos dos veces en la misma transacción son los mismos, por lo que se denomina nivel de aislamiento de lectura repetible. Las transacciones que leen los datos tendrán prohibido escribir transacciones y las transacciones de escritura prohíben cualquier otra transacción. evitando lecturas no repetibles y lecturas sucias, pero a veces pueden ocurrir lecturas fantasma.

La transacción de lectura de datos se puede realizar a través del "*** espejo de lectura compartido" y el "bloqueo de escritura exclusivo".

Resuelve el problema de las actualizaciones perdidas, las lecturas sucias, las lecturas no repetibles, pero también se producirán lecturas fantasma.

4. El cuarto nivel de aislamiento: Serializable (serializable)

Proporciona un aislamiento de transacciones estricto, que requiere que las transacciones se ejecuten en serie y las transacciones solo se pueden ejecutar una tras otra. no se puede ejecutar al mismo tiempo. La serialización no se puede lograr únicamente mediante "bloqueos a nivel de fila". Se deben utilizar otros mecanismos para garantizar que la transacción que ejecuta la operación de consulta no acceda a los datos recién insertados.

La serialización es el nivel de aislamiento de transacciones más alto y también el más costoso. El rendimiento es muy bajo y generalmente rara vez se usa. En este nivel, las transacciones se ejecutan secuencialmente, lo que no solo evita lecturas sucias y. lecturas no repetibles, pero también evita lecturas sucias y también se evitan lecturas fantasma.

Elementos básicos de las transacciones (ACID)

1. Atomicidad: una vez iniciada la transacción, todas las operaciones se completan o no, y es imposible estancarse en el enlace intermedio. Si se produce un error durante la ejecución de la transacción, se revertirá al estado anterior al inicio de la transacción y todas las operaciones serán como si no hubieran sucedido. Es decir, las cosas son un todo indivisible, al igual que los átomos que se aprenden en química, que son las unidades básicas de la materia.

2. Consistencia: antes y después de que comience y finalice la transacción, las restricciones de integridad de la base de datos no se destruyen. Por ejemplo, si A transfiere dinero a B, es imposible que A deduzca el dinero pero B no lo reciba. ​?

3. Aislamiento: al mismo tiempo, solo una transacción puede solicitar los mismos datos y no hay interferencia entre diferentes transacciones. Por ejemplo, A está retirando dinero de una tarjeta bancaria. B no puede transferir dinero a esta tarjeta antes de que se complete el proceso de retiro de A.

4. Durabilidad: una vez completada la transacción, todas las actualizaciones de la base de datos realizadas por la transacción se guardarán en la base de datos y no se podrán revertir.

Referencia para el contenido anterior: Nivel de aislamiento de transacciones - Enciclopedia Baidu

ever Pages de Microsoft en muchos aspectos, todavía existen muchas diferencias. La diferencia más esencial es que ambas están organizadas e implementadas en función de diferentes especificaciones técnicas: las plataformas de servidor WEB también tienen diferentes requisitos. 1. Tecnología JSP: la tecnología JSP abierta y la tecnología ASP son obviamente diferentes: los desarrolladores tendrán una comprensión diferente después de tener una comprensión profunda de sus respectivos métodos de diseño de sistemas de software. La plataforma y el servidor en los que se basa la tecnología JSP son independientes entre sí. El soporte de entrada proviene de una amplia gama de kits de herramientas, componentes de servidor y productos de bases de datos especializados y variados proporcionados por los desarrolladores. Por el contrario, la tecnología ASP depende principalmente del soporte técnico de Microsoft. 1. Independencia de plataforma y servidor La tecnología JSP se basa en un método de escritura. A partir de entonces, puede ejecutarse en cualquier entorno con estructura de sintaxis JavaTM. A diferencia del pasado, que dependía de una única plataforma o desarrollador, la tecnología JSP puede ejecutarse en cualquier servidor WEB y admite una variedad de kits de herramientas de muchos desarrolladores. Dado que ASP es un componente de desarrollo del lado del cliente y del servidor basado en la tecnología de control Activex, la tecnología ASP se limita básicamente a la plataforma del sistema operativo Microsoft. El principal entorno de trabajo de ASP es la estructura de la aplicación IIS de Microsoft, y debido a las características de la plataforma. Objetos Activex, tecnología ASP No es fácil trabajar en un servidor WEB multiplataforma. La tecnología ASP no se puede implementar fácilmente en un servidor WEB multiplataforma. Aunque la tecnología ASP puede obtener componentes y servicios a través de productos de terceros para lograr aplicaciones multiplataforma, los objetos Activex deben colocarse en la plataforma seleccionada con anticipación. 2. Proceso de desarrollo abierto y código fuente abierto La empresa SUN aplica el proceso de asociación JAVA para desarrollar tecnología JSP. Desde 1995, SUN ha utilizado este enfoque de proceso abierto para desarrollar y modificar la tecnología y las especificaciones JAVA junto con la organización internacional JAVA. En términos de productos JSP, SUN otorga licencias a proveedores de herramientas (como Macromedia), empresas alianzas (como Apache, Netscape), usuarios finales, colaboradores, etc. Recientemente, SUN lanzó el código original de las últimas versiones de JSP y JavaTM Servlet (JSP 1.1, JAVA SERVLET 2.2) para Apache para que JSP y Apache puedan trabajar en estrecha colaboración para el desarrollo. Apache, SUN y muchas otras empresas e individuos han establecido públicamente un poderoso organismo asesor para poner la información a disposición de cualquier empresa o individuo de forma gratuita. La información es gratuita para cualquier empresa o particular. (Ver: http://jakarta.apache.org) La interfaz de programación de aplicaciones (API) JSP es sin duda un éxito y seguirá mejorando a medida que la organización JAVA siga abriéndose y expandiéndose. Por el contrario, la tecnología ASP está impulsada íntegramente por la propia Microsoft y se basa en un proceso de desarrollo exclusivo y cerrado.
  • ¿Pueden los humanos cavar en la tierra?
  • Información del vídeo de baile valiente