Concurrencia Distribuida

Descubre el control de concurrencia distribuido DCC: PCC y OCC, cómo mantienen consistencia, aislamiento y atomicidad en bases de datos distribuidas.

31 ago 2025 • 4 min de lectura • Equipo Q2BSTUDIO

Inteligencia-Artificial-

En los sistemas distribuidos modernos, múltiples usuarios y aplicaciones acceden y modifican datos de forma concurrente. Sin el control adecuado, esto deriva en inconsistencias, condiciones de carrera o fallos. Aquí entra en juego el control de concurrencia distribuido DCC, un conjunto de técnicas para coordinar operaciones concurrentes de forma segura a través de nodos y bases de datos distribuidas.

Qué es el control de concurrencia distribuido

Imagina a una clienta, Alicia, transfiriendo dinero entre su cuenta de ahorros y su cuenta corriente en un sistema bancario distribuido. Al mismo tiempo, otra transacción intenta cargar una cuota de préstamo sobre la cuenta corriente. Sin coordinación, estas operaciones podrían pisarse entre sí y producir saldos incorrectos o estados inconsistentes. El DCC garantiza que los conflictos se gestionen de manera segura en todos los nodos.

Objetivos clave

Consistencia: la base de datos permanece válida tras cada transacción. Aislamiento: las transacciones se comportan como si se ejecutaran una tras otra. Atomicidad: cada transacción se completa por completo o no se aplica.

Escenario bancario

Estado inicial: Ahorros 5000 y Corriente 2000. Transacciones: T1 transferir 1000 de Ahorros a Corriente. T2 pagar préstamo deduciendo 1500 de Corriente.

Estrategias principales de DCC

Existen dos enfoques predominantes para gestionar la concurrencia en sistemas distribuidos: control de concurrencia pesimista PCC y control de concurrencia optimista OCC.

1. Control de concurrencia pesimista PCC

PCC asume que los conflictos son probables y los previene bloqueando los datos antes de acceder a ellos. Si otra transacción necesita los mismos datos, debe esperar.

Funcionamiento resumido PCC

T1 bloquea Ahorros en exclusivo y Corriente en exclusivo, descuenta 1000 de Ahorros y suma 1000 a Corriente, confirma y libera bloqueos. T2 intenta operar sobre Corriente pero espera hasta que T1 libera, luego bloquea Corriente, descuenta 1500 y confirma.

Línea temporal simplificada PCC

t1 T1 bloquea Ahorros. t2 T1 bloquea Corriente. t3 T1 descuenta 1000 de Ahorros. t4 T1 suma 1000 a Corriente y T2 queda en espera. t5 T1 confirma y libera bloqueos, T2 bloquea Corriente y descuenta 1500. t6 T2 confirma.

Puntos clave PCC

Los bloqueos evitan conflictos. Otras transacciones esperan hasta liberar. Adecuado para niveles de aislamiento Repeatable Read y Serializable.

Ventajas PCC

Prevención proactiva de conflictos. Adecuado en entornos con alta contención.

Desventajas PCC

Posibles interbloqueos deadlocks. Menor concurrencia si muchas transacciones esperan bloqueos.

2. Control de concurrencia optimista OCC

OCC asume que los conflictos son poco frecuentes, por lo que no bloquea datos. Las transacciones avanzan con copias locales y validan al confirmar. Si hay conflicto, abortan y reintentan.

Funcionamiento resumido OCC

T1 lee Ahorros 5000 y Corriente 2000, calcula localmente Ahorros 4000 y Corriente 3000, valida que nadie cambió esos registros y entonces escribe y confirma. T2 lee Corriente 2000, calcula localmente 500, intenta validar, detecta conflicto si T1 ya confirmó y por tanto aborta y reintenta con el nuevo estado.

Línea temporal simplificada OCC

t1 T1 lee Ahorros y Corriente, T2 lee Corriente. t2 ambas actualizan copias locales. t3 T1 valida sin conflicto, T2 valida y detecta conflicto. t4 T1 confirma 4000 y 3000, T2 aborta y reintenta.

Puntos clave OCC

Sin bloqueos durante el procesamiento. Los conflictos se detectan al confirmar y disparan reintentos. Conveniente para Read Committed y Read Uncommitted cuando el conflicto es bajo.

Ventajas OCC

Sin sobrecarga de bloqueos y alta concurrencia cuando hay poca contención.

Desventajas OCC

Más reintentos en escenarios con alta contención. Requiere lógica de validación cuidadosa y correcta gestión de versiones.

Relación entre técnicas y niveles de aislamiento

