Definición: ¿Qué significa la concurrencia de la base de datos?
La concurrencia de bases de datos es la capacidad de una base de datos para permitir que varios usuarios afecten a varias transacciones. Esta es una de las principales propiedades que separa una base de datos de otras formas de almacenamiento de datos, como las hojas de cálculo.
La capacidad de ofrecer simultaneidad es exclusiva de las bases de datos. Las hojas de cálculo u otros medios de almacenamiento de archivos planos a menudo se comparan con las bases de datos, pero difieren en este aspecto importante.
Las hojas de cálculo no pueden ofrecer a varios usuarios la capacidad de ver y trabajar con los diferentes datos en el mismo archivo, porque una vez que el primer usuario abre el archivo, está bloqueado para otros usuarios. Otros usuarios pueden leer el archivo, pero no pueden editar los datos.
Techinfo explica la concurrencia de bases de datos
Los problemas causados por la concurrencia de la base de datos son incluso más importantes que la capacidad de admitir transacciones concurrentes.
Por ejemplo, cuando un usuario está cambiando datos, pero aún no ha guardado (confirmado) esos datos, entonces la base de datos no debe permitir que otros usuarios que consultan los mismos datos vean los datos cambiados y no guardados. En cambio, el usuario solo debe ver los datos originales.
Casi todas las bases de datos tratan la concurrencia de la misma manera, aunque la terminología puede diferir. El principio general es que los datos modificados, pero no guardados se guardan en algún tipo de registro o archivo temporal.
Una vez que se guarda, se escribe en el almacenamiento físico de la base de datos en lugar de los datos originales. Siempre que el usuario que realiza el cambio no haya guardado los datos, solo él debería poder ver los datos que está cambiando.
Todos los demás usuarios que soliciten los mismos datos deben ver los datos que existían antes del cambio. Una vez que el usuario guarda los datos, las nuevas consultas deberían revelar el nuevo valor de los datos.