{"id":21079,"date":"2024-09-28T18:05:06","date_gmt":"2024-09-29T01:05:06","guid":{"rendered":"https:\/\/www.pingcap.com\/article\/mastering-tidb-scalability-performance-and-high-availability\/"},"modified":"2024-12-11T20:15:37","modified_gmt":"2024-12-12T04:15:37","slug":"mastering-tidb-scalability-performance-and-high-availability","status":"publish","type":"article","link":"https:\/\/www.pingcap.com\/ko\/article\/mastering-tidb-scalability-performance-and-high-availability\/","title":{"rendered":"Mastering TiDB: Scalability, Performance, and High Availability"},"content":{"rendered":"<h2><span class=\"ez-toc-section\" id=\"Understanding_TiDBs_Scalability\"><\/span>Understanding TiDB&#8217;s Scalability<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<h3>Key Concepts of TiDB&#8217;s Architecture<\/h3>\n<p><a href=\"https:\/\/tidb.io\/\">\ud2f0DB<\/a>, an open-source, distributed SQL database, boasts a unique architecture designed for flexibility and performance. The core components of TiDB&#8217;s architecture enable efficient horizontal scaling and robust data consistency, making it ideal for managing large-scale, high-availability workloads.<\/p>\n<h4>Distributed SQL Engine<\/h4>\n<p>The TiDB server is a stateless SQL layer that supports <a href=\"https:\/\/docs.pingcap.com\/tidb\/stable\/explain-overview\">MySQL<\/a> protocol. It handles SQL parsing, optimization and generates distributed execution plans. In essence, it acts as a computational layer, delegating data storage to the distributed key-value store, <a href=\"https:\/\/docs.pingcap.com\/tidb\/stable\/tikv-overview\">TiKV<\/a>, and its columnar counterpart, <a href=\"https:\/\/docs.pingcap.com\/tidb\/stable\/tiflash-overview\">TiFlash<\/a>. This division allows TiDB to scale SQL queries horizontally, maintaining consistent performance even as the cluster expands.<\/p>\n<h4>Horizontal Scalability Features<\/h4>\n<p>One of TiDB&#8217;s standout features is its ability to scale both compute and storage independently. The TiDB architecture separates computing (handled by TiDB servers) and storage (handled by TiKV and TiFlash). This means you can add more TiDB servers to increase query processing power without affecting the underlying storage, or vice versa, add more TiKV nodes to handle increased data volumes. This flexible scaling is crucial for adapting to varying workload demands without downtime.<\/p>\n<h4>Raft-Based Replication<\/h4>\n<p>At the heart of TiDB&#8217;s high availability and consistency lies the <a href=\"https:\/\/tidb.io\/blog\/design-and-implementation-of-multi-raft\/\">Raft<\/a> consensus algorithm. TiKV uses Raft for data replication, ensuring that data is consistently replicated across multiple nodes. This mechanism allows TiDB to tolerate node failures without data loss or downtime. The addition of TiFlash, which asynchronously replicates logs from TiKV and transforms them into a columnar format, enhances TiDB&#8217;s capability to handle <a href=\"https:\/\/tidb.io\/blog\/htap-demystified-defining-modern-data-architecture-tidb\/\">HTAP<\/a> (Hybrid Transactional\/Analytical Processing) workloads efficiently.<\/p>\n<p>For a deeper dive, explore the <a href=\"https:\/\/docs.pingcap.com\/tidb\/stable\/tidb-architecture\">TiDB&#8217;s architecture<\/a> documentation.<\/p>\n<h3>Comparing TiDB with Traditional Databases<\/h3>\n<h4>Scalability Limits of Traditional Databases<\/h4>\n<p>Traditional relational databases such as MySQL and PostgreSQL face significant challenges when scaling beyond a certain point. These systems typically rely on vertical scaling\u2014adding more CPU, memory, or storage to a single node. This approach has physical and economic limits. As the dataset grows, performance diminishes due to the increased load on a single server.<\/p>\n<h4>How TiDB Overcomes These Limits<\/h4>\n<p>TiDB adopts a horizontal scaling strategy, akin to newer database architectures like Google Spanner and CockroachDB. By design, TiDB can distribute data and queries across multiple nodes. This distribution allows for linear performance improvement as new nodes are added, breaking the limitations inherent in traditional databases. The separation of compute and storage, combined with Raft-based consistency, ensures scalability without compromising availability or data integrity.<\/p>\n<h4>Case Study: Scaling with TiDB vs. Traditional Databases<\/h4>\n<p>Consider a mid-sized financial institution experiencing rapid data growth and transaction volumes. Initially, they employed a traditional MySQL-based system but soon encountered performance bottlenecks and frequent downtimes. By migrating to TiDB, they leveraged its horizontal scaling to distribute the workload across multiple nodes. The built-in high availability of TiDB ensured that node failures did not disrupt service, resulting in a significant reduction in downtime and maintenance costs while achieving higher transaction throughput.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"Scaling_TiDB_for_Massive_Workloads\"><\/span>Scaling TiDB for Massive Workloads<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<h3>Dynamic Auto-Scaling in TiDB<\/h3>\n<h4>How TiDB Scales Compute and Storage Independently<\/h4>\n<p>TiDB\u2019s architecture allows independent scaling of compute and storage resources. By adding TiDB servers, you increase query processing capacity. Conversely, adding TiKV or TiFlash nodes increases storage capacity and enhances data durability and read performance for analytical queries respectively. This flexibility ensures that resources can be adjusted according to workload requirements without a full-scale reconfiguration.<\/p>\n<h4>Automatic Resource Allocation<\/h4>\n<p>TiDB supports dynamic auto-scaling to optimize resource utilization continuously. The Placement Driver (PD) component manages resource allocation by monitoring system performance and workload distribution. PD automatically balances data across the cluster, moves hot regions, and schedules resources to avoid performance hotspots\u2014ensuring efficient use of compute and storage resources.<\/p>\n<h4>Real-World Examples of Auto-Scaling<\/h4>\n<p>An e-commerce platform using TiDB might observe fluctuating traffic, especially during sales events. During peak periods, additional TiDB and TiKV nodes can be automatically provisioned to handle the surge in transactions and data storage. This auto-scaling mechanism ensures that the system remains performant and reliable, maintaining user experience at its best, and scaling back down during non-peak periods to save costs.<\/p>\n<p>For detailed guidance on deploying and scaling TiDB, refer to the <a href=\"https:\/\/docs.pingcap.com\/tidb\/v7.1\/tidb-best-practices\">TiDB Best Practices<\/a>.<\/p>\n<h3>Performance Tuning Strategies in TiDB<\/h3>\n<h4>Index Optimization<\/h4>\n<p>Indexes are crucial for query performance. TiDB supports adding, modifying, and dropping indexes without disrupting ongoing operations. Efficient indexing practices, such as choosing composite indexes for frequently used query patterns and avoiding redundant indexes, can drastically improve read performance and reduce query latency.<\/p>\n<div class=\"codehilite\">\n<pre><code><span class=\"c1\">-- Example of creating a composite index<\/span>\n<span class=\"k\">CREATE<\/span> <span class=\"k\">INDEX<\/span> <span class=\"n\">idx_customer_name<\/span> <span class=\"k\">ON<\/span> <span class=\"n\">customers<\/span> <span class=\"p\">(<\/span><span class=\"n\">last_name<\/span><span class=\"p\">,<\/span> <span class=\"n\">first_name<\/span><span class=\"p\">);<\/span>\n<\/code><\/pre>\n<\/div>\n<h4>Query Optimization Techniques<\/h4>\n<p>TiDB&#8217;s SQL optimizer automatically generates execution plans, but manual optimization is possible with index hints and query restructuring.<\/p>\n<div class=\"codehilite\">\n<pre><code><span class=\"c1\">-- Hint to force use of a specific index<\/span>\n<span class=\"k\">SELECT<\/span> <span class=\"cm\">\/*+ INDEX(customers idx_customer_name) *\/<\/span> <span class=\"o\">*<\/span> <span class=\"k\">FROM<\/span> <span class=\"n\">customers<\/span> <span class=\"k\">WHERE<\/span> <span class=\"n\">last_name<\/span> <span class=\"o\">=<\/span> <span class=\"s1\">'Smith'<\/span><span class=\"p\">;<\/span>\n<\/code><\/pre>\n<\/div>\n<p>Rewriting queries to leverage TiDB&#8217;s capabilities, such as replacing subqueries with JOIN operations or breaking complex queries into simpler ones, can also enhance performance.<\/p>\n<h4>Best Practices for Configuration and Settings<\/h4>\n<p>Optimal performance in TiDB requires careful configuration of both hardware and software parameters. Essential settings include:<\/p>\n<ul>\n<li><strong>GC (Garbage Collection) Configuration<\/strong>: Adjust GC settings to balance performance and storage utilization.<\/li>\n<li><strong>memory, disk, and network configurations<\/strong>: Provision hardware resources above the minimum requirements to prevent resource bottlenecks.<\/li>\n<li><strong>TiKV and PD configuration<\/strong>: Tune parameters related to Raft log handling, compaction, and replication to maintain consistent performance.<\/li>\n<\/ul>\n<p>Refer to the <a href=\"https:\/\/docs.pingcap.com\/tidb\/v7.1\/manage-cluster-faq\">Cluster Management FAQs<\/a> for additional tweaking tips.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"Tools_and_Best_Practices_for_Efficient_Workload_Management\"><\/span>Tools and Best Practices for Efficient Workload Management<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<h3>Monitoring and Observability in TiDB<\/h3>\n<h4>Using TiDB Dashboard for Monitoring<\/h4>\n<p>TiDB Dashboard provides a comprehensive interface for monitoring cluster metrics, diagnosing issues, and managing the TiDB ecosystem. It includes real-time metrics and historical data, helping administrators maintain optimal performance. The dashboard offers insights into query duration, read\/write throughput, resource utilization, and more.<\/p>\n<h4>Integration with Prometheus and Grafana<\/h4>\n<p>For extended monitoring capabilities, TiDB integrates with Prometheus and Grafana. This integration allows for customizable visualizations and alerting mechanisms based on detailed performance metrics.<\/p>\n<ul>\n<li><strong>Prometheus<\/strong>: Collects and stores metrics.<\/li>\n<li><strong>Grafana<\/strong>: Visualizes data with customizable dashboards.<\/li>\n<\/ul>\n<p>For setup and configuration of these tools, refer to the <a href=\"https:\/\/docs.pingcap.com\/tidb\/stable\/tidb-monitoring-framework\">TiDB monitoring framework<\/a>.<\/p>\n<h4>Key Metrics to Track for Performance<\/h4>\n<p>Key metrics to monitor include:<\/p>\n<ul>\n<li><strong>Query Latency and Throughput<\/strong>: To ensure queries are performing optimally and within acceptable thresholds.<\/li>\n<li><strong>CPU and Memory Utilization<\/strong>: To detect potential bottlenecks and resource shortages.<\/li>\n<li><strong>Disk I\/O<\/strong>: To monitor read\/write operations and detect any latency that might impact performance.<\/li>\n<li><strong>PD and TiKV Health<\/strong>: To ensure the metadata and storage components of the cluster are functioning correctly.<\/li>\n<\/ul>\n<h3>Backup and Disaster Recovery<\/h3>\n<h4>High Availability Features<\/h4>\n<p>TiDB&#8217;s architecture includes several built-in high availability features. These features include automatic failover, multi-node replication using Raft, and geographically distributed replicas to ensure data continuity even under hardware failure scenarios.<\/p>\n<h4>Backup Strategies and Tools<\/h4>\n<p>Regular backups are vital for data integrity and disaster recovery. TiDB supports various backup tools, such as BR (Backup &amp; Restore) and Dumpling, ensuring data can be backed up efficiently:<\/p>\n<div class=\"codehilite\">\n<pre><code><span class=\"c1\"># Example: Using BR for full backup<\/span>\nbr backup full --pd <span class=\"nv\">$PD_ADDRESS<\/span> --storage <span class=\"s2\">\"local:\/\/\/mnt\/br_backup\"<\/span>\n<\/code><\/pre>\n<\/div>\n<h4>Streamlined Data Recovery Processes<\/h4>\n<p>Data recovery in TiDB is designed to be quick and streamlined. The same tools used for backup facilitate recovery, minimizing downtime.<\/p>\n<div class=\"codehilite\">\n<pre><code><span class=\"c1\"># Example: Using BR for data restore<\/span>\nbr restore full --pd <span class=\"nv\">$PD_ADDRESS<\/span> --storage <span class=\"s2\">\"local:\/\/\/mnt\/br_backup\"<\/span>\n<\/code><\/pre>\n<\/div>\n<p>Additionally, leveraging TiDB&#8217;s snapshot isolation capabilities ensures that data can be restored to a specific point in time, providing resilience against data corruption or accidental deletions.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"Conclusion\"><\/span>Conclusion<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>TiDB stands out as a powerful, flexible, and scalable distributed SQL database solution. Its unique architecture, combining horizontal scalability, Raft-based replication, and dynamic resource allocation, provides unparalleled advantages over traditional databases. Through strategic deployment, performance tuning, and robust monitoring, TiDB can handle massive workloads efficiently while maintaining high availability and data integrity. Modern enterprises looking to overcome the limitations of traditional databases and scale their operations seamlessly will find TiDB an invaluable ally. Dive deeper into TiDB&#8217;s capabilities and best practices by exploring the <a href=\"https:\/\/docs.pingcap.com\/tidb\/stable\/overview\">TiDB documentation<\/a> and unleash the full potential of your data infrastructure.<\/p>","protected":false},"excerpt":{"rendered":"<p>Discover TiDB&#8217;s architecture, scalability, and performance tuning strategies for managing large-scale workloads efficiently.<\/p>","protected":false},"author":8,"featured_media":0,"template":"","class_list":["post-21079","article","type-article","status-publish","hentry"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.9 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Mastering TiDB: Scalability, Performance, and High Availability | TiDB<\/title>\n<meta name=\"description\" content=\"Discover TiDB&#039;s architecture, scalability, and performance tuning strategies for managing large-scale workloads efficiently.\" \/>\n<meta name=\"robots\" content=\"noindex, follow\" \/>\n<meta property=\"og:locale\" content=\"ko_KR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Mastering TiDB: Scalability, Performance, and High Availability | TiDB\" \/>\n<meta property=\"og:description\" content=\"Discover TiDB&#039;s architecture, scalability, and performance tuning strategies for managing large-scale workloads efficiently.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.pingcap.com\/ko\/article\/mastering-tidb-scalability-performance-and-high-availability\/\" \/>\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=\"2024-12-12T04:15:37+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=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"7\ubd84\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.pingcap.com\/article\/mastering-tidb-scalability-performance-and-high-availability\/\",\"url\":\"https:\/\/www.pingcap.com\/article\/mastering-tidb-scalability-performance-and-high-availability\/\",\"name\":\"Mastering TiDB: Scalability, Performance, and High Availability | TiDB\",\"isPartOf\":{\"@id\":\"https:\/\/www.pingcap.com\/#website\"},\"datePublished\":\"2024-09-29T01:05:06+00:00\",\"dateModified\":\"2024-12-12T04:15:37+00:00\",\"description\":\"Discover TiDB's architecture, scalability, and performance tuning strategies for managing large-scale workloads efficiently.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.pingcap.com\/article\/mastering-tidb-scalability-performance-and-high-availability\/#breadcrumb\"},\"inLanguage\":\"ko-KR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.pingcap.com\/article\/mastering-tidb-scalability-performance-and-high-availability\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.pingcap.com\/article\/mastering-tidb-scalability-performance-and-high-availability\/#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\":\"Mastering TiDB: Scalability, Performance, and High Availability\"}]},{\"@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\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Mastering TiDB: Scalability, Performance, and High Availability | TiDB","description":"Discover TiDB's architecture, scalability, and performance tuning strategies for managing large-scale workloads efficiently.","robots":{"index":"noindex","follow":"follow"},"og_locale":"ko_KR","og_type":"article","og_title":"Mastering TiDB: Scalability, Performance, and High Availability | TiDB","og_description":"Discover TiDB's architecture, scalability, and performance tuning strategies for managing large-scale workloads efficiently.","og_url":"https:\/\/www.pingcap.com\/ko\/article\/mastering-tidb-scalability-performance-and-high-availability\/","og_site_name":"TiDB","article_publisher":"https:\/\/facebook.com\/pingcap2015","article_modified_time":"2024-12-12T04:15:37+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":{"Est. reading time":"7\ubd84"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.pingcap.com\/article\/mastering-tidb-scalability-performance-and-high-availability\/","url":"https:\/\/www.pingcap.com\/article\/mastering-tidb-scalability-performance-and-high-availability\/","name":"Mastering TiDB: Scalability, Performance, and High Availability | TiDB","isPartOf":{"@id":"https:\/\/www.pingcap.com\/#website"},"datePublished":"2024-09-29T01:05:06+00:00","dateModified":"2024-12-12T04:15:37+00:00","description":"Discover TiDB's architecture, scalability, and performance tuning strategies for managing large-scale workloads efficiently.","breadcrumb":{"@id":"https:\/\/www.pingcap.com\/article\/mastering-tidb-scalability-performance-and-high-availability\/#breadcrumb"},"inLanguage":"ko-KR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.pingcap.com\/article\/mastering-tidb-scalability-performance-and-high-availability\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.pingcap.com\/article\/mastering-tidb-scalability-performance-and-high-availability\/#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":"Mastering TiDB: Scalability, Performance, and High Availability"}]},{"@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"]}]}},"card_markup":"        <a class=\"card-article\" href=\"https:\/\/www.pingcap.com\/ko\/article\/mastering-tidb-scalability-performance-and-high-availability\/\">            <h3>Mastering TiDB: Scalability, Performance, and High Availability<\/h3>            <p>Discover TiDB's architecture, scalability, and performance tuning strategies for managing large-scale workloads efficiently.<\/p>        <\/a>","_links":{"self":[{"href":"https:\/\/www.pingcap.com\/ko\/wp-json\/wp\/v2\/article\/21079","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\/8"}],"wp:attachment":[{"href":"https:\/\/www.pingcap.com\/ko\/wp-json\/wp\/v2\/media?parent=21079"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}