{"id":2520,"date":"2025-06-06T00:13:08","date_gmt":"2025-06-06T00:13:08","guid":{"rendered":"https:\/\/diznr.com\/?p=2520"},"modified":"2025-06-06T00:13:08","modified_gmt":"2025-06-06T00:13:08","slug":"replication-techniques-and-its-types-in-distributed-computing","status":"publish","type":"post","link":"https:\/\/www.reilsolar.com\/pdf\/replication-techniques-and-its-types-in-distributed-computing\/","title":{"rendered":"Replication techniques and its Types in Distributed Computing"},"content":{"rendered":"<p>Replication techniques and its Types in Distributed Computing.<\/p>\n<p>[fvplayer id=&#8221;60&#8243;]<\/p>\n<h3 data-start=\"0\" data-end=\"71\"><strong data-start=\"4\" data-end=\"69\">Replication Techniques and Its Types in Distributed Computing<\/strong><\/h3>\n<p data-start=\"73\" data-end=\"360\"><strong data-start=\"73\" data-end=\"88\">Replication<\/strong> in distributed computing refers to the process of creating and maintaining multiple copies of data or services across different nodes in a network. The primary goals of replication are <strong data-start=\"274\" data-end=\"357\">fault tolerance, high availability, performance improvement, and load balancing<\/strong>.<\/p>\n<h3 data-start=\"367\" data-end=\"405\"><strong data-start=\"370\" data-end=\"403\">1. Why is Replication Needed?<\/strong><\/h3>\n<p data-start=\"406\" data-end=\"809\"><strong data-start=\"408\" data-end=\"427\">Fault Tolerance<\/strong> \u2013 Ensures system availability even if some nodes fail.<br data-start=\"482\" data-end=\"485\" \/><strong data-start=\"487\" data-end=\"508\">High Availability<\/strong> \u2013 Users can access data even if some replicas go down.<br data-start=\"563\" data-end=\"566\" \/><strong data-start=\"568\" data-end=\"586\">Load Balancing<\/strong> \u2013 Distributes requests across replicas to avoid bottlenecks.<br data-start=\"647\" data-end=\"650\" \/><strong data-start=\"652\" data-end=\"679\">Performance Improvement<\/strong> \u2013 Reduces latency by placing replicas closer to users.<br data-start=\"734\" data-end=\"737\" \/><strong data-start=\"739\" data-end=\"759\">Data Consistency<\/strong> \u2013 Ensures all nodes have the same updated data.<\/p>\n<h2 data-start=\"816\" data-end=\"859\"><strong data-start=\"819\" data-end=\"857\">2. Types of Replication Techniques<\/strong><\/h2>\n<h3 data-start=\"861\" data-end=\"928\"><strong data-start=\"865\" data-end=\"888\">A. Data Replication<\/strong> (Used in Databases &amp; Storage Systems)<\/h3>\n<ol data-start=\"929\" data-end=\"1559\">\n<li data-start=\"929\" data-end=\"1153\">\n<p data-start=\"932\" data-end=\"961\"><strong data-start=\"932\" data-end=\"959\">Synchronous Replication<\/strong><\/p>\n<ul data-start=\"965\" data-end=\"1153\">\n<li data-start=\"965\" data-end=\"1040\">All copies are updated immediately before the transaction is committed.<\/li>\n<li data-start=\"1044\" data-end=\"1096\">Ensures strong consistency but has high latency.<\/li>\n<li data-start=\"1100\" data-end=\"1153\">Example: Banking transactions, financial systems.<\/li>\n<\/ul>\n<\/li>\n<li data-start=\"1155\" data-end=\"1382\">\n<p data-start=\"1158\" data-end=\"1188\"><strong data-start=\"1158\" data-end=\"1186\">Asynchronous Replication<\/strong><\/p>\n<ul data-start=\"1192\" data-end=\"1382\">\n<li data-start=\"1192\" data-end=\"1270\">Changes are first made to one replica and then propagated to others later.<\/li>\n<li data-start=\"1274\" data-end=\"1327\">Faster but may lead to temporary inconsistencies.<\/li>\n<li data-start=\"1331\" data-end=\"1382\">Example: Cloud storage (Google Drive, Dropbox).<\/li>\n<\/ul>\n<\/li>\n<li data-start=\"1384\" data-end=\"1559\">\n<p data-start=\"1387\" data-end=\"1421\"><strong data-start=\"1387\" data-end=\"1419\">Semi-Synchronous Replication<\/strong><\/p>\n<ul data-start=\"1425\" data-end=\"1559\">\n<li data-start=\"1425\" data-end=\"1512\">A middle ground where some replicas confirm updates before committing, but not all.<\/li>\n<li data-start=\"1516\" data-end=\"1559\">Balances between consistency and speed.<\/li>\n<\/ul>\n<\/li>\n<\/ol>\n<h3 data-start=\"1566\" data-end=\"1651\"><strong data-start=\"1570\" data-end=\"1600\">B. Computation Replication<\/strong> (Used in Distributed Computing &amp; Cloud Services)<\/h3>\n<ol data-start=\"1652\" data-end=\"2108\">\n<li data-start=\"1652\" data-end=\"1868\">\n<p data-start=\"1655\" data-end=\"1679\"><strong data-start=\"1655\" data-end=\"1677\">Active Replication<\/strong><\/p>\n<ul data-start=\"1683\" data-end=\"1868\">\n<li data-start=\"1683\" data-end=\"1737\">All replicas execute the same request in parallel.<\/li>\n<li data-start=\"1741\" data-end=\"1793\">Ensures consistency but requires more resources.<\/li>\n<li data-start=\"1797\" data-end=\"1868\">Used in <strong data-start=\"1807\" data-end=\"1825\">fault-tolerant<\/strong> systems (e.g., flight control software).<\/li>\n<\/ul>\n<\/li>\n<li data-start=\"1870\" data-end=\"2108\">\n<p data-start=\"1873\" data-end=\"1921\"><strong data-start=\"1873\" data-end=\"1919\">Passive Replication (Primary-Backup Model)<\/strong><\/p>\n<ul data-start=\"1925\" data-end=\"2108\">\n<li data-start=\"1925\" data-end=\"1991\">A primary node processes requests and updates secondary nodes.<\/li>\n<li data-start=\"1995\" data-end=\"2046\">If the primary node fails, a backup takes over.<\/li>\n<li data-start=\"2050\" data-end=\"2108\">Used in <strong data-start=\"2060\" data-end=\"2081\">high-availability<\/strong> services like databases.<\/li>\n<\/ul>\n<\/li>\n<\/ol>\n<h3 data-start=\"2115\" data-end=\"2146\"><strong data-start=\"2119\" data-end=\"2144\">C. Hybrid Replication<\/strong><\/h3>\n<ul data-start=\"2147\" data-end=\"2314\">\n<li data-start=\"2147\" data-end=\"2238\">A combination of active and passive replication to balance performance and reliability.<\/li>\n<li data-start=\"2239\" data-end=\"2314\">Example: Cloud-based <strong data-start=\"2262\" data-end=\"2287\">distributed databases<\/strong> like <strong data-start=\"2293\" data-end=\"2311\">Google Spanner<\/strong>.<\/li>\n<\/ul>\n<h3 data-start=\"2321\" data-end=\"2358\"><strong data-start=\"2324\" data-end=\"2356\">3. Challenges in Replication<\/strong><\/h3>\n<p data-start=\"2359\" data-end=\"2663\"><strong data-start=\"2362\" data-end=\"2384\">Consistency Issues<\/strong> \u2013 Ensuring all copies have the same data.<br data-start=\"2426\" data-end=\"2429\" \/><strong data-start=\"2432\" data-end=\"2451\">Network Latency<\/strong> \u2013 Syncing replicas across long distances takes time.<br data-start=\"2504\" data-end=\"2507\" \/><strong data-start=\"2510\" data-end=\"2533\">Conflict Resolution<\/strong> \u2013 Handling simultaneous updates from different nodes.<br data-start=\"2587\" data-end=\"2590\" \/><strong data-start=\"2593\" data-end=\"2613\">Storage Overhead<\/strong> \u2013 Keeping multiple copies requires extra space.<\/p>\n<p data-start=\"2665\" data-end=\"2744\" data-is-last-node=\"\" data-is-only-node=\"\">Would you like a more detailed explanation of any specific replication type?<\/p>\n<p data-start=\"0\" data-end=\"222\">Here\u2019s a <strong data-start=\"9\" data-end=\"56\">complete and easy-to-understand explanation<\/strong> of <strong data-start=\"60\" data-end=\"102\">Replication Techniques and their Types<\/strong> in <strong data-start=\"106\" data-end=\"131\">Distributed Computing<\/strong>, ideal for students preparing for exams like GATE, or anyone learning distributed systems.<\/p>\n<hr data-start=\"224\" data-end=\"227\" \/>\n<h2 data-start=\"229\" data-end=\"280\">\ud83d\udd01 What is Replication in Distributed Computing?<\/h2>\n<p data-start=\"282\" data-end=\"443\"><strong data-start=\"282\" data-end=\"297\">Replication<\/strong> refers to the process of <strong data-start=\"323\" data-end=\"354\">maintaining multiple copies<\/strong> (replicas) of data or services across different nodes in a distributed system to ensure:<\/p>\n<ul data-start=\"445\" data-end=\"538\">\n<li data-start=\"445\" data-end=\"468\">\n<p data-start=\"447\" data-end=\"468\">\u2705 High Availability<\/p>\n<\/li>\n<li data-start=\"469\" data-end=\"490\">\n<p data-start=\"471\" data-end=\"490\">\u2705 Fault Tolerance<\/p>\n<\/li>\n<li data-start=\"491\" data-end=\"511\">\n<p data-start=\"493\" data-end=\"511\">\u2705 Load Balancing<\/p>\n<\/li>\n<li data-start=\"512\" data-end=\"538\">\n<p data-start=\"514\" data-end=\"538\">\u2705 Improved Performance<\/p>\n<\/li>\n<\/ul>\n<hr data-start=\"540\" data-end=\"543\" \/>\n<h2 data-start=\"545\" data-end=\"580\">\ud83d\udd0d Why Replication is Important?<\/h2>\n<ul data-start=\"582\" data-end=\"772\">\n<li data-start=\"582\" data-end=\"661\">\n<p data-start=\"584\" data-end=\"661\">If one server fails, another replica can serve the request (fault tolerance).<\/p>\n<\/li>\n<li data-start=\"662\" data-end=\"725\">\n<p data-start=\"664\" data-end=\"725\">It reduces latency by serving users from the nearest replica.<\/p>\n<\/li>\n<li data-start=\"726\" data-end=\"772\">\n<p data-start=\"728\" data-end=\"772\">Enhances system reliability and scalability.<\/p>\n<\/li>\n<\/ul>\n<hr data-start=\"774\" data-end=\"777\" \/>\n<h2 data-start=\"779\" data-end=\"816\">\ud83e\udde9 Types of Replication Techniques<\/h2>\n<h3 data-start=\"818\" data-end=\"845\">1. <strong data-start=\"825\" data-end=\"845\">Data Replication<\/strong><\/h3>\n<p data-start=\"846\" data-end=\"928\">Maintaining copies of <strong data-start=\"868\" data-end=\"876\">data<\/strong> (files, database records) across multiple machines.<\/p>\n<h4 data-start=\"930\" data-end=\"941\">Types:<\/h4>\n<ul data-start=\"942\" data-end=\"1160\">\n<li data-start=\"942\" data-end=\"1056\">\n<p data-start=\"944\" data-end=\"1056\"><strong data-start=\"944\" data-end=\"964\">Full Replication<\/strong>: Entire dataset is replicated to all nodes<br data-start=\"1007\" data-end=\"1010\" \/>\ud83d\udc49 High availability, but high storage cost.<\/p>\n<\/li>\n<li data-start=\"1058\" data-end=\"1160\">\n<p data-start=\"1060\" data-end=\"1160\"><strong data-start=\"1060\" data-end=\"1083\">Partial Replication<\/strong>: Only selected data is replicated<br data-start=\"1117\" data-end=\"1120\" \/>\ud83d\udc49 More efficient, but less redundant.<\/p>\n<\/li>\n<\/ul>\n<hr data-start=\"1162\" data-end=\"1165\" \/>\n<h3 data-start=\"1167\" data-end=\"1217\">2. <strong data-start=\"1174\" data-end=\"1217\">Synchronous vs Asynchronous Replication<\/strong><\/h3>\n<h4 data-start=\"1219\" data-end=\"1250\">\ud83d\udfe9 Synchronous Replication<\/h4>\n<ul data-start=\"1251\" data-end=\"1396\">\n<li data-start=\"1251\" data-end=\"1330\">\n<p data-start=\"1253\" data-end=\"1330\">All replicas must be updated <strong data-start=\"1282\" data-end=\"1329\">before the operation is considered complete<\/strong>.<\/p>\n<\/li>\n<li data-start=\"1331\" data-end=\"1364\">\n<p data-start=\"1333\" data-end=\"1364\">Ensures strong <strong data-start=\"1348\" data-end=\"1363\">consistency<\/strong>.<\/p>\n<\/li>\n<li data-start=\"1365\" data-end=\"1396\">\n<p data-start=\"1367\" data-end=\"1396\">Slower due to network delays.<\/p>\n<\/li>\n<\/ul>\n<p data-start=\"1398\" data-end=\"1458\">\u2705 Used in <strong data-start=\"1408\" data-end=\"1429\">financial systems<\/strong>, where accuracy is critical.<\/p>\n<h4 data-start=\"1460\" data-end=\"1492\">\ud83d\udfe8 Asynchronous Replication<\/h4>\n<ul data-start=\"1493\" data-end=\"1624\">\n<li data-start=\"1493\" data-end=\"1573\">\n<p data-start=\"1495\" data-end=\"1573\">Updates are sent to replicas <strong data-start=\"1524\" data-end=\"1533\">after<\/strong> the operation completes at the primary.<\/p>\n<\/li>\n<li data-start=\"1574\" data-end=\"1624\">\n<p data-start=\"1576\" data-end=\"1624\">Faster, but may cause temporary inconsistencies.<\/p>\n<\/li>\n<\/ul>\n<p data-start=\"1626\" data-end=\"1689\">\u2705 Suitable for <strong data-start=\"1641\" data-end=\"1677\">content delivery networks (CDNs)<\/strong> or backups.<\/p>\n<hr data-start=\"1691\" data-end=\"1694\" \/>\n<h3 data-start=\"1696\" data-end=\"1748\">3. <strong data-start=\"1703\" data-end=\"1748\">Primary-Backup (Master-Slave) Replication<\/strong><\/h3>\n<ul data-start=\"1750\" data-end=\"1956\">\n<li data-start=\"1750\" data-end=\"1818\">\n<p data-start=\"1752\" data-end=\"1818\">One node is the <strong data-start=\"1768\" data-end=\"1786\">primary\/master<\/strong>, others are <strong data-start=\"1799\" data-end=\"1817\">backups\/slaves<\/strong>.<\/p>\n<\/li>\n<li data-start=\"1819\" data-end=\"1886\">\n<p data-start=\"1821\" data-end=\"1886\">All writes go to the master, which then replicates to the slaves.<\/p>\n<\/li>\n<li data-start=\"1887\" data-end=\"1956\">\n<p data-start=\"1889\" data-end=\"1956\">Simple, but single point of failure unless failover is implemented.<\/p>\n<\/li>\n<\/ul>\n<hr data-start=\"1958\" data-end=\"1961\" \/>\n<h3 data-start=\"1963\" data-end=\"1998\">4. <strong data-start=\"1970\" data-end=\"1998\">Multi-Master Replication<\/strong><\/h3>\n<ul data-start=\"2000\" data-end=\"2154\">\n<li data-start=\"2000\" data-end=\"2054\">\n<p data-start=\"2002\" data-end=\"2054\">Multiple nodes can accept <strong data-start=\"2028\" data-end=\"2042\">read\/write<\/strong> operations.<\/p>\n<\/li>\n<li data-start=\"2055\" data-end=\"2099\">\n<p data-start=\"2057\" data-end=\"2099\">Conflict resolution mechanisms are needed.<\/p>\n<\/li>\n<li data-start=\"2100\" data-end=\"2154\">\n<p data-start=\"2102\" data-end=\"2154\">More complex, but highly <strong data-start=\"2127\" data-end=\"2153\">available and scalable<\/strong>.<\/p>\n<\/li>\n<\/ul>\n<p data-start=\"2156\" data-end=\"2232\">\u2705 Used in <strong data-start=\"2166\" data-end=\"2188\">collaborative apps<\/strong>, CRDTs, or eventually consistent databases.<\/p>\n<hr data-start=\"2234\" data-end=\"2237\" \/>\n<h3 data-start=\"2239\" data-end=\"2281\">5. <strong data-start=\"2246\" data-end=\"2281\">State Machine Replication (SMR)<\/strong><\/h3>\n<ul data-start=\"2283\" data-end=\"2472\">\n<li data-start=\"2283\" data-end=\"2352\">\n<p data-start=\"2285\" data-end=\"2352\">A system runs a <strong data-start=\"2301\" data-end=\"2329\">replicated state machine<\/strong> across multiple nodes.<\/p>\n<\/li>\n<li data-start=\"2353\" data-end=\"2408\">\n<p data-start=\"2355\" data-end=\"2408\">All replicas process the <strong data-start=\"2380\" data-end=\"2407\">same sequence of inputs<\/strong>.<\/p>\n<\/li>\n<li data-start=\"2409\" data-end=\"2472\">\n<p data-start=\"2411\" data-end=\"2472\">Requires <strong data-start=\"2420\" data-end=\"2444\">consensus algorithms<\/strong> like <strong data-start=\"2450\" data-end=\"2459\">Paxos<\/strong> or <strong data-start=\"2463\" data-end=\"2471\">Raft<\/strong>.<\/p>\n<\/li>\n<\/ul>\n<p data-start=\"2474\" data-end=\"2559\">\u2705 Used in <strong data-start=\"2484\" data-end=\"2509\">distributed databases<\/strong>, <strong data-start=\"2511\" data-end=\"2526\">blockchains<\/strong>, and <strong data-start=\"2532\" data-end=\"2558\">fault-tolerant systems<\/strong>.<\/p>\n<hr data-start=\"2561\" data-end=\"2564\" \/>\n<h3 data-start=\"2566\" data-end=\"2601\">6. <strong data-start=\"2573\" data-end=\"2601\">Quorum-Based Replication<\/strong><\/h3>\n<ul data-start=\"2603\" data-end=\"2784\">\n<li data-start=\"2603\" data-end=\"2681\">\n<p data-start=\"2605\" data-end=\"2681\">A write or read must be acknowledged by a <strong data-start=\"2647\" data-end=\"2668\">majority (quorum)<\/strong> of replicas.<\/p>\n<\/li>\n<li data-start=\"2682\" data-end=\"2744\">\n<p data-start=\"2684\" data-end=\"2744\">Ensures consistency without needing to contact all replicas.<\/p>\n<\/li>\n<li data-start=\"2745\" data-end=\"2784\">\n<p data-start=\"2747\" data-end=\"2784\">Balances performance and reliability.<\/p>\n<\/li>\n<\/ul>\n<p data-start=\"2786\" data-end=\"2836\">\u2705 Used in <strong data-start=\"2796\" data-end=\"2815\">Amazon DynamoDB<\/strong>, <strong data-start=\"2817\" data-end=\"2830\">Cassandra<\/strong>, etc.<\/p>\n<hr data-start=\"2838\" data-end=\"2841\" \/>\n<h2 data-start=\"2843\" data-end=\"2862\">\ud83e\udde0 Summary Table<\/h2>\n<div class=\"_tableContainer_16hzy_1\">\n<div class=\"_tableWrapper_16hzy_14 group flex w-fit flex-col-reverse\">\n<table class=\"w-fit min-w-(--thread-content-width)\" data-start=\"2864\" data-end=\"4101\">\n<thead data-start=\"2864\" data-end=\"2986\">\n<tr data-start=\"2864\" data-end=\"2986\">\n<th data-start=\"2864\" data-end=\"2891\" data-col-size=\"sm\">Replication Type<\/th>\n<th data-start=\"2891\" data-end=\"2945\" data-col-size=\"md\">Description<\/th>\n<th data-start=\"2945\" data-end=\"2986\" data-col-size=\"sm\">Best Use Case<\/th>\n<\/tr>\n<\/thead>\n<tbody data-start=\"3111\" data-end=\"4101\">\n<tr data-start=\"3111\" data-end=\"3234\">\n<td data-start=\"3111\" data-end=\"3138\" data-col-size=\"sm\"><strong data-start=\"3113\" data-end=\"3133\">Full Replication<\/strong><\/td>\n<td data-col-size=\"md\" data-start=\"3138\" data-end=\"3192\">All data on all nodes<\/td>\n<td data-col-size=\"sm\" data-start=\"3192\" data-end=\"3234\">High availability, low-latency reads<\/td>\n<\/tr>\n<tr data-start=\"3235\" data-end=\"3358\">\n<td data-start=\"3235\" data-end=\"3262\" data-col-size=\"sm\"><strong data-start=\"3237\" data-end=\"3260\">Partial Replication<\/strong><\/td>\n<td data-col-size=\"md\" data-start=\"3262\" data-end=\"3316\">Only part of data is replicated<\/td>\n<td data-col-size=\"sm\" data-start=\"3316\" data-end=\"3358\">Saves space, custom distribution<\/td>\n<\/tr>\n<tr data-start=\"3359\" data-end=\"3482\">\n<td data-start=\"3359\" data-end=\"3386\" data-col-size=\"sm\"><strong data-start=\"3361\" data-end=\"3376\">Synchronous<\/strong><\/td>\n<td data-col-size=\"md\" data-start=\"3386\" data-end=\"3440\">Updates all replicas before completion<\/td>\n<td data-col-size=\"sm\" data-start=\"3440\" data-end=\"3482\">Strong consistency needed<\/td>\n<\/tr>\n<tr data-start=\"3483\" data-end=\"3606\">\n<td data-start=\"3483\" data-end=\"3510\" data-col-size=\"sm\"><strong data-start=\"3485\" data-end=\"3501\">Asynchronous<\/strong><\/td>\n<td data-start=\"3510\" data-end=\"3564\" data-col-size=\"md\">Updates replicas after completion<\/td>\n<td data-col-size=\"sm\" data-start=\"3564\" data-end=\"3606\">Performance-sensitive systems<\/td>\n<\/tr>\n<tr data-start=\"3607\" data-end=\"3730\">\n<td data-start=\"3607\" data-end=\"3634\" data-col-size=\"sm\"><strong data-start=\"3609\" data-end=\"3627\">Primary-Backup<\/strong><\/td>\n<td data-col-size=\"md\" data-start=\"3634\" data-end=\"3688\">One master handles writes<\/td>\n<td data-col-size=\"sm\" data-start=\"3688\" data-end=\"3730\">Simple fault-tolerant setup<\/td>\n<\/tr>\n<tr data-start=\"3731\" data-end=\"3854\">\n<td data-start=\"3731\" data-end=\"3758\" data-col-size=\"sm\"><strong data-start=\"3733\" data-end=\"3749\">Multi-Master<\/strong><\/td>\n<td data-col-size=\"md\" data-start=\"3758\" data-end=\"3812\">All nodes accept writes<\/td>\n<td data-col-size=\"sm\" data-start=\"3812\" data-end=\"3854\">High scalability<\/td>\n<\/tr>\n<tr data-start=\"3855\" data-end=\"3977\">\n<td data-start=\"3855\" data-end=\"3887\" data-col-size=\"sm\"><strong data-start=\"3857\" data-end=\"3886\">State Machine Replication<\/strong><\/td>\n<td data-col-size=\"md\" data-start=\"3887\" data-end=\"3935\">Identical replicas process same input log<\/td>\n<td data-col-size=\"sm\" data-start=\"3935\" data-end=\"3977\">High-reliability systems<\/td>\n<\/tr>\n<tr data-start=\"3978\" data-end=\"4101\">\n<td data-start=\"3978\" data-end=\"4005\" data-col-size=\"sm\"><strong data-start=\"3980\" data-end=\"3996\">Quorum-Based<\/strong><\/td>\n<td data-col-size=\"md\" data-start=\"4005\" data-end=\"4059\">Majority agreement ensures consistency<\/td>\n<td data-col-size=\"sm\" data-start=\"4059\" data-end=\"4101\">Scalable and resilient databases<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<div class=\"sticky end-(--thread-content-margin) h-0 self-end select-none\">\n<div class=\"absolute end-0 flex items-end\"><\/div>\n<\/div>\n<\/div>\n<\/div>\n<hr data-start=\"4103\" data-end=\"4106\" \/>\n<h2 data-start=\"4108\" data-end=\"4140\">\ud83d\udcd8 Bonus: Real-World Examples<\/h2>\n<div class=\"_tableContainer_16hzy_1\">\n<div class=\"_tableWrapper_16hzy_14 group flex w-fit flex-col-reverse\">\n<table class=\"w-fit min-w-(--thread-content-width)\" data-start=\"4142\" data-end=\"4478\">\n<thead data-start=\"4142\" data-end=\"4196\">\n<tr data-start=\"4142\" data-end=\"4196\">\n<th data-start=\"4142\" data-end=\"4159\" data-col-size=\"sm\">System<\/th>\n<th data-start=\"4159\" data-end=\"4196\" data-col-size=\"sm\">Replication Used<\/th>\n<\/tr>\n<\/thead>\n<tbody data-start=\"4252\" data-end=\"4478\">\n<tr data-start=\"4252\" data-end=\"4306\">\n<td data-start=\"4252\" data-end=\"4273\" data-col-size=\"sm\"><strong data-start=\"4254\" data-end=\"4272\">Google Spanner<\/strong><\/td>\n<td data-col-size=\"sm\" data-start=\"4273\" data-end=\"4306\">Synchronous + SMR (Paxos)<\/td>\n<\/tr>\n<tr data-start=\"4307\" data-end=\"4361\">\n<td data-start=\"4307\" data-end=\"4328\" data-col-size=\"sm\"><strong data-start=\"4309\" data-end=\"4320\">MongoDB<\/strong><\/td>\n<td data-col-size=\"sm\" data-start=\"4328\" data-end=\"4361\">Primary-Backup (Replica Sets)<\/td>\n<\/tr>\n<tr data-start=\"4362\" data-end=\"4423\">\n<td data-start=\"4362\" data-end=\"4383\" data-col-size=\"sm\"><strong data-start=\"4364\" data-end=\"4377\">Cassandra<\/strong><\/td>\n<td data-start=\"4383\" data-end=\"4423\" data-col-size=\"sm\">Quorum-Based + Eventually Consistent<\/td>\n<\/tr>\n<tr data-start=\"4424\" data-end=\"4478\">\n<td data-start=\"4424\" data-end=\"4445\" data-col-size=\"sm\"><strong data-start=\"4426\" data-end=\"4433\">Git<\/strong><\/td>\n<td data-col-size=\"sm\" data-start=\"4445\" data-end=\"4478\">Full replication (DVCS)<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<div class=\"sticky end-(--thread-content-margin) h-0 self-end select-none\">\n<div class=\"absolute end-0 flex items-end\"><\/div>\n<\/div>\n<\/div>\n<\/div>\n<hr data-start=\"4480\" data-end=\"4483\" \/>\n<p data-start=\"4485\" data-end=\"4500\">Would you like:<\/p>\n<ul data-start=\"4501\" data-end=\"4626\">\n<li data-start=\"4501\" data-end=\"4544\">\n<p data-start=\"4503\" data-end=\"4544\">A visual diagram or chart of these types?<\/p>\n<\/li>\n<li data-start=\"4545\" data-end=\"4588\">\n<p data-start=\"4547\" data-end=\"4588\">A comparison with <strong data-start=\"4565\" data-end=\"4587\">consistency models<\/strong>?<\/p>\n<\/li>\n<li data-start=\"4589\" data-end=\"4626\">\n<p data-start=\"4591\" data-end=\"4626\">A short quiz to test understanding?<\/p>\n<\/li>\n<\/ul>\n<p data-start=\"4628\" data-end=\"4640\" data-is-last-node=\"\" data-is-only-node=\"\">Let me know!<\/p>\n<h3 data-start=\"4628\" data-end=\"4640\"><a href=\"https:\/\/www.ijcmas.com\/8-5-2019\/Tushar%20Kumar%20Pandey,%20et%20al.pdf\" target=\"_blank\" rel=\"noopener\">Replication techniques and its Types in Distributed Computing<\/a><\/h3>\n<h3 class=\"LC20lb MBeuO DKV0Md\"><a href=\"https:\/\/infoscience.epfl.ch\/server\/api\/core\/bitstreams\/87ef5536-53d4-41f7-9cd7-b550197f8c57\/content\" target=\"_blank\" rel=\"noopener\">Understanding Replication in Databases and Distributed &#8230;<\/a><\/h3>\n","protected":false},"excerpt":{"rendered":"<p>Replication techniques and its Types in Distributed Computing<\/p>\n","protected":false},"author":64,"featured_media":2521,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[84],"tags":[1442,1443],"class_list":["post-2520","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-distributed-computing","tag-data-replication-in-distributed-system","tag-replication-in-distributed-systems"],"_links":{"self":[{"href":"https:\/\/www.reilsolar.com\/pdf\/wp-json\/wp\/v2\/posts\/2520","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.reilsolar.com\/pdf\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.reilsolar.com\/pdf\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.reilsolar.com\/pdf\/wp-json\/wp\/v2\/users\/64"}],"replies":[{"embeddable":true,"href":"https:\/\/www.reilsolar.com\/pdf\/wp-json\/wp\/v2\/comments?post=2520"}],"version-history":[{"count":0,"href":"https:\/\/www.reilsolar.com\/pdf\/wp-json\/wp\/v2\/posts\/2520\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.reilsolar.com\/pdf\/wp-json\/wp\/v2\/media\/2521"}],"wp:attachment":[{"href":"https:\/\/www.reilsolar.com\/pdf\/wp-json\/wp\/v2\/media?parent=2520"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.reilsolar.com\/pdf\/wp-json\/wp\/v2\/categories?post=2520"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.reilsolar.com\/pdf\/wp-json\/wp\/v2\/tags?post=2520"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}