Data Replication
Data replication, veri kopyalarını konumlara yayarak availability, durability ve fault tolerance'ı artırır; senkron veya asenkron yöntemler ve farklı consistency guarantee'leri kullanır.
Data replication, tek hata noktalarını azaltmak ve read throughput ile disaster recovery'yi iyileştirmek için veriyi birden çok konuma dağıtır. Senkron replication (güncellemeleri gerçek zamanlı olarak atomik bir şekilde tüm kopyalara uygular, strong consistency sağlar ancak latency'yi artırır), asenkron replication (commit sonrası kopyaları günceller, write latency'yi azaltır ancak gecikmeye izin verir) ve semi-synchronous replication (latency ile consistency'yi dengelemek için replica'ların bir alt kümesinden acknowledgment alır) destekler. Yaygın topolojiler master-slave (primary-secondary), multi-master (active-active) ve peer-to-peer'ı içerir. Temel zorluklar, replica'lar arasında data consistency'yi sürdürmek, multi-master kurulumlarında conflict çözmek, network latency, clock skew ve schema evolution'ı yönetmek, ayrıca upgrade sırasında data drift'i ele almaktır. Consistency management için kullanılan teknikler arasında consensus protokolleri (örn. Paxos, Raft), write-ahead log'lar, version vector'ler ve belirli veri tipleri için CRDT'ler bulunur. Bir replication stratejisi seçerken RPO/RTO hedefleri, latency bütçeleri, bandwidth, data locality ve data replication, auditing ile retention ile ilgili regülasyon gereksinimleri göz önünde bulundurulmalıdır.
graph LR
Center["Data Replication"]:::main
Rel_data_recovery["data-recovery"]:::related -.-> Center
click Rel_data_recovery "/terms/data-recovery"
Rel_data_obfuscation["data-obfuscation"]:::related -.-> Center
click Rel_data_obfuscation "/terms/data-obfuscation"
Rel_data_integrity["data-integrity"]:::related -.-> Center
click Rel_data_integrity "/terms/data-integrity"
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;
🧒 5 yaşındaki gibi açıkla
Generated ELI5 content
🤓 Expert Deep Dive
Generated expert content
❓ Sık sorulan sorular
What is the purpose of data replication?
To increase availability, reliability, and fault tolerance by maintaining multiple copies of data in separate locations, enabling failover, disaster recovery, load distribution, and durability.
What are the main types of replication?
Synchronous (updates all replicas atomically), semi-synchronous (acknowledgment from some replicas), and asynchronous (updates copied later).
What is conflict resolution in replication?
In multi-master setups, concurrent writes may conflict; use last-writer-wins, version vectors, CRDTs, or application-specific strategies.
What is replication lag?
The delay between a write and its propagation to replicas, affecting read freshness.
What are common replication topologies?
Master-slave/primary-secondary, multi-master/active-active, and peer-to-peer.
Are CRDTs always suitable?
CRDTs help with certain data types and operations; not all data models benefit; require careful data design.