Синхронізація даних (Data Synchronization)
Синхронізація — це процес забезпечення ідентичності даних у різних системах або на різних пристроях.
Modes: 1. One-way (Mirroring). 2. Two-way (Bidirectional). 3. Continuous (Real-time). Techniques: File-level vs Block-level sync, delta encoding, version vectors, last-writer-wins resolution.
graph LR
Center["Синхронізація даних (Data Synchronization)"]:::main
Rel_synthetic_biology["synthetic-biology"]:::related -.-> Center
click Rel_synthetic_biology "/terms/synthetic-biology"
classDef main fill:#7c3aed,stroke:#8b5cf6,stroke-width:2px,color:white,font-weight:bold,rx:5,ry:5;
classDef pre fill:#0f172a,stroke:#3b82f6,color:#94a3b8,rx:5,ry:5;
classDef child fill:#0f172a,stroke:#10b981,color:#94a3b8,rx:5,ry:5;
classDef related fill:#0f172a,stroke:#8b5cf6,stroke-dasharray: 5 5,color:#94a3b8,rx:5,ry:5;
linkStyle default stroke:#4b5563,stroke-width:2px;
🧒 Простими словами
Це як двоє музикантів, які грають одну мелодію в різних кімнатах. Синхронізація — це метроном, який допомагає їм потрапляти в кожну ноту одночасно. Якщо один пришвидшиться, метроном підкаже іншому теж грати швидше, щоб вони не збилися з ритму.
🤓 Expert Deep Dive
На технічному рівні головна проблема — це 'Конфлікти редагування'. Якщо два користувачі змінили один і той же рядок в офлайні, а потім підключилися до мережі, система має вирішити, чиї зміни зберегти. Для цього використовуються 'Векторні годинники' (Vector Clocks) або 'CRDTs' (Conflict-free Replicated Data Types) — спеціальні типи даних, які дозволяють автоматично об'єднувати зміни без ризику втрати інформації.