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 • Equip 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?

Juga una estona abans de marxar

ELS NOSTRES SERVEIS

Com et podem ajudar

Intel·ligència artificial

Agents d'IA, chatbots i assistents intel·ligents que automatitzen tasques i atenen els teus clients 24/7 per millorar l'eficiència del teu negoci.

Més info

Desenvolupament de programari

Aplicacions web, mòbils i d'escriptori, intranets, e-commerce, SaaS i plataformes de gestió dissenyades per a les necessitats concretes de la teva empresa.

Més info

Serveis cloud

Migració, infraestructura, hosting gestionat, alta disponibilitat i seguretat en Microsoft Azure i Amazon Web Services perquè el teu negoci escali sense límits.

Més info

Ciberseguretat i pentesting

Auditories de seguretat, test d'intrusió (pentesting) i protecció d'aplicacions, dades i infraestructura on-premise i cloud, amb hacking ètic i compliment normatiu.

Més info

Business Intelligence

Quadres de comandament i anàlisi de dades amb Power BI: integrem les teves fonts, dissenyem dashboards i KPIs i convertim les teves dades en decisions.

Més info

Automatització de processos

Automatitzem tasques repetitives i connectem les teves aplicacions amb n8n, Power Automate, Make i RPA, eliminant treball manual i augmentant la productivitat.

Més info

Formació per a empreses

Formem els teus equips en tecnologia amb criteri: desenvolupament web, bases de dades, Git, bones pràctiques i seguretat, automatització amb n8n, intel·ligència artificial per a empreses i creació de solucions d'IA amb Azure AI Foundry.

Més info

Auditoria de codi

Auditem el codi que creguis tu, el teu equip o una IA: et diem què està bé i què millorar, el securitzem i el deixem llest per a producció, web o app.

Més info

Generació d'imatges amb IA

Creem per tu les imatges que necessita el teu negoci amb intel·ligència artificial: producte, xarxes, publicitat, il·lustració i avatars. Tu ens dius què vols i t'ho lliurem llest per fer servir.

Més info

Generació de vídeos amb IA

Creem per tu vídeos amb intel·ligència artificial: promocionals, per a xarxes, presentadors virtuals, doblatge i animacions. Ens comptes la idea i t'ho lliurem muntat i llest per publicar.

Més info

Avatars conversacionals amb IA

Creem avatars conversacionals amb IA —humans digitals amb cara i veu— que atenen els teus clients i equips amb el coneixement de la teva empresa, a la teva web, monitors interactius, WhatsApp o Teams.

Més info

Màrqueting Online i IA

Google Ads, Meta Ads, LinkedIn Ads i posicionament en motors d'IA (GEO/AEO): captem clients i fem que la teva marca aparegui on et busquen, també a ChatGPT, Gemini i Perplexity.

Més info

Tens un projecte en ment?

Explica'ns la teva visió i la convertim en una solució de programari. Sigui quin sigui l'abast, fem realitat la teva idea.

Live Chat