{"id":21636,"date":"2026-10-01T11:37:55","date_gmt":"2026-10-01T18:37:55","guid":{"rendered":"https:\/\/www.pingcap.com\/article\/optimizing-geo-distributed-systems-with-tidb\/"},"modified":"2026-10-01T11:37:57","modified_gmt":"2026-10-01T18:37:57","slug":"optimizing-geo-distributed-systems-with-tidb","status":"publish","type":"article","link":"https:\/\/www.pingcap.com\/ko\/article\/optimizing-geo-distributed-systems-with-tidb\/","title":{"rendered":"Optimizing Geo-Distributed Systems with TiDB"},"content":{"rendered":"<p class=\"wp-block-paragraph\">A write that commits in about 6 ms inside one region can take 40 ms or more once its consensus quorum spans two regions 20 ms apart. That gap is the core of every geo-distributed systems latency tradeoff, and it decides whether a multi-region deployment feels local or sluggish to users. This guide quantifies the tradeoff and shows how <a href=\"https:\/\/www.pingcap.com\/ko\/what-is-tidb\/\">\ud2f0DB<\/a> uses Raft election tuning and placement rules to keep write latency close to single-region levels without giving up strong consistency.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"What_Is_the_Latency_Tradeoff_in_Geo-Distributed_Systems\"><\/span>What Is the Latency Tradeoff in Geo-Distributed Systems?<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Geo-distributed systems trade write latency for consistency. Synchronous replication waits for a majority of replicas to confirm each write, so every commit pays the network round trip to the farthest replica in that majority. The farther apart the regions, the higher the price.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">TiDB\u2019s deployment documentation makes the cost concrete. In its <a href=\"https:\/\/docs.pingcap.com\/tidb\/stable\/three-data-centers-in-two-cities-deployment\/\">three-zone, two-region reference topology<\/a>, availability zones within Seattle sit less than 3 ms apart, and the link to San Francisco runs about 20 ms. TiDB commits transactions with two-phase commit, so write latency is at least twice the network latency between the zones involved. A quorum that stays inside Seattle puts the floor near 6 ms. A quorum that has to reach San Francisco pushes it to 40 ms or more. Across continents, where round trips run from tens to hundreds of milliseconds, the gap widens further.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Asynchronous replication avoids that cost by acknowledging writes locally and shipping changes later. Writes get faster, and the remote copy lags. If the primary region fails, recent writes that had not replicated yet are lost.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Why_Geo-Distributed_Systems_Matter\"><\/span>Why Geo-Distributed Systems Matter<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">A geo-distributed system spreads data and services across data centers in different geographic locations. Teams accept the latency cost for three reasons.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Availability.<\/strong> A region-level outage, from a power failure to a natural disaster, does not take the application down when replicas survive elsewhere.<\/li>\n\n\n\n<li><strong>Proximity.<\/strong> Reads served from a nearby replica reach users faster than reads that cross an ocean.<\/li>\n\n\n\n<li><strong>Data residency.<\/strong> Regulations in many markets require certain records to stay inside national borders, which placement controls can enforce at the table or partition level.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">The design question is not whether to replicate across regions. It is which replicas sit inside the write path.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"How_TiDB_Manages_the_Latency-Consistency_Tradeoff_with_Raft_Election_Tuning\"><\/span>How TiDB Manages the Latency-Consistency Tradeoff with Raft Election Tuning<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">TiDB keeps strong consistency by replicating every data range, called a Region, through its own Raft group. It controls latency by deciding where each group\u2019s leader lives. The leader handles writes, so a leader in the main region keeps the commit quorum local. With two replicas in each Seattle zone and one in San Francisco, three of five replicas acknowledge every write without crossing the 20 ms link.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Three settings from the <a href=\"https:\/\/docs.pingcap.com\/tidb\/stable\/geo-distributed-deployment-topology\">geo-distributed deployment topology documentation<\/a> do the work.<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li><strong>Election timeout ticks on remote TiKV nodes.<\/strong> Raising <code>raft-min-election-timeout-ticks<\/code> \uadf8\ub9ac\uace0 <code>raft-max-election-timeout-ticks<\/code> to 50 and 60 makes remote nodes slow to call elections. They rarely become leaders or trigger unnecessary elections.<\/li>\n\n\n\n<li><strong>Placement rules.<\/strong> Since TiDB 5.2, <a href=\"https:\/\/docs.pingcap.com\/tidb\/stable\/configure-placement-rules\/\">placement rules<\/a> replace the older <code>label-property<\/code> setting for keeping leaders out of the remote data center.<\/li>\n\n\n\n<li><strong>Location labels and replica count.<\/strong> Labeling each TiKV node by zone, data center, rack, and host, and setting five replicas, lets the Placement Driver (PD) spread replicas so no single failure removes a majority.<\/li>\n<\/ol>\n\n\n\n<pre class=\"wp-block-code\"><code># Remote TiKV nodes: delay elections so leaders stay in the main region\nraftstore.raft-min-election-timeout-ticks: 50\nraftstore.raft-max-election-timeout-ticks: 60\n\n# PD: five replicas, scheduled across four topology levels\nreplication.max-replicas: 5\nreplication.location-labels: &#91;\"zone\", \"dc\", \"rack\", \"host\"]\n\n# TiKV: compress cross-region gRPC traffic\nserver.grpc-compression-type: gzip<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Do not push the election ticks much higher. If the main region goes offline, the remote nodes may be the only candidates left, and every Region on them waits at least the minimum timeout before it can elect a leader.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Reads from the remote region have their own lever. <a href=\"https:\/\/docs.pingcap.com\/tidb\/stable\/follower-read\/\">Follower Read<\/a> lets TiDB serve queries from a nearby follower replica instead of the leader. Each follower read still confirms the leader\u2019s commit index before it returns, so results stay strongly consistent while cross-region traffic drops.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The latency tradeoff in geo-distributed systems is a placement decision. Keep the write quorum inside one region and use the remote region for durability, and TiDB holds commits near single-region latency with strong consistency intact.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Try TiDB without provisioning a cluster.<\/strong> <a href=\"https:\/\/tidbcloud.com\/free-trial\/\">Start free with TiDB Cloud Starter<\/a> to test your schema and queries, then use the topology documentation to plan a multi-region production deployment.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Frequently_Asked_Questions_About_Geo-Distributed_Systems\"><\/span>Frequently Asked Questions About Geo-Distributed Systems<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<div class=\"schema-faq wp-block-yoast-faq-block\"><div class=\"schema-faq-section\" id=\"faq-question-1790875709488\"><strong class=\"schema-faq-question\">Does geo-distribution always increase latency?<\/strong> <p class=\"schema-faq-answer\">No. Geo-distribution raises write latency only when the commit quorum crosses regions, and reads served from a nearby replica can be faster than reads from one distant region. In TiDB\u2019s three-zone, two-region reference topology, keeping Raft leaders and a majority of replicas in one region holds the write floor near 6 ms. The remote region adds durability without joining the write path.<\/p> <\/div> <div class=\"schema-faq-section\" id=\"faq-question-1790875719458\"><strong class=\"schema-faq-question\">How does TiDB keep data consistent across regions?<\/strong> <p class=\"schema-faq-answer\">TiDB replicates each Region of data through a Raft group, and a write commits only after a majority of replicas acknowledge it. Transactions use two-phase commit with timestamps from the Placement Driver, so every reader sees a consistent snapshot regardless of location. With five replicas across three zones, the cluster can lose any two replicas and keep serving consistent reads and writes.<\/p> <\/div> <div class=\"schema-faq-section\" id=\"faq-question-1790875728524\"><strong class=\"schema-faq-question\">What is the difference between this guide and TiDB\u2019s multi-region deployment guide?<\/strong> <p class=\"schema-faq-answer\">This guide explains the latency-versus-consistency tradeoff and the decisions it forces before you commit to an architecture. TiDB\u2019s geo-distributed deployment topology documentation is the implementation reference. It covers machine sizing, the full topology file, and every configuration parameter. Use this guide to choose a design and the documentation to deploy it.<\/p> <\/div> <div class=\"schema-faq-section\" id=\"faq-question-1790875740841\"><strong class=\"schema-faq-question\">How do I monitor latency in a geo-distributed TiDB cluster?<\/strong> <p class=\"schema-faq-answer\">TiUP deploys <a href=\"https:\/\/docs.pingcap.com\/tidb\/stable\/grafana-overview\">Prometheus and Grafana<\/a> alongside the cluster. For cross-region latency, watch the TiKV panels for Raft commit log and append log duration, which rise first when a quorum crosses a slow link. In the TiDB panels, PD TSO wait duration grows when a TiDB server sits far from the PD leader. A jump in leader elections on remote nodes signals election timeout settings worth revisiting.<\/p> <\/div> <\/div>","protected":false},"excerpt":{"rendered":"<p>Discover how TiDB enhances geo-distributed systems by minimizing latency and ensuring data consistency with advanced features.<\/p>","protected":false},"author":275,"featured_media":0,"template":"","class_list":["post-21636","article","type-article","status-publish","hentry"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.2 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Geo-Distributed Systems: Latency vs. Consistency | TiDB<\/title>\n<meta name=\"description\" content=\"Geo-distributed systems trade write latency for consistency. See the real numbers and how TiDB Raft election tuning keeps commits near single-region speed.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.pingcap.com\/ko\/article\/optimizing-geo-distributed-systems-with-tidb\/\" \/>\n<meta property=\"og:locale\" content=\"ko_KR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Geo-Distributed Systems: Latency vs. Consistency | TiDB\" \/>\n<meta property=\"og:description\" content=\"Geo-distributed systems trade write latency for consistency. See the real numbers and how TiDB Raft election tuning keeps commits near single-region speed.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.pingcap.com\/ko\/article\/optimizing-geo-distributed-systems-with-tidb\/\" \/>\n<meta property=\"og:site_name\" content=\"TiDB\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/facebook.com\/pingcap2015\" \/>\n<meta property=\"article:modified_time\" content=\"2026-10-01T18:37:57+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/static.pingcap.com\/files\/2024\/09\/11005522\/Homepage-Ad.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1440\" \/>\n\t<meta property=\"og:image:height\" content=\"714\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:site\" content=\"@PingCAP\" \/>\n<meta name=\"twitter:label1\" content=\"\uc608\uc0c1 \ub418\ub294 \ud310\ub3c5 \uc2dc\uac04\" \/>\n\t<meta name=\"twitter:data1\" content=\"5\ubd84\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":[\"WebPage\",\"FAQPage\"],\"@id\":\"https:\\\/\\\/www.pingcap.com\\\/article\\\/optimizing-geo-distributed-systems-with-tidb\\\/\",\"url\":\"https:\\\/\\\/www.pingcap.com\\\/article\\\/optimizing-geo-distributed-systems-with-tidb\\\/\",\"name\":\"Geo-Distributed Systems: Latency vs. Consistency | TiDB\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.pingcap.com\\\/#website\"},\"datePublished\":\"2026-10-01T18:37:55+00:00\",\"dateModified\":\"2026-10-01T18:37:57+00:00\",\"description\":\"Geo-distributed systems trade write latency for consistency. See the real numbers and how TiDB Raft election tuning keeps commits near single-region speed.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.pingcap.com\\\/article\\\/optimizing-geo-distributed-systems-with-tidb\\\/#breadcrumb\"},\"mainEntity\":[{\"@id\":\"https:\\\/\\\/www.pingcap.com\\\/article\\\/optimizing-geo-distributed-systems-with-tidb\\\/#faq-question-1790875709488\"},{\"@id\":\"https:\\\/\\\/www.pingcap.com\\\/article\\\/optimizing-geo-distributed-systems-with-tidb\\\/#faq-question-1790875719458\"},{\"@id\":\"https:\\\/\\\/www.pingcap.com\\\/article\\\/optimizing-geo-distributed-systems-with-tidb\\\/#faq-question-1790875728524\"},{\"@id\":\"https:\\\/\\\/www.pingcap.com\\\/article\\\/optimizing-geo-distributed-systems-with-tidb\\\/#faq-question-1790875740841\"}],\"inLanguage\":\"ko-KR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.pingcap.com\\\/article\\\/optimizing-geo-distributed-systems-with-tidb\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.pingcap.com\\\/article\\\/optimizing-geo-distributed-systems-with-tidb\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.pingcap.com\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Articles\",\"item\":\"https:\\\/\\\/www.pingcap.com\\\/article\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Optimizing Geo-Distributed Systems with TiDB\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.pingcap.com\\\/#website\",\"url\":\"https:\\\/\\\/www.pingcap.com\\\/\",\"name\":\"TiDB\",\"description\":\"TiDB | SQL at Scale\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.pingcap.com\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.pingcap.com\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"ko-KR\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.pingcap.com\\\/#organization\",\"name\":\"PingCAP\",\"url\":\"https:\\\/\\\/www.pingcap.com\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"ko-KR\",\"@id\":\"https:\\\/\\\/www.pingcap.com\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/static.pingcap.com\\\/files\\\/2021\\\/11\\\/pingcap-logo.png\",\"contentUrl\":\"https:\\\/\\\/static.pingcap.com\\\/files\\\/2021\\\/11\\\/pingcap-logo.png\",\"width\":811,\"height\":232,\"caption\":\"PingCAP\"},\"image\":{\"@id\":\"https:\\\/\\\/www.pingcap.com\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/facebook.com\\\/pingcap2015\",\"https:\\\/\\\/x.com\\\/PingCAP\",\"https:\\\/\\\/linkedin.com\\\/company\\\/pingcap\",\"https:\\\/\\\/youtube.com\\\/channel\\\/UCuq4puT32DzHKT5rU1IZpIA\"]},{\"@type\":\"Question\",\"@id\":\"https:\\\/\\\/www.pingcap.com\\\/article\\\/optimizing-geo-distributed-systems-with-tidb\\\/#faq-question-1790875709488\",\"position\":1,\"url\":\"https:\\\/\\\/www.pingcap.com\\\/article\\\/optimizing-geo-distributed-systems-with-tidb\\\/#faq-question-1790875709488\",\"name\":\"Does geo-distribution always increase latency?\",\"answerCount\":1,\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"No. Geo-distribution raises write latency only when the commit quorum crosses regions, and reads served from a nearby replica can be faster than reads from one distant region. In TiDB\u2019s three-zone, two-region reference topology, keeping Raft leaders and a majority of replicas in one region holds the write floor near 6 ms. The remote region adds durability without joining the write path.\",\"inLanguage\":\"ko-KR\"},\"inLanguage\":\"ko-KR\"},{\"@type\":\"Question\",\"@id\":\"https:\\\/\\\/www.pingcap.com\\\/article\\\/optimizing-geo-distributed-systems-with-tidb\\\/#faq-question-1790875719458\",\"position\":2,\"url\":\"https:\\\/\\\/www.pingcap.com\\\/article\\\/optimizing-geo-distributed-systems-with-tidb\\\/#faq-question-1790875719458\",\"name\":\"How does TiDB keep data consistent across regions?\",\"answerCount\":1,\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"TiDB replicates each Region of data through a Raft group, and a write commits only after a majority of replicas acknowledge it. Transactions use two-phase commit with timestamps from the Placement Driver, so every reader sees a consistent snapshot regardless of location. With five replicas across three zones, the cluster can lose any two replicas and keep serving consistent reads and writes.\",\"inLanguage\":\"ko-KR\"},\"inLanguage\":\"ko-KR\"},{\"@type\":\"Question\",\"@id\":\"https:\\\/\\\/www.pingcap.com\\\/article\\\/optimizing-geo-distributed-systems-with-tidb\\\/#faq-question-1790875728524\",\"position\":3,\"url\":\"https:\\\/\\\/www.pingcap.com\\\/article\\\/optimizing-geo-distributed-systems-with-tidb\\\/#faq-question-1790875728524\",\"name\":\"What is the difference between this guide and TiDB\u2019s multi-region deployment guide?\",\"answerCount\":1,\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"This guide explains the latency-versus-consistency tradeoff and the decisions it forces before you commit to an architecture. TiDB\u2019s geo-distributed deployment topology documentation is the implementation reference. It covers machine sizing, the full topology file, and every configuration parameter. Use this guide to choose a design and the documentation to deploy it.\",\"inLanguage\":\"ko-KR\"},\"inLanguage\":\"ko-KR\"},{\"@type\":\"Question\",\"@id\":\"https:\\\/\\\/www.pingcap.com\\\/article\\\/optimizing-geo-distributed-systems-with-tidb\\\/#faq-question-1790875740841\",\"position\":4,\"url\":\"https:\\\/\\\/www.pingcap.com\\\/article\\\/optimizing-geo-distributed-systems-with-tidb\\\/#faq-question-1790875740841\",\"name\":\"How do I monitor latency in a geo-distributed TiDB cluster?\",\"answerCount\":1,\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"TiUP deploys <a href=\\\"https:\\\/\\\/docs.pingcap.com\\\/tidb\\\/stable\\\/grafana-overview\\\">Prometheus and Grafana<\\\/a> alongside the cluster. For cross-region latency, watch the TiKV panels for Raft commit log and append log duration, which rise first when a quorum crosses a slow link. In the TiDB panels, PD TSO wait duration grows when a TiDB server sits far from the PD leader. A jump in leader elections on remote nodes signals election timeout settings worth revisiting.\",\"inLanguage\":\"ko-KR\"},\"inLanguage\":\"ko-KR\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Geo-Distributed Systems: Latency vs. Consistency | TiDB","description":"Geo-distributed systems trade write latency for consistency. See the real numbers and how TiDB Raft election tuning keeps commits near single-region speed.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.pingcap.com\/ko\/article\/optimizing-geo-distributed-systems-with-tidb\/","og_locale":"ko_KR","og_type":"article","og_title":"Geo-Distributed Systems: Latency vs. Consistency | TiDB","og_description":"Geo-distributed systems trade write latency for consistency. See the real numbers and how TiDB Raft election tuning keeps commits near single-region speed.","og_url":"https:\/\/www.pingcap.com\/ko\/article\/optimizing-geo-distributed-systems-with-tidb\/","og_site_name":"TiDB","article_publisher":"https:\/\/facebook.com\/pingcap2015","article_modified_time":"2026-10-01T18:37:57+00:00","og_image":[{"width":1440,"height":714,"url":"https:\/\/static.pingcap.com\/files\/2024\/09\/11005522\/Homepage-Ad.png","type":"image\/png"}],"twitter_card":"summary_large_image","twitter_site":"@PingCAP","twitter_misc":{"\uc608\uc0c1 \ub418\ub294 \ud310\ub3c5 \uc2dc\uac04":"5\ubd84"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":["WebPage","FAQPage"],"@id":"https:\/\/www.pingcap.com\/article\/optimizing-geo-distributed-systems-with-tidb\/","url":"https:\/\/www.pingcap.com\/article\/optimizing-geo-distributed-systems-with-tidb\/","name":"Geo-Distributed Systems: Latency vs. Consistency | TiDB","isPartOf":{"@id":"https:\/\/www.pingcap.com\/#website"},"datePublished":"2026-10-01T18:37:55+00:00","dateModified":"2026-10-01T18:37:57+00:00","description":"Geo-distributed systems trade write latency for consistency. See the real numbers and how TiDB Raft election tuning keeps commits near single-region speed.","breadcrumb":{"@id":"https:\/\/www.pingcap.com\/article\/optimizing-geo-distributed-systems-with-tidb\/#breadcrumb"},"mainEntity":[{"@id":"https:\/\/www.pingcap.com\/article\/optimizing-geo-distributed-systems-with-tidb\/#faq-question-1790875709488"},{"@id":"https:\/\/www.pingcap.com\/article\/optimizing-geo-distributed-systems-with-tidb\/#faq-question-1790875719458"},{"@id":"https:\/\/www.pingcap.com\/article\/optimizing-geo-distributed-systems-with-tidb\/#faq-question-1790875728524"},{"@id":"https:\/\/www.pingcap.com\/article\/optimizing-geo-distributed-systems-with-tidb\/#faq-question-1790875740841"}],"inLanguage":"ko-KR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.pingcap.com\/article\/optimizing-geo-distributed-systems-with-tidb\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.pingcap.com\/article\/optimizing-geo-distributed-systems-with-tidb\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.pingcap.com\/"},{"@type":"ListItem","position":2,"name":"Articles","item":"https:\/\/www.pingcap.com\/article\/"},{"@type":"ListItem","position":3,"name":"Optimizing Geo-Distributed Systems with TiDB"}]},{"@type":"WebSite","@id":"https:\/\/www.pingcap.com\/#website","url":"https:\/\/www.pingcap.com\/","name":"\ud2f0DB","description":"TiDB | SQL at Scale","publisher":{"@id":"https:\/\/www.pingcap.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.pingcap.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"ko-KR"},{"@type":"Organization","@id":"https:\/\/www.pingcap.com\/#organization","name":"PingCAP","url":"https:\/\/www.pingcap.com\/","logo":{"@type":"ImageObject","inLanguage":"ko-KR","@id":"https:\/\/www.pingcap.com\/#\/schema\/logo\/image\/","url":"https:\/\/static.pingcap.com\/files\/2021\/11\/pingcap-logo.png","contentUrl":"https:\/\/static.pingcap.com\/files\/2021\/11\/pingcap-logo.png","width":811,"height":232,"caption":"PingCAP"},"image":{"@id":"https:\/\/www.pingcap.com\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/facebook.com\/pingcap2015","https:\/\/x.com\/PingCAP","https:\/\/linkedin.com\/company\/pingcap","https:\/\/youtube.com\/channel\/UCuq4puT32DzHKT5rU1IZpIA"]},{"@type":"Question","@id":"https:\/\/www.pingcap.com\/article\/optimizing-geo-distributed-systems-with-tidb\/#faq-question-1790875709488","position":1,"url":"https:\/\/www.pingcap.com\/article\/optimizing-geo-distributed-systems-with-tidb\/#faq-question-1790875709488","name":"Does geo-distribution always increase latency?","answerCount":1,"acceptedAnswer":{"@type":"Answer","text":"No. Geo-distribution raises write latency only when the commit quorum crosses regions, and reads served from a nearby replica can be faster than reads from one distant region. In TiDB\u2019s three-zone, two-region reference topology, keeping Raft leaders and a majority of replicas in one region holds the write floor near 6 ms. The remote region adds durability without joining the write path.","inLanguage":"ko-KR"},"inLanguage":"ko-KR"},{"@type":"Question","@id":"https:\/\/www.pingcap.com\/article\/optimizing-geo-distributed-systems-with-tidb\/#faq-question-1790875719458","position":2,"url":"https:\/\/www.pingcap.com\/article\/optimizing-geo-distributed-systems-with-tidb\/#faq-question-1790875719458","name":"How does TiDB keep data consistent across regions?","answerCount":1,"acceptedAnswer":{"@type":"Answer","text":"TiDB replicates each Region of data through a Raft group, and a write commits only after a majority of replicas acknowledge it. Transactions use two-phase commit with timestamps from the Placement Driver, so every reader sees a consistent snapshot regardless of location. With five replicas across three zones, the cluster can lose any two replicas and keep serving consistent reads and writes.","inLanguage":"ko-KR"},"inLanguage":"ko-KR"},{"@type":"Question","@id":"https:\/\/www.pingcap.com\/article\/optimizing-geo-distributed-systems-with-tidb\/#faq-question-1790875728524","position":3,"url":"https:\/\/www.pingcap.com\/article\/optimizing-geo-distributed-systems-with-tidb\/#faq-question-1790875728524","name":"What is the difference between this guide and TiDB\u2019s multi-region deployment guide?","answerCount":1,"acceptedAnswer":{"@type":"Answer","text":"This guide explains the latency-versus-consistency tradeoff and the decisions it forces before you commit to an architecture. TiDB\u2019s geo-distributed deployment topology documentation is the implementation reference. It covers machine sizing, the full topology file, and every configuration parameter. Use this guide to choose a design and the documentation to deploy it.","inLanguage":"ko-KR"},"inLanguage":"ko-KR"},{"@type":"Question","@id":"https:\/\/www.pingcap.com\/article\/optimizing-geo-distributed-systems-with-tidb\/#faq-question-1790875740841","position":4,"url":"https:\/\/www.pingcap.com\/article\/optimizing-geo-distributed-systems-with-tidb\/#faq-question-1790875740841","name":"How do I monitor latency in a geo-distributed TiDB cluster?","answerCount":1,"acceptedAnswer":{"@type":"Answer","text":"TiUP deploys <a href=\"https:\/\/docs.pingcap.com\/tidb\/stable\/grafana-overview\">Prometheus and Grafana<\/a> alongside the cluster. For cross-region latency, watch the TiKV panels for Raft commit log and append log duration, which rise first when a quorum crosses a slow link. In the TiDB panels, PD TSO wait duration grows when a TiDB server sits far from the PD leader. A jump in leader elections on remote nodes signals election timeout settings worth revisiting.","inLanguage":"ko-KR"},"inLanguage":"ko-KR"}]}},"card_markup":"        <a class=\"card-article\" href=\"https:\/\/www.pingcap.com\/ko\/article\/optimizing-geo-distributed-systems-with-tidb\/\">            <h3>Optimizing Geo-Distributed Systems with TiDB<\/h3>            <p>Discover how TiDB enhances geo-distributed systems by minimizing latency and ensuring data consistency with advanced features.<\/p>        <\/a>","_links":{"self":[{"href":"https:\/\/www.pingcap.com\/ko\/wp-json\/wp\/v2\/article\/21636","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.pingcap.com\/ko\/wp-json\/wp\/v2\/article"}],"about":[{"href":"https:\/\/www.pingcap.com\/ko\/wp-json\/wp\/v2\/types\/article"}],"author":[{"embeddable":true,"href":"https:\/\/www.pingcap.com\/ko\/wp-json\/wp\/v2\/users\/275"}],"wp:attachment":[{"href":"https:\/\/www.pingcap.com\/ko\/wp-json\/wp\/v2\/media?parent=21636"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}