<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>devkuma – TiDB</title>
    <link>https://www.devkuma.com/en/tags/tidb/</link>
    <image>
      <url>https://www.devkuma.com/en/tags/tidb/logo/180x180.jpg</url>
      <title>TiDB</title>
      <link>https://www.devkuma.com/en/tags/tidb/</link>
    </image>
    <description>Recent content in TiDB on devkuma</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>en</language>
    <managingEditor>kc@example.com (kc kim)</managingEditor>
    <webMaster>kc@example.com (kc kim)</webMaster>
    <copyright>The devkuma</copyright>
    
	  <atom:link href="https://www.devkuma.com/en/tags/tidb/index.xml" rel="self" type="application/rss+xml" />
    
    
      
        
      
    
    
    <item>
      <title>TiDB Software and Hardware Recommendations</title>
      <link>https://www.devkuma.com/en/docs/tidb/hardware-and-software-requirements/</link>
      <pubDate>Fri, 02 Sep 2022 15:38:00 +0900</pubDate>
      <author>kc@example.com (kc kim)</author>
      <guid>https://www.devkuma.com/en/docs/tidb/hardware-and-software-requirements/</guid>
      <description>
        
        
        &lt;h2 id=&#34;network-requirements&#34;&gt;Network Requirements&lt;/h2&gt;
&lt;p&gt;To run TiDB, an open source distributed NewSQL database, the following network port configuration is required. Based on the actual TiDB deployment environment, administrators can open the relevant ports on the network and host sides.&lt;/p&gt;
&lt;table&gt;
  &lt;thead&gt;
      &lt;tr&gt;
          &lt;th&gt;Component&lt;/th&gt;
          &lt;th&gt;Default port&lt;/th&gt;
          &lt;th&gt;Description&lt;/th&gt;
      &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
      &lt;tr&gt;
          &lt;td&gt;TiDB&lt;/td&gt;
          &lt;td&gt;4000&lt;/td&gt;
          &lt;td&gt;Communication port for applications and DBA tools&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;TiDB&lt;/td&gt;
          &lt;td&gt;10080&lt;/td&gt;
          &lt;td&gt;Communication port for reporting TiDB status&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;TiKV&lt;/td&gt;
          &lt;td&gt;20160&lt;/td&gt;
          &lt;td&gt;TiKV communication port&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;TiKV&lt;/td&gt;
          &lt;td&gt;20180&lt;/td&gt;
          &lt;td&gt;Communication port for reporting TiKV status&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;PD&lt;/td&gt;
          &lt;td&gt;2379&lt;/td&gt;
          &lt;td&gt;Communication port between TiDB and PD&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;PD&lt;/td&gt;
          &lt;td&gt;2380&lt;/td&gt;
          &lt;td&gt;Communication port between nodes in the PD cluster&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;TiFlash&lt;/td&gt;
          &lt;td&gt;9000&lt;/td&gt;
          &lt;td&gt;TiFlash TCP service port&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;TiFlash&lt;/td&gt;
          &lt;td&gt;8123&lt;/td&gt;
          &lt;td&gt;TiFlash HTTP service port&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;TiFlash&lt;/td&gt;
          &lt;td&gt;3930&lt;/td&gt;
          &lt;td&gt;TiFlash RAFT and coprocessor service port&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;TiFlash&lt;/td&gt;
          &lt;td&gt;20170&lt;/td&gt;
          &lt;td&gt;TiFlash proxy service port&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;TiFlash&lt;/td&gt;
          &lt;td&gt;20292&lt;/td&gt;
          &lt;td&gt;Port where Prometheus pulls TiFlash Proxy metrics&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;TiFlash&lt;/td&gt;
          &lt;td&gt;8234&lt;/td&gt;
          &lt;td&gt;Port where Prometheus pulls TiFlash metrics&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Pump&lt;/td&gt;
          &lt;td&gt;8250&lt;/td&gt;
          &lt;td&gt;Pump communication port&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Drainer&lt;/td&gt;
          &lt;td&gt;8249&lt;/td&gt;
          &lt;td&gt;Drainer communication port&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;TiCDC&lt;/td&gt;
          &lt;td&gt;8300&lt;/td&gt;
          &lt;td&gt;TiCDC communication port&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Monitoring&lt;/td&gt;
          &lt;td&gt;9090&lt;/td&gt;
          &lt;td&gt;Communication port for the Prometheus service&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Monitoring&lt;/td&gt;
          &lt;td&gt;20120&lt;/td&gt;
          &lt;td&gt;Communication port for the NgMonitoring service&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Node_exporter&lt;/td&gt;
          &lt;td&gt;9100&lt;/td&gt;
          &lt;td&gt;Communication port for reporting system information from all TiDB cluster nodes&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Blackbox_exporter&lt;/td&gt;
          &lt;td&gt;9115&lt;/td&gt;
          &lt;td&gt;Blackbox_exporter communication port. Used to monitor ports in the TiDB cluster.&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Grafana&lt;/td&gt;
          &lt;td&gt;3000&lt;/td&gt;
          &lt;td&gt;Port for external web monitoring services and client (browser) access&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Alertmanager&lt;/td&gt;
          &lt;td&gt;9093&lt;/td&gt;
          &lt;td&gt;Alert web service port&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Alertmanager&lt;/td&gt;
          &lt;td&gt;9094&lt;/td&gt;
          &lt;td&gt;Alert communication port&lt;/td&gt;
      &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;

      </description>
      
      <category>Database</category>
      
      <category>TiDB</category>
      
    </item>
    
    <item>
      <title>TiDB Overview</title>
      <link>https://www.devkuma.com/en/docs/tidb/overview/</link>
      <pubDate>Mon, 08 Aug 2022 14:32:00 +0900</pubDate>
      <author>kc@example.com (kc kim)</author>
      <guid>https://www.devkuma.com/en/docs/tidb/overview/</guid>
      <description>
        
        
        &lt;p&gt;&lt;a href=&#34;https://github.com/pingcap/tidb&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;TiDB&lt;i class=&#34;fas fa-external-link-alt&#34;&gt;&lt;/i&gt;&lt;/a&gt;(/’taɪdiːbi:/, where &amp;ldquo;Ti&amp;rdquo; stands for Titanium) is an open source NewSQL database that supports hybrid transactional and analytical processing (HTAP) workloads. It is compatible with MySQL and provides horizontal scalability, strong consistency, and high availability. TiDB aims to provide users with a one-stop database solution for OLTP (online transaction processing), OLAP (online analytical processing), and HTAP services. TiDB is suitable for a wide range of use cases that require high availability and strong consistency for large-scale data.&lt;/p&gt;