PCC soporta Repeatable Read y Serializable, evitando lecturas sucias y no repetibles, y garantizando serializabilidad. OCC encaja con Read Committed y Read Uncommitted, validando al confirmar y permitiendo mayor concurrencia a costa de reintentos.

Cómo elegir entre PCC y OCC

Si tu carga tiene alta contención, operaciones de larga duración o estricta necesidad de serializabilidad, PCC suele ser la opción. Si tu patrón de acceso es mayoritariamente de lectura, con conflictos raros y transacciones cortas, OCC ofrece mayor rendimiento. En la práctica, muchos sistemas combinan ambos enfoques según tabla o tipo de operación, apoyándose en versiones multiversión MVCC, relojes lógicos y protocolos distribuidos como dos fases 2PC y consenso.

En Q2BSTUDIO ayudamos a diseñar e implementar arquitecturas de datos y microservicios con control de concurrencia distribuido robusto, integradas con servicios cloud aws y azure, observabilidad y pipelines CI CD. Si necesitas aplicaciones a medida y software a medida resiliente y seguro, podemos acompañarte de principio a fin. Descubre cómo abordamos el desarrollo multiplataforma y la escalabilidad en nuestra página de software a medida y aplicaciones a medida, y cómo desplegamos infraestructuras elásticas y seguras en servicios cloud aws y azure.

Somos especialistas en inteligencia artificial e ia para empresas, diseño de agentes IA, ciberseguridad y pentesting, servicios inteligencia de negocio y analítica avanzada con power bi, además de integración continua, automatización de procesos y dataops. Si buscas un socio tecnológico para elevar la consistencia, el rendimiento y la seguridad de tus sistemas distribuidos, Q2BSTUDIO es tu aliado para construir soluciones listas para producción con alto nivel de servicio y costes optimizados.

¿UNA PAUSA?

Juega un momento antes de irte

NUESTROS SERVICIOS

Cómo podemos ayudarte

Inteligencia artificial

Agentes de IA, chatbots y asistentes inteligentes que automatizan tareas y atienden a tus clientes 24/7 para mejorar la eficiencia de tu negocio.

Más info

Desarrollo de software

Aplicaciones web, móviles y de escritorio, intranets, e-commerce, SaaS y plataformas de gestión diseñadas para las necesidades concretas de tu empresa.

Más info

Servicios cloud

Migración, infraestructura, hosting gestionado, alta disponibilidad y seguridad en Microsoft Azure y Amazon Web Services para que tu negocio escale sin límites.

Más info

Ciberseguridad y pentesting

Auditorías de seguridad, test de intrusión (pentesting) y protección de aplicaciones, datos e infraestructura on-premise y cloud, con hacking ético y cumplimiento normativo.

Más info

Business Intelligence

Cuadros de mando y análisis de datos con Power BI: integramos tus fuentes, diseñamos dashboards y KPIs y convertimos tus datos en decisiones.

Más info

Automatización de procesos

Automatizamos tareas repetitivas y conectamos tus aplicaciones con n8n, Power Automate, Make y RPA, eliminando trabajo manual y aumentando la productividad.

Más info

Formación para empresas

Formamos a tus equipos en tecnología con criterio: desarrollo web, bases de datos, Git, buenas prácticas y seguridad, automatización con n8n, inteligencia artificial para empresas y creación de soluciones de IA con Azure AI Foundry.

Más info

Auditoría de código

Auditamos el código que creas tú, tu equipo o una IA: te decimos qué está bien y qué mejorar, lo securizamos y lo dejamos listo para producción, web o app.

Más info

Generación de imágenes con IA

Creamos por ti las imágenes que necesita tu negocio con inteligencia artificial: producto, redes, publicidad, ilustración y avatares. Tú nos dices qué quieres y te lo entregamos listo para usar.

Más info

Generación de vídeos con IA

Creamos por ti vídeos con inteligencia artificial: promocionales, para redes, presentadores virtuales, doblaje y animaciones. Nos cuentas la idea y te lo entregamos montado y listo para publicar.

Más info

Avatares conversacionales con IA

Creamos avatares conversacionales con IA —humanos digitales con cara y voz— que atienden a tus clientes y equipos con el conocimiento de tu empresa, en tu web, monitores interactivos, WhatsApp o Teams.

Más info

Marketing Online e IA

Google Ads, Meta Ads, LinkedIn Ads y posicionamiento en motores de IA (GEO/AEO): captamos clientes y hacemos que tu marca aparezca donde te buscan, también en ChatGPT, Gemini y Perplexity.

Más info

¿Tienes un proyecto en mente?

Cuéntanos tu visión y la convertimos en una solución de software. Sea cual sea el alcance, hacemos realidad tu idea.

Live Chat