&lt;iframe width=&#34;600&#34; height=&#34;450&#34; src=&#34;https://www.youtube.com/embed/aWBNNPm21zg&#34; title=&#34;Why TiDB?&#34; frameborder=&#34;0&#34; allow=&#34;accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture&#34; allowfullscreen&gt;&lt;/iframe&gt;
&lt;h2 id=&#34;key-features&#34;&gt;Key Features&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Horizontal scale-out and simple scale-in&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;TiDB&amp;rsquo;s architecture separates computing from storage, so compute or storage capacity can be scaled out or scaled in independently online as needed. The scaling process is transparent to application operations and maintenance teams.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Financial-grade high availability&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Data is stored in multiple replicas. Data replicas use the Multi-Raft protocol to replicate transaction logs. A transaction can be committed only after data has been successfully written to most replicas. This ensures strong consistency and availability when a minority of replicas go down. To meet different disaster-resilience requirements, you can configure geographical locations and the number of replicas as needed.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Real-time HTAP&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;TiDB provides two storage engines. TiKV is a row-based storage engine, and TiFlash is a column-based storage engine. TiFlash uses the Multi-Raft Learner protocol to replicate data from TiKV in real time, ensuring data consistency between the TiKV row-based storage engine and the TiFlash column-based storage engine. TiKV and TiFlash can be deployed on different systems as needed to address HTAP resource isolation.&lt;/p&gt;
&lt;div class=&#34;alert alert-primary&#34; role=&#34;alert&#34;&gt;&lt;div class=&#34;h4 alert-heading&#34; role=&#34;heading&#34;&gt;HTAP (Hybrid Transaction/Analytical Processing)&lt;/div&gt;


  HTAP (Hybrid Transaction/Analytical Processing) is a term coined by the research firm Gartner. It refers to a next-generation data platform that supports OLTP (Online Transaction Processing) and OLAP (Online Analytical Processing) without data replication.

  Original article: [&#34;Big Data Frugal Innovation&#34;: 8 Convergence Tips from MapR](https://www.ciokorea.com/t/544/12200/30801?page=0,1#csidxd92aa7fca28b93089f3d5aea81955b0)
  &lt;/div&gt;

&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Cloud-native distributed database&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;TiDB is a distributed database designed for the cloud, providing flexible scalability, reliability, and security on cloud platforms. Users can scale TiDB flexibly to match changing workload requirements. With TiDB, each piece of data has at least three replicas and can be scheduled across different cloud availability zones to tolerate the loss of an entire data center. TiDB Operator supports TiDB management on Kubernetes and automates tasks related to TiDB cluster operations. This makes it easy to deploy TiDB on clouds that provide managed Kubernetes. TiDB Cloud, a fully managed TiDB service, is the easiest, most cost-effective, and most elastic way to use TiDB in the cloud, allowing you to deploy and run TiDB clusters with just a few clicks.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Compatible with the MySQL 5.7 protocol and MySQL ecosystem&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;TiDB is compatible with the MySQL 5.7 protocol, common MySQL features, and the MySQL ecosystem. Migrating an application to TiDB often requires no code changes, or only a small amount of code modification. TiDB also provides a set of data migration tools that help migrate application data to TiDB easily.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;use-cases&#34;&gt;Use Cases&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Financial industry scenarios with high requirements for data consistency, reliability, availability, scalability, and fault tolerance&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;As many people know, the financial industry has high requirements for data consistency, reliability, availability, scalability, and fault tolerance. Traditional solutions provide services from two data centers in the same city, while a third data center in another city provides disaster recovery but does not serve traffic. This approach has drawbacks such as low resource utilization and high maintenance costs, and its RTO (Recovery Time Objective) and RPO (Recovery Point Objective) do not meet expectations. TiDB uses multiple replicas and the Multi-Raft protocol to schedule data across different data centers, racks, and devices. If some devices fail, the system automatically switches over, enabling RTO ≤ 30 seconds and RPO = 0.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Massive data and high-concurrency scenarios with high requirements for storage capacity, scalability, and concurrency&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;As applications grow rapidly, data increases sharply. Traditional standalone databases cannot meet data capacity requirements. The solution is to use sharding middleware or a NewSQL database such as TiDB. The latter is cost-effective. TiDB uses a separated compute and storage architecture, so compute or storage capacity can be scaled out or scaled in independently. The compute layer supports up to 512 nodes, each node supports up to 1,000 concurrent executions, and the maximum cluster capacity reaches the PB (petabyte) level.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Real-time HTAP scenarios&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;With the rapid growth of 5G, the Internet of Things, and artificial intelligence, data generated by enterprises has increased enormously, reaching hundreds of TB (terabytes) or even PB scale. A traditional solution is to use an OLTP database for online transaction applications and use ETL (extract, transform, load) tools to replicate data to an OLAP database for data analysis. This approach has several drawbacks, including high storage costs and low real-time performance. TiDB introduced the TiFlash columnar storage engine in v4.0. Combined with the TiKV row-based storage engine, it turns TiDB into a true HTAP database. With only a small amount of additional storage cost, both online transaction processing and real-time data analysis can be handled in the same system, significantly reducing costs.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Data aggregation and secondary processing scenarios&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Most enterprise application data is distributed across various systems. As applications grow, decision-makers need to understand the company&amp;rsquo;s overall business status and make timely decisions. In this situation, a company needs to aggregate distributed data into the same system and perform secondary processing to generate T+0 or T+1 reports. A traditional solution is to use ETL and Hadoop, but Hadoop systems are complex and have high operations, maintenance, and storage costs. Compared with Hadoop, TiDB is much simpler. You can use ETL or data migration tools provided by TiDB to replicate data into TiDB. Reports can be generated directly using SQL statements.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;div class=&#34;pageinfo pageinfo-primary&#34;&gt;
&lt;p&gt;&lt;a href=&#34;https://github.com/pingcap/docs/blob/release-6.1/overview.md&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;TiDB Introduction&lt;i class=&#34;fas fa-external-link-alt&#34;&gt;&lt;/i&gt;&lt;/a&gt; Last modified on 2022-08-11 18:22:49: &lt;a href=&#34;https://github.com/pingcap/docs/commit/132f5275e29b808ff26c5c76d4eb30005a2b0ff0&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;overview: refine the size of the intro video (#9938) (#9940)&lt;i class=&#34;fas fa-external-link-alt&#34;&gt;&lt;/i&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;

      </description>
      
      <category>Database</category>
      
      <category>TiDB</category>
      
    </item>
    
    <item>
      <title>TiDB Experimental Features</title>
      <link>https://www.devkuma.com/en/docs/tidb/experimental-features/</link>
      <pubDate>Thu, 01 Sep 2022 18:06:00 +0900</pubDate>
      <author>kc@example.com (kc kim)</author>
      <guid>https://www.devkuma.com/en/docs/tidb/experimental-features/</guid>
      <description>
        
        
        &lt;p&gt;This document introduces experimental features in various versions of TiDB. We recommend that you do not use these features in production environments.&lt;/p&gt;
&lt;h2 id=&#34;performance&#34;&gt;Performance&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Support for collecting PREDICATE COLUMNS statistics (introduced in v5.4)&lt;/li&gt;
&lt;li&gt;Support for loading statistics synchronously (introduced in v5.4)&lt;/li&gt;
&lt;li&gt;Memory quota control for collecting statistics (introduced in v6.1.0)&lt;/li&gt;
&lt;li&gt;Randomly samples about 10,000 rows of data to quickly create statistics (introduced in v3.0)&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;stability&#34;&gt;Stability&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Improves the stability of indexes selected by the optimizer. It extends statistics capabilities by collecting order-dependent information for multiple columns (introduced in v5.0).&lt;/li&gt;
&lt;li&gt;If TiKV is deployed with limited resources and too many read and write requests are processed in the TiKV foreground, CPU resources used to process these requests in the background are occupied, which affects TiKV performance stability. To avoid this situation, use a quota limiter to limit CPU resources used in the foreground. (introduced in v6.0)&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;scheduling&#34;&gt;Scheduling&lt;/h2&gt;
&lt;p&gt;Elastic scheduling. This enables a TiDB cluster to dynamically scale out and scale in on Kubernetes based on real-time workloads. This effectively reduces pressure during application peaks and saves overhead. For details, see using TidbCluster autoscaling. (introduced in v4.0)&lt;/p&gt;
&lt;h2 id=&#34;sql&#34;&gt;SQL&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Expression indexes. Expression indexes are also called function-based indexes. When creating an index, the indexed field does not have to be a specific column; it can be an expression calculated from one or more columns. This feature helps quickly access calculation-based tables. For details, see expression indexes. (introduced in v4.0)&lt;/li&gt;
&lt;li&gt;Generated columns (introduced in v2.1)&lt;/li&gt;
&lt;li&gt;User-defined variables (introduced in v2.1)&lt;/li&gt;
&lt;li&gt;JSON data types and JSON functions (introduced in v2.1)&lt;/li&gt;
&lt;li&gt;Cascades Planner: a top-down query optimizer based on the Cascades framework (introduced in v3.0)&lt;/li&gt;
&lt;li&gt;&lt;code&gt;ALTER TABLE ... COMPACT&lt;/code&gt; (introduced in v6.1.0)&lt;/li&gt;
&lt;li&gt;Changing multiple columns or indexes by using &lt;code&gt;ALTER TABLE&lt;/code&gt; (introduced in v5.0.0)&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;storage&#34;&gt;Storage&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Titan disabled (introduced in v4.0)&lt;/li&gt;
&lt;li&gt;Titan level merge (introduced in v4.0)&lt;/li&gt;
&lt;li&gt;Partitions are split into buckets. Buckets are used as units of concurrent queries and improve scan concurrency. (introduced in v6.1.0)&lt;/li&gt;
&lt;li&gt;TiKV introduces API V2. (introduced in v6.1.0)&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;backup-and-restore&#34;&gt;Backup and Restore&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;RawKV backup and restore (introduced in v3.1)&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;data-migration&#34;&gt;Data Migration&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Use WebUI to manage migration tasks in DM. (introduced in v6.0)&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;garbage-collection&#34;&gt;Garbage Collection&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Green GC (introduced in v5.0)&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;diagnostics&#34;&gt;Diagnostics&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;SQL diagnostics (introduced in v4.0)&lt;/li&gt;
&lt;li&gt;Cluster diagnostics (introduced in v4.0)&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;div class=&#34;pageinfo pageinfo-primary&#34;&gt;
&lt;p&gt;&lt;a href=&#34;https://github.com/pingcap/docs/blob/release-6.1/experimental-features.md&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;TiDB Experimental Features&lt;i class=&#34;fas fa-external-link-alt&#34;&gt;&lt;/i&gt;&lt;/a&gt; Last modified on 2022-08-11 18:36:36: &lt;a href=&#34;https://github.com/pingcap/docs/commit/ecd39c93e7cf517cd22d9e258460c2286aed6982&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Add Cascades Planner to experimental-features (#9854) (#9934)&lt;i class=&#34;fas fa-external-link-alt&#34;&gt;&lt;/i&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;

      </description>
      
      <category>Database</category>
      
      <category>TiDB</category>
      
    </item>
    
    <item>
      <title>TiDB Limitations</title>
      <link>https://www.devkuma.com/en/docs/tidb/tidb-limitations/</link>
      <pubDate>Fri, 02 Sep 2022 14:49:00 +0900</pubDate>
      <author>kc@example.com (kc kim)</author>
      <guid>https://www.devkuma.com/en/docs/tidb/tidb-limitations/</guid>
      <description>
        
        
        &lt;p&gt;This document describes general usage limits in TiDB, including the maximum length of identifiers and the maximum number of supported databases, tables, indexes, partitioned tables, and sequences.&lt;/p&gt;
&lt;h2 id=&#34;identifier-length-limits&#34;&gt;Identifier Length Limits&lt;/h2&gt;
&lt;table&gt;
  &lt;thead&gt;
      &lt;tr&gt;
          &lt;th&gt;Identifier type&lt;/th&gt;
          &lt;th&gt;Maximum length (number of allowed characters)&lt;/th&gt;
      &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
      &lt;tr&gt;
          &lt;td&gt;Database&lt;/td&gt;
          &lt;td&gt;64&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Table&lt;/td&gt;
          &lt;td&gt;64&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Column&lt;/td&gt;
          &lt;td&gt;64&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Index&lt;/td&gt;
          &lt;td&gt;64&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;View&lt;/td&gt;
          &lt;td&gt;64&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Sequence&lt;/td&gt;
          &lt;td&gt;64&lt;/td&gt;
      &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id=&#34;limits-on-the-total-number-of-databases-tables-views-and-connections&#34;&gt;Limits on the Total Number of Databases, Tables, Views, and Connections&lt;/h2&gt;
&lt;table&gt;
  &lt;thead&gt;
      &lt;tr&gt;
          &lt;th&gt;Identifier type&lt;/th&gt;
          &lt;th&gt;Maximum number&lt;/th&gt;
      &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
      &lt;tr&gt;
          &lt;td&gt;Databases&lt;/td&gt;
          &lt;td&gt;Unlimited&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Tables&lt;/td&gt;
          &lt;td&gt;Unlimited&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Views&lt;/td&gt;
          &lt;td&gt;Unlimited&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Connections&lt;/td&gt;
          &lt;td&gt;Unlimited&lt;/td&gt;
      &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id=&#34;single-database-limits&#34;&gt;Single Database Limits&lt;/h2&gt;
&lt;table&gt;
  &lt;thead&gt;
      &lt;tr&gt;
          &lt;th&gt;Type&lt;/th&gt;
          &lt;th&gt;Upper limit&lt;/th&gt;
      &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
      &lt;tr&gt;
          &lt;td&gt;Tables&lt;/td&gt;
          &lt;td&gt;Unlimited&lt;/td&gt;
      &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id=&#34;single-table-limits&#34;&gt;Single Table Limits&lt;/h2&gt;
&lt;table&gt;
  &lt;thead&gt;
      &lt;tr&gt;
          &lt;th&gt;Type&lt;/th&gt;
          &lt;th&gt;Upper limit (default)&lt;/th&gt;
      &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
      &lt;tr&gt;
          &lt;td&gt;Columns&lt;/td&gt;
          &lt;td&gt;The default is 1017 and can be adjusted up to 4096.&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Indexes&lt;/td&gt;
          &lt;td&gt;The default is 64 and can be adjusted up to 512.&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Rows&lt;/td&gt;
          &lt;td&gt;Unlimited&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Size&lt;/td&gt;
          &lt;td&gt;Unlimited&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;Partitions&lt;/td&gt;
          &lt;td&gt;8192&lt;/td&gt;
      &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;ul&gt;
&lt;li&gt;The upper limit for &lt;code&gt;Columns&lt;/code&gt; can be changed with &lt;code&gt;table-column-count-limit&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;The upper limit for &lt;code&gt;Indexes&lt;/code&gt; can be changed with &lt;code&gt;index-limit&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;single-row-limits&#34;&gt;Single Row Limits&lt;/h2&gt;
&lt;table&gt;
  &lt;thead&gt;
      &lt;tr&gt;
          &lt;th&gt;Type&lt;/th&gt;
          &lt;th&gt;Upper limit&lt;/th&gt;
      &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
      &lt;tr&gt;
          &lt;td&gt;Size&lt;/td&gt;
          &lt;td&gt;6MB&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;You can adjust the size limit with the &lt;code&gt;txn-entry-size-limit&lt;/code&gt; configuration item.&lt;/td&gt;
          &lt;td&gt;&lt;/td&gt;
      &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id=&#34;single-column-limits&#34;&gt;Single Column Limits&lt;/h2&gt;
&lt;table&gt;
  &lt;thead&gt;
      &lt;tr&gt;
          &lt;th&gt;Type&lt;/th&gt;
          &lt;th&gt;Upper limit&lt;/th&gt;
      &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
      &lt;tr&gt;
          &lt;td&gt;Size&lt;/td&gt;
          &lt;td&gt;6MB&lt;/td&gt;
      &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id=&#34;string-type-limits&#34;&gt;String Type Limits&lt;/h2&gt;
&lt;table&gt;
  &lt;thead&gt;
      &lt;tr&gt;
          &lt;th&gt;Type&lt;/th&gt;
          &lt;th&gt;Upper limit&lt;/th&gt;
      &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
      &lt;tr&gt;
          &lt;td&gt;CHAR&lt;/td&gt;
          &lt;td&gt;256 characters&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;BINARY&lt;/td&gt;
          &lt;td&gt;256 characters&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;VARBINARY&lt;/td&gt;
          &lt;td&gt;65535 characters&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;VARCHAR&lt;/td&gt;
          &lt;td&gt;16383 characters&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;TEXT&lt;/td&gt;
          &lt;td&gt;6MB&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;BLOB&lt;/td&gt;
          &lt;td&gt;6MB&lt;/td&gt;
      &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id=&#34;sql-statement-limits&#34;&gt;SQL Statement Limits&lt;/h2&gt;
&lt;table&gt;
  &lt;thead&gt;
      &lt;tr&gt;
          &lt;th&gt;Type&lt;/th&gt;
          &lt;th&gt;Upper limit&lt;/th&gt;
      &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
      &lt;tr&gt;
          &lt;td&gt;Maximum number of SQL statements in a single transaction&lt;/td&gt;
          &lt;td&gt;When optimistic transactions and transaction retries are used, the upper limit is 5000.&lt;/td&gt;
      &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;You can change the limit with the &lt;code&gt;stmt-count-limit&lt;/code&gt; configuration item.&lt;/p&gt;
&lt;hr&gt;
&lt;div class=&#34;pageinfo pageinfo-primary&#34;&gt;
&lt;p&gt;&lt;a href=&#34;https://github.com/pingcap/docs/blob/release-6.1/credits.md&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Credits&lt;i class=&#34;fas fa-external-link-alt&#34;&gt;&lt;/i&gt;&lt;/a&gt; Last modified on 2022-04-07 14:42:32: &lt;a href=&#34;https://github.com/pingcap/docs/commit/1fbc20384728e33de01dc04cf0f537ee1f90cc93&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;Add TiFlash to the credits.md (#8080)&lt;i class=&#34;fas fa-external-link-alt&#34;&gt;&lt;/i&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;

      </description>
      
      <category>Database</category>
      
      <category>TiDB</category>
      
    </item>
    
    <item>
      <title>TiDB</title>
      <link>https://www.devkuma.com/en/docs/tidb/</link>
      <pubDate>Wed, 03 Aug 2022 15:06:00 +0900</pubDate>
      <author>kc@example.com (kc kim)</author>
      <guid>https://www.devkuma.com/en/docs/tidb/</guid>
      <description>
        
        
        &lt;p&gt;This page includes translations of parts of the &lt;a href=&#34;https://docs.pingcap.com/ja/tidb/stable&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;original documentation&lt;i class=&#34;fas fa-external-link-alt&#34;&gt;&lt;/i&gt;&lt;/a&gt;.&lt;/p&gt;

      </description>
      
      <category>Database</category>
      
      <category>TiDB</category>
      
    </item>
    
    <item>
      <title>About TiDB</title>
      <link>https://www.devkuma.com/en/docs/tidb/about/</link>
      <pubDate>Thu, 01 Sep 2022 17:59:00 +0900</pubDate>
      <author>kc@example.com (kc kim)</author>
      <guid>https://www.devkuma.com/en/docs/tidb/about/</guid>
      <description>
        
        
        
      </description>
      
      <category>Database</category>
      
      <category>TiDB</category>
      
    </item>
    
    <item>
      <title>TiDB Installation</title>
      <link>https://www.devkuma.com/en/docs/tidb/tutorial/</link>
      <pubDate>Wed, 03 Aug 2022 15:06:00 +0900</pubDate>
      <author>kc@example.com (kc kim)</author>
      <guid>https://www.devkuma.com/en/docs/tidb/tutorial/</guid>
      <description>
        
        
        
      </description>
      
      <category>Database</category>
      
      <category>TiDB</category>
      
    </item>
    
    <item>
      <title>Quick Start</title>
      <link>https://www.devkuma.com/en/docs/tidb/quick-start/</link>
      <pubDate>Fri, 02 Sep 2022 15:18:00 +0900</pubDate>
      <author>kc@example.com (kc kim)</author>
      <guid>https://www.devkuma.com/en/docs/tidb/quick-start/</guid>
      <description>
        
        
        
      </description>
      
      <category>Database</category>
      
      <category>TiDB</category>
      
    </item>
    
    <item>
      <title>TiDB Operator - Automatic Failover</title>
      <link>https://www.devkuma.com/en/docs/tidb/operator/</link>
      <pubDate>Tue, 01 Nov 2022 01:25:00 +0900</pubDate>
      <author>kc@example.com (kc kim)</author>
      <guid>https://www.devkuma.com/en/docs/tidb/operator/</guid>
      <description>
        
        
        &lt;h2 id=&#34;what-is-automatic-failover&#34;&gt;What Is Automatic Failover?&lt;/h2&gt;
&lt;p&gt;If a node in a TiDB cluster fails and stops working for some reason, TiDB appears to automatically add a new node and preserve cluster availability.&lt;/p&gt;
&lt;h2 id=&#34;automatic-failover-test&#34;&gt;Automatic Failover Test&lt;/h2&gt;
&lt;p&gt;For this test, I will &lt;code&gt;kill&lt;/code&gt; one of two TiDB server processes and check whether it recovers automatically.&lt;/p&gt;
&lt;p&gt;First, check the tidb-server processes.&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;]&lt;/span&gt;$ ps -ef &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;|&lt;/span&gt; grep tidb-server &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;|&lt;/span&gt; grep -v grep
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;kimkc    &lt;span style=&#34;color:#0000cf;font-weight:bold&#34;&gt;14506&lt;/span&gt; &lt;span style=&#34;color:#0000cf;font-weight:bold&#34;&gt;14429&lt;/span&gt;  &lt;span style=&#34;color:#0000cf;font-weight:bold&#34;&gt;0&lt;/span&gt; 11:53 pts/0    00:00:22 /home/kimkc/.tiup/components/tidb/v6.1.0/tidb-server -P &lt;span style=&#34;color:#0000cf;font-weight:bold&#34;&gt;4000&lt;/span&gt; --store&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;=&lt;/span&gt;tikv --host&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;=&lt;/span&gt;127.0.0.1 --status&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#0000cf;font-weight:bold&#34;&gt;10080&lt;/span&gt; --path&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;=&lt;/span&gt;127.0.0.1:2379,127.0.0.1:2382,127.0.0.1:2384 --log-file&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;=&lt;/span&gt;/home/kimkc/.tiup/data/TLr4XQE/tidb-0/tidb.log
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;kimkc    &lt;span style=&#34;color:#0000cf;font-weight:bold&#34;&gt;14508&lt;/span&gt; &lt;span style=&#34;color:#0000cf;font-weight:bold&#34;&gt;14429&lt;/span&gt;  &lt;span style=&#34;color:#0000cf;font-weight:bold&#34;&gt;0&lt;/span&gt; 11:53 pts/0    00:00:26 /home/kimkc/.tiup/components/tidb/v6.1.0/tidb-server -P &lt;span style=&#34;color:#0000cf;font-weight:bold&#34;&gt;4001&lt;/span&gt; --store&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;=&lt;/span&gt;tikv --host&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;=&lt;/span&gt;127.0.0.1 --status&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#0000cf;font-weight:bold&#34;&gt;10081&lt;/span&gt; --path&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;=&lt;/span&gt;127.0.0.1:2379,127.0.0.1:2382,127.0.0.1:2384 --log-file&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;=&lt;/span&gt;/home/kimkc/.tiup/data/TLr4XQE/tidb-1/tidb.log
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Forcefully terminate the process using port 4001.&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;$ &lt;span style=&#34;color:#204a87&#34;&gt;kill&lt;/span&gt; -9 &lt;span style=&#34;color:#0000cf;font-weight:bold&#34;&gt;14508&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;[&lt;/span&gt;kimkc@localhost ~&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;]&lt;/span&gt;$ ps -ef &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;|&lt;/span&gt; grep tidb-server &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;|&lt;/span&gt; grep -v grep
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;kimkc    &lt;span style=&#34;color:#0000cf;font-weight:bold&#34;&gt;14506&lt;/span&gt; &lt;span style=&#34;color:#0000cf;font-weight:bold&#34;&gt;14429&lt;/span&gt;  &lt;span style=&#34;color:#0000cf;font-weight:bold&#34;&gt;0&lt;/span&gt; 11:53 pts/0    00:00:22 /home/kimkc/.tiup/components/tidb/v6.1.0/tidb-server -P &lt;span style=&#34;color:#0000cf;font-weight:bold&#34;&gt;4000&lt;/span&gt; --store&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;=&lt;/span&gt;tikv --host&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;=&lt;/span&gt;127.0.0.1 --status&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#0000cf;font-weight:bold&#34;&gt;10080&lt;/span&gt; --path&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;=&lt;/span&gt;127.0.0.1:2379,127.0.0.1:2382,127.0.0.1:2384 --log-file&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;=&lt;/span&gt;/home/kimkc/.tiup/data/TLr4XQE/tidb-0/tidb.log
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;[&lt;/span&gt;kimkc@localhost ~&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;]&lt;/span&gt;$
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;You can see that one TiDB server process has died and only one remains. Wait for a while.&lt;/p&gt;
&lt;p&gt;Even after waiting for some time, it does not recover.&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;[&lt;/span&gt;kimkc@localhost ~&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;]&lt;/span&gt;$ ps -ef &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;|&lt;/span&gt; grep tidb-server &lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;|&lt;/span&gt; grep -v grep
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;kimkc    &lt;span style=&#34;color:#0000cf;font-weight:bold&#34;&gt;14506&lt;/span&gt; &lt;span style=&#34;color:#0000cf;font-weight:bold&#34;&gt;14429&lt;/span&gt;  &lt;span style=&#34;color:#0000cf;font-weight:bold&#34;&gt;0&lt;/span&gt; 11:53 pts/0    00:00:27 /home/kimkc/.tiup/components/tidb/v6.1.0/tidb-server -P &lt;span style=&#34;color:#0000cf;font-weight:bold&#34;&gt;4000&lt;/span&gt; --store&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;=&lt;/span&gt;tikv --host&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;=&lt;/span&gt;127.0.0.1 --status&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;=&lt;/span&gt;&lt;span style=&#34;color:#0000cf;font-weight:bold&#34;&gt;10080&lt;/span&gt; --path&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;=&lt;/span&gt;127.0.0.1:2379,127.0.0.1:2382,127.0.0.1:2384 --log-file&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;=&lt;/span&gt;/home/kimkc/.tiup/data/TLr4XQE/tidb-0/tidb.log
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;[&lt;/span&gt;kimkc@localhost ~&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;]&lt;/span&gt;$
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;This shows that recovery does not happen with the basic functionality alone.&lt;/p&gt;
&lt;h2 id=&#34;tidb-operator&#34;&gt;TiDB Operator&lt;/h2&gt;
&lt;p&gt;Automatic failover additionally requires a separate tool called TiDB Operator.&lt;/p&gt;
&lt;p&gt;It appears to be a tool for managing TiDB clusters in a Kubernetes cluster and automating related tasks. With this, TiDB can become truly cloud native.&lt;/p&gt;

      </description>
      
      <category>Database</category>
      
      <category>TiDB</category>
      
    </item>
    
    <item>
      <title>Cluster Architecture</title>
      <link>https://www.devkuma.com/en/docs/tidb/cluster-architecture/</link>
      <pubDate>Thu, 01 Sep 2022 17:59:00 +0900</pubDate>
      <author>kc@example.com (kc kim)</author>
      <guid>https://www.devkuma.com/en/docs/tidb/cluster-architecture/</guid>
      <description>
        
        
        
      </description>
      
      <category>Database</category>
      
      <category>TiDB</category>
      
    </item>
    
    <item>
      <title>TiDB Automatic Failover</title>
      <link>https://www.devkuma.com/en/docs/tidb/failover/</link>
      <pubDate>Tue, 01 Nov 2022 01:25:00 +0900</pubDate>
      <author>kc@example.com (kc kim)</author>
      <guid>https://www.devkuma.com/en/docs/tidb/failover/</guid>
      <description>
        
        
        &lt;p&gt;One of TiDB&amp;rsquo;s major strengths is high availability.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;High availability is the property that enables information systems such as servers, networks, and programs to operate normally and continuously for a considerably long period of time. High availability means that &amp;ldquo;availability is high&amp;rdquo;; it does not mean that a system will &amp;ldquo;never fail.&amp;rdquo;&lt;/p&gt;
&lt;/blockquote&gt;

      </description>
      
      <category>Database</category>
      
      <category>TiDB</category>
      
    </item>
    
  </channel>
</rss>
