mirror of https://github.com/tikv/website.git
replace 6.1 to dev. Add what"s new
Signed-off-by: pingyu <yuping@pingcap.com>
This commit is contained in:
parent
b17e381229
commit
c39f5f462d
|
|
@ -2,10 +2,10 @@
|
|||
title: CAS on RawKV
|
||||
description: Compare And Swap
|
||||
menu:
|
||||
"6.1":
|
||||
parent: Features-v6.1
|
||||
"dev":
|
||||
parent: Features-dev
|
||||
weight: 4
|
||||
identifier: CAS on RawKV-v6.1
|
||||
identifier: CAS on RawKV-dev
|
||||
---
|
||||
|
||||
This page walks you through a simple demonstration of performing compare-and-swap (CAS) in TiKV.
|
||||
|
|
|
|||
|
|
@ -2,10 +2,10 @@
|
|||
title: Distributed Transaction
|
||||
description: How transaction works on TxnKV
|
||||
menu:
|
||||
"6.1":
|
||||
parent: Features-v6.1
|
||||
"dev":
|
||||
parent: Features-dev
|
||||
weight: 5
|
||||
identifier: Distributed Transaction-v6.1
|
||||
identifier: Distributed Transaction-dev
|
||||
---
|
||||
|
||||
This chapter walks you through a simple demonstration of how TiKV's distributed transaction works.
|
||||
|
|
|
|||
|
|
@ -2,10 +2,10 @@
|
|||
title: Fault Tolerance and Recovery
|
||||
description: Learn how TiKV recovers from failures.
|
||||
menu:
|
||||
"6.1":
|
||||
parent: Features-v6.1
|
||||
"dev":
|
||||
parent: Features-dev
|
||||
weight: 2
|
||||
identifier: Fault Tolerance and Recovery-v6.1
|
||||
identifier: Fault Tolerance and Recovery-dev
|
||||
---
|
||||
|
||||
This document walks you through a demonstration of how TiKV recovers from failures and continues providing services when some nodes fail. You can follow the steps of this demonstration and perform operations on your own. In this way, you will have a hands-on experience of the fault tolerance feature of TiKV.
|
||||
|
|
|
|||
|
|
@ -2,10 +2,10 @@
|
|||
title: Features
|
||||
description: The features of TiKV
|
||||
menu:
|
||||
"6.1":
|
||||
parent: Get Started-v6.1
|
||||
"dev":
|
||||
parent: Get Started-dev
|
||||
weight: 2
|
||||
identifier: Features-v6.1
|
||||
identifier: Features-dev
|
||||
---
|
||||
|
||||
TiKV offers the following key features:
|
||||
|
|
|
|||
|
|
@ -2,10 +2,10 @@
|
|||
title: Replication and Rebalancing
|
||||
description: Learn how TiKV replicates, distributes, and rebalances data.
|
||||
menu:
|
||||
"6.1":
|
||||
parent: Features-v6.1
|
||||
"dev":
|
||||
parent: Features-dev
|
||||
weight: 1
|
||||
identifier: Replication and Rebalancing-v6.1
|
||||
identifier: Replication and Rebalancing-dev
|
||||
---
|
||||
|
||||
This document walks you through a simple demonstration of how TiKV replicates, distributes, and rebalances data. To start a 3-node local cluster, you need to perform the following operations:
|
||||
|
|
|
|||
|
|
@ -2,10 +2,10 @@
|
|||
title: TTL on RawKV
|
||||
description: Time to Live
|
||||
menu:
|
||||
"6.1":
|
||||
parent: Features-v6.1
|
||||
"dev":
|
||||
parent: Features-dev
|
||||
weight: 3
|
||||
identifier: TTL on RawKV-v6.1
|
||||
identifier: TTL on RawKV-dev
|
||||
---
|
||||
|
||||
This page walks you through a simple demonstration of how to use TTL (Time To Live) on RawKV. TTL is a data clearing mechanism that automatically deletes data after a specified period of time. For example:
|
||||
|
|
|
|||
|
|
@ -2,9 +2,9 @@
|
|||
title: Get Started
|
||||
description: TiKV Introduction
|
||||
menu:
|
||||
"6.1":
|
||||
"dev":
|
||||
weight: 2
|
||||
identifier: Get Started-v6.1
|
||||
identifier: Get Started-dev
|
||||
---
|
||||
|
||||
**TiKV** is a highly scalable, low latency, and easy to use key-value database that delivers performance less than 10 ms at any scale.
|
||||
|
|
|
|||
|
|
@ -2,10 +2,10 @@
|
|||
title: TiKV in 5 Minutes
|
||||
description: Get started using TiKV in 5 Minutes
|
||||
menu:
|
||||
"6.1":
|
||||
parent: Get Started-v6.1
|
||||
"dev":
|
||||
parent: Get Started-dev
|
||||
weight: 1
|
||||
identifier: TiKV in 5 Minutes-v6.1
|
||||
identifier: TiKV in 5 Minutes-dev
|
||||
---
|
||||
|
||||
This tutorial provides you a quick way to get started with TiKV, including the following operations:
|
||||
|
|
|
|||
|
|
@ -2,10 +2,10 @@
|
|||
title: What's Next
|
||||
description:
|
||||
menu:
|
||||
"6.1":
|
||||
parent: Get Started-v6.1
|
||||
"dev":
|
||||
parent: Get Started-dev
|
||||
weight: 3
|
||||
identifier: What's Next-v6.1
|
||||
identifier: What's Next-dev
|
||||
---
|
||||
|
||||
Depending on your role, the following resources are recommended to learn more about TiKV:
|
||||
|
|
|
|||
|
|
@ -2,10 +2,10 @@
|
|||
title: Coprocessor Config
|
||||
description: Learn how to configure Coprocessor in TiKV.
|
||||
menu:
|
||||
"6.1":
|
||||
parent: Configure TiKV-v6.1
|
||||
"dev":
|
||||
parent: Configure TiKV-dev
|
||||
weight: 14
|
||||
identifier: Coprocessor Config-v6.1
|
||||
identifier: Coprocessor Config-dev
|
||||
---
|
||||
|
||||
You can find all the configuration parameters related to Coprocessor [here](../tikv-configuration-file/#coprocessor).
|
||||
|
|
|
|||
|
|
@ -2,10 +2,10 @@
|
|||
title: gRPC Config
|
||||
description: Learn how to configure gRPC in TiKV.
|
||||
menu:
|
||||
"6.1":
|
||||
parent: Configure TiKV-v6.1
|
||||
"dev":
|
||||
parent: Configure TiKV-dev
|
||||
weight: 13
|
||||
identifier: gRPC Config-v6.1
|
||||
identifier: gRPC Config-dev
|
||||
---
|
||||
|
||||
You can find all the configuration parameters related to gRPC [here](../tikv-configuration-file/#server) (started with `grpc-`).
|
||||
|
|
|
|||
|
|
@ -2,10 +2,10 @@
|
|||
title: Configure TiKV
|
||||
description: Configure a wide range of TiKV facets, including RocksDB, gRPC, the Placement Driver, and more.
|
||||
menu:
|
||||
"6.1":
|
||||
parent: Deploy-v6.1
|
||||
"dev":
|
||||
parent: Deploy-dev
|
||||
weight: 2
|
||||
identifier: Configure TiKV-v6.1
|
||||
identifier: Configure TiKV-dev
|
||||
---
|
||||
|
||||
Although you are recommended to get started with TiKV using the default configuration, TiKV provides many configuration parameters to tweak its behavior, which allows you to configure the cluster to suit your special application requirements.
|
||||
|
|
|
|||
|
|
@ -2,10 +2,10 @@
|
|||
title: Scheduling Limit Config
|
||||
description: Learn how to configure scheduling rate limit on stores.
|
||||
menu:
|
||||
"6.1":
|
||||
parent: Configure TiKV-v6.1
|
||||
"dev":
|
||||
parent: Configure TiKV-dev
|
||||
weight: 7
|
||||
identifier: Scheduling Limit Config-v6.1
|
||||
identifier: Scheduling Limit Config-dev
|
||||
---
|
||||
|
||||
This document describes how to configure the scheduling rate limit at the store level.
|
||||
|
|
|
|||
|
|
@ -2,10 +2,10 @@
|
|||
title: PD Command Line Parameters
|
||||
description: Learn configuration flags of PD
|
||||
menu:
|
||||
"6.1":
|
||||
parent: Configure TiKV-v6.1
|
||||
"dev":
|
||||
parent: Configure TiKV-dev
|
||||
weight: 1
|
||||
identifier: PD Command Line Parameters-v6.1
|
||||
identifier: PD Command Line Parameters-dev
|
||||
---
|
||||
|
||||
PD is configurable using command-line flags and environment variables.
|
||||
|
|
|
|||
|
|
@ -2,10 +2,10 @@
|
|||
title: PD Config
|
||||
description: Learn the PD configuration file
|
||||
menu:
|
||||
"6.1":
|
||||
parent: Configure TiKV-v6.1
|
||||
"dev":
|
||||
parent: Configure TiKV-dev
|
||||
weight: 2
|
||||
identifier: PD Config-v6.1
|
||||
identifier: PD Config-dev
|
||||
---
|
||||
|
||||
The PD configuration file supports more options than command-line parameters. You can find the default configuration file [here](https://github.com/pingcap/pd/blob/release-5.0/conf/config.toml).
|
||||
|
|
|
|||
|
|
@ -2,10 +2,10 @@
|
|||
title: Raftstore Config
|
||||
description: Learn how to configure Raftstore in TiKV.
|
||||
menu:
|
||||
"6.1":
|
||||
parent: Configure TiKV-v6.1
|
||||
"dev":
|
||||
parent: Configure TiKV-dev
|
||||
weight: 10
|
||||
identifier: Raftstore Config-v6.1
|
||||
identifier: Raftstore Config-dev
|
||||
---
|
||||
|
||||
You can find all the configuration parameters related to Raftstore [here](../tikv-configuration-file/#raftstore).
|
||||
|
|
|
|||
|
|
@ -2,10 +2,10 @@
|
|||
title: Region Merge Config
|
||||
description: Learn how to configure Region Merge in TiKV.
|
||||
menu:
|
||||
"6.1":
|
||||
parent: Configure TiKV-v6.1
|
||||
"dev":
|
||||
parent: Configure TiKV-dev
|
||||
weight: 7
|
||||
identifier: Region Merge Config-v6.1
|
||||
identifier: Region Merge Config-dev
|
||||
---
|
||||
|
||||
TiKV shards continuous ranges of keys into Regions, and replicates Regions through the Raft protocol. When data size increases until reaching a threshold, a Region splits into multiple. Conversely, if the size of the Region shrinks due to data deletion, two adjacent Regions can be merged into one.
|
||||
|
|
|
|||
|
|
@ -2,10 +2,10 @@
|
|||
title: RocksDB Config
|
||||
description: Learn how to configure RocksDB engine in TiKV.
|
||||
menu:
|
||||
"6.1":
|
||||
parent: Configure TiKV-v6.1
|
||||
"dev":
|
||||
parent: Configure TiKV-dev
|
||||
weight: 8
|
||||
identifier: RocksDB Config-v6.1
|
||||
identifier: RocksDB Config-dev
|
||||
---
|
||||
|
||||
TiKV uses [RocksDB](https://rocksdb.org/) internally to store Raft logs and key-value pairs.
|
||||
|
|
|
|||
|
|
@ -2,10 +2,10 @@
|
|||
title: Security Config
|
||||
description: Keep your TiKV secure
|
||||
menu:
|
||||
"6.1":
|
||||
parent: Configure TiKV-v6.1
|
||||
"dev":
|
||||
parent: Configure TiKV-dev
|
||||
weight: 5
|
||||
identifier: Security Config-v6.1
|
||||
identifier: Security Config-dev
|
||||
---
|
||||
|
||||
This document describes how to use Transport Layer Security (TLS) to encrypt the connections between TiKV nodes.
|
||||
|
|
|
|||
|
|
@ -2,10 +2,10 @@
|
|||
title: Storage Config
|
||||
description: Learn how to configure storage in TiKV.
|
||||
menu:
|
||||
"6.1":
|
||||
parent: Configure TiKV-v6.1
|
||||
"dev":
|
||||
parent: Configure TiKV-dev
|
||||
weight: 12
|
||||
identifier: Storage Config-v6.1
|
||||
identifier: Storage Config-dev
|
||||
---
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -2,10 +2,10 @@
|
|||
title: TiKV Command Line Parameters
|
||||
description: Learn some configuration flags of TiKV
|
||||
menu:
|
||||
"6.1":
|
||||
parent: Configure TiKV-v6.1
|
||||
"dev":
|
||||
parent: Configure TiKV-dev
|
||||
weight: 3
|
||||
identifier: TiKV Command Line Parameters-v6.1
|
||||
identifier: TiKV Command Line Parameters-dev
|
||||
---
|
||||
|
||||
TiKV supports readable units in command line parameters.
|
||||
|
|
|
|||
|
|
@ -2,10 +2,10 @@
|
|||
title: TiKV Config
|
||||
description: Learn the TiKV configuration file
|
||||
menu:
|
||||
"6.1":
|
||||
parent: Configure TiKV-v6.1
|
||||
"dev":
|
||||
parent: Configure TiKV-dev
|
||||
weight: 4
|
||||
identifier: TiKV Config-v6.1
|
||||
identifier: TiKV Config-dev
|
||||
---
|
||||
|
||||
The TiKV configuration file supports more options than command-line parameters. You can find the default configuration file in [etc/config-template.toml](https://github.com/tikv/tikv/blob/release-5.0/etc/config-template.toml) and rename it to `config.toml`.
|
||||
|
|
|
|||
|
|
@ -2,10 +2,10 @@
|
|||
title: RocksDB Titan Config
|
||||
description: Learn how to enable Titan in TiKV.
|
||||
menu:
|
||||
"6.1":
|
||||
parent: Configure TiKV-v6.1
|
||||
"dev":
|
||||
parent: Configure TiKV-dev
|
||||
weight: 11
|
||||
identifier: RocksDB Titan Config-v6.1
|
||||
identifier: RocksDB Titan Config-dev
|
||||
---
|
||||
|
||||
Titan is a RocksDB plugin developed by PingCAP to separate keys and values in RocksDB storage. The goal of Titan is to reduce the write amplification when storing large values.
|
||||
|
|
|
|||
|
|
@ -2,10 +2,10 @@
|
|||
title: Topology Label Config
|
||||
description: Learn how to configure topology labels.
|
||||
menu:
|
||||
"6.1":
|
||||
parent: Configure TiKV-v6.1
|
||||
"dev":
|
||||
parent: Configure TiKV-dev
|
||||
weight: 6
|
||||
identifier: Topology Label Config-v6.1
|
||||
identifier: Topology Label Config-dev
|
||||
---
|
||||
|
||||
TiKV uses topology labels (hereafter referred to as the labels) to declare its location information, and PD scheduler uses the labels to optimize TiKV's failure tolerance capability. This document describes how to configure the labels.
|
||||
|
|
|
|||
|
|
@ -2,9 +2,9 @@
|
|||
title: Deploy
|
||||
description: Learn how to deploy and operate a TiKV cluster
|
||||
menu:
|
||||
"6.1":
|
||||
"dev":
|
||||
weight: 3
|
||||
identifier: Deploy-v6.1
|
||||
identifier: Deploy-dev
|
||||
---
|
||||
|
||||
Learn to deploy, configure, monitor, and scale TiKV as you adopt the service into your project and infrastructure.
|
||||
|
|
|
|||
|
|
@ -2,10 +2,10 @@
|
|||
title: Install TiKV
|
||||
description: TiKV deployment prerequisites and methods
|
||||
menu:
|
||||
"6.1":
|
||||
parent: Deploy-v6.1
|
||||
"dev":
|
||||
parent: Deploy-dev
|
||||
weight: 1
|
||||
identifier: Install TiKV-v6.1
|
||||
identifier: Install TiKV-dev
|
||||
---
|
||||
|
||||
This section introduces how to deploy and verify a TiKV cluster in the production environment.
|
||||
|
|
|
|||
|
|
@ -2,10 +2,10 @@
|
|||
title: Prerequisites
|
||||
description: Learn the software and hardware recommendations for deploying and running TiKV
|
||||
menu:
|
||||
"6.1":
|
||||
parent: Install TiKV-v6.1
|
||||
"dev":
|
||||
parent: Install TiKV-dev
|
||||
weight: 1
|
||||
identifier: Prerequisites-v6.1
|
||||
identifier: Prerequisites-dev
|
||||
---
|
||||
|
||||
TiKV can be deployed in the Intel architecture server, ARM architecture server, and major virtualization environments and runs well. TiKV supports most of the major hardware networks and Linux operating systems.
|
||||
|
|
|
|||
|
|
@ -2,10 +2,10 @@
|
|||
title: Production Deployment
|
||||
description: Deploy a TiKV Cluster for Production Using TiUP
|
||||
menu:
|
||||
"6.1":
|
||||
parent: Install TiKV-v6.1
|
||||
"dev":
|
||||
parent: Install TiKV-dev
|
||||
weight: 2
|
||||
identifier: Production Deployment-v6.1
|
||||
identifier: Production Deployment-dev
|
||||
---
|
||||
|
||||
This guide describes how to install and deploy TiKV for production environment.
|
||||
|
|
|
|||
|
|
@ -2,10 +2,10 @@
|
|||
title: Test Deployment
|
||||
description: Deploy a TiKV Cluster for Test
|
||||
menu:
|
||||
"6.1":
|
||||
parent: Install TiKV-v6.1
|
||||
"dev":
|
||||
parent: Install TiKV-dev
|
||||
weight: 4
|
||||
identifier: Test Deployment-v6.1
|
||||
identifier: Test Deployment-dev
|
||||
---
|
||||
This guide describes how to install and deploy TiKV for test using TiUP playground and binary installation.
|
||||
|
||||
|
|
|
|||
|
|
@ -2,10 +2,10 @@
|
|||
title: Verify Cluster Status
|
||||
description: Check the cluster status and connect to the cluster
|
||||
menu:
|
||||
"6.1":
|
||||
parent: Install TiKV-v6.1
|
||||
"dev":
|
||||
parent: Install TiKV-dev
|
||||
weight: 3
|
||||
identifier: Verify Cluster Status-v6.1
|
||||
identifier: Verify Cluster Status-dev
|
||||
---
|
||||
|
||||
After a TiKV cluster is deployed, you need to check whether the cluster runs normally. This document introduces how to check the cluster status using TiUP commands and Grafana, and how to connect to the TiKV cluster using a TiKV client to perform the simple `put` and `get` operations.
|
||||
|
|
|
|||
|
|
@ -2,10 +2,10 @@
|
|||
title: TiKV Cluster Alert Rules
|
||||
description: Learn the alert rules in a TiKV cluster.
|
||||
menu:
|
||||
"6.1":
|
||||
parent: Monitor and Alert-v6.1
|
||||
"dev":
|
||||
parent: Monitor and Alert-dev
|
||||
weight: 6
|
||||
identifier: TiKV Cluster Alert Rules-v6.1
|
||||
identifier: TiKV Cluster Alert Rules-dev
|
||||
---
|
||||
|
||||
This document describes the alert rules for different components in a TiKV cluster, including the rule descriptions and solutions of the alert items in TiKV, PD, Node_exporter and Blackbox_exporter.
|
||||
|
|
|
|||
|
|
@ -2,10 +2,10 @@
|
|||
title: Monitoring API
|
||||
description: Learn the API of TiKV monitoring services.
|
||||
menu:
|
||||
"6.1":
|
||||
parent: Monitor and Alert-v6.1
|
||||
"dev":
|
||||
parent: Monitor and Alert-dev
|
||||
weight: 2
|
||||
identifier: Monitoring API-v6.1
|
||||
identifier: Monitoring API-dev
|
||||
---
|
||||
|
||||
You can use the following two types of interfaces to monitor the TiKV cluster state:
|
||||
|
|
|
|||
|
|
@ -2,10 +2,10 @@
|
|||
title: Deploy Monitoring Services
|
||||
description: Learn how to deploy monitoring services for the TiKV cluster.
|
||||
menu:
|
||||
"6.1":
|
||||
parent: Monitor and Alert-v6.1
|
||||
"dev":
|
||||
parent: Monitor and Alert-dev
|
||||
weight: 3
|
||||
identifier: Deploy Monitoring Services-v6.1
|
||||
identifier: Deploy Monitoring Services-dev
|
||||
---
|
||||
|
||||
This document is intended for users who want to manually deploy TiKV monitoring and alert services.
|
||||
|
|
|
|||
|
|
@ -2,10 +2,10 @@
|
|||
title: Monitoring Framework
|
||||
description: Use Prometheus and Grafana to build the TiKV monitoring framework.
|
||||
menu:
|
||||
"6.1":
|
||||
parent: Monitor and Alert-v6.1
|
||||
"dev":
|
||||
parent: Monitor and Alert-dev
|
||||
weight: 1
|
||||
identifier: Monitoring Framework-v6.1
|
||||
identifier: Monitoring Framework-dev
|
||||
---
|
||||
|
||||
The TiKV monitoring framework adopts two open-source projects: [Prometheus](https://github.com/prometheus/prometheus) and [Grafana](https://github.com/grafana/grafana). TiKV uses Prometheus to store the monitoring and performance metrics, and uses Grafana to visualize these metrics.
|
||||
|
|
|
|||
|
|
@ -2,10 +2,10 @@
|
|||
title: Export Grafana Snapshots
|
||||
description: Learn how to export snapshots of Grafana Dashboard, and how to visualize these files.
|
||||
menu:
|
||||
"6.1":
|
||||
parent: Monitor and Alert-v6.1
|
||||
"dev":
|
||||
parent: Monitor and Alert-dev
|
||||
weight: 4
|
||||
identifier: Export Grafana Snapshots-v6.1
|
||||
identifier: Export Grafana Snapshots-dev
|
||||
---
|
||||
|
||||
Metrics data is important in troubleshooting. When you request remote assistance, sometimes the support staff need to view the Grafana dashboards to diagnose problems. [MetricsTool](https://metricstool.pingcap.com/) can help export snapshots of Grafana dashboards as local files and visualize these snapshots. You can share these snapshots with outsiders and allow them to accurately read out the graphs, without giving out access to other sensitive information on the Grafana server.
|
||||
|
|
|
|||
|
|
@ -2,10 +2,10 @@
|
|||
title: Key Metrics
|
||||
description: Learn some key metrics displayed on the Grafana Overview dashboard.
|
||||
menu:
|
||||
"6.1":
|
||||
parent: Monitor and Alert-v6.1
|
||||
"dev":
|
||||
parent: Monitor and Alert-dev
|
||||
weight: 5
|
||||
identifier: Key Metrics-v6.1
|
||||
identifier: Key Metrics-dev
|
||||
---
|
||||
|
||||
If your TiKV cluster is deployed using TiUP, the monitoring system is deployed at the same time. For more details, see [Overview of the TiKV Monitoring Framework](https://pingcap.com/docs/stable/reference/key-monitoring-metrics/overview-dashboard/).
|
||||
|
|
|
|||
|
|
@ -2,10 +2,10 @@
|
|||
title: Monitor and Alert
|
||||
description: Learn how to monitor a TiKV cluster.
|
||||
menu:
|
||||
"6.1":
|
||||
parent: Deploy-v6.1
|
||||
"dev":
|
||||
parent: Deploy-dev
|
||||
weight: 4
|
||||
identifier: Monitor and Alert-v6.1
|
||||
identifier: Monitor and Alert-dev
|
||||
---
|
||||
|
||||
This section introduces how to monitor a TiKV cluster.
|
||||
|
|
|
|||
|
|
@ -2,10 +2,10 @@
|
|||
title: TiUP Common Operations
|
||||
description: Learn the common operations to operate and maintain a TiKV cluster using TiUP
|
||||
menu:
|
||||
"6.1":
|
||||
parent: Operate TiKV-v6.1
|
||||
"dev":
|
||||
parent: Operate TiKV-dev
|
||||
weight: 3
|
||||
identifier: TiUP Common Operations-v6.1
|
||||
identifier: TiUP Common Operations-dev
|
||||
---
|
||||
|
||||
This document describes the following common operations when you operate and maintain a TiKV cluster using TiUP.
|
||||
|
|
|
|||
|
|
@ -2,10 +2,10 @@
|
|||
title: Operate TiKV
|
||||
description: Learn how to maintain and operate a TiKV cluster.
|
||||
menu:
|
||||
"6.1":
|
||||
parent: Deploy-v6.1
|
||||
"dev":
|
||||
parent: Deploy-dev
|
||||
weight: 5
|
||||
identifier: Operate TiKV-v6.1
|
||||
identifier: Operate TiKV-dev
|
||||
---
|
||||
|
||||
This section introduces how to maintain and operate a TiKV cluster, including the following operations:
|
||||
|
|
|
|||
|
|
@ -2,10 +2,10 @@
|
|||
title: Scale
|
||||
description: Learn how to scale out/in TiKV using TiUP
|
||||
menu:
|
||||
"6.1":
|
||||
parent: Operate TiKV-v6.1
|
||||
"dev":
|
||||
parent: Operate TiKV-dev
|
||||
weight: 2
|
||||
identifier: Scale-v6.1
|
||||
identifier: Scale-dev
|
||||
---
|
||||
|
||||
The capacity of a TiKV cluster can be increased or decreased without interrupting online services.
|
||||
|
|
|
|||
|
|
@ -2,10 +2,10 @@
|
|||
title: Upgrade
|
||||
description: Learn how to upgrade TiKV using TiUP
|
||||
menu:
|
||||
"6.1":
|
||||
parent: Operate TiKV-v6.1
|
||||
"dev":
|
||||
parent: Operate TiKV-dev
|
||||
weight: 1
|
||||
identifier: Upgrade-v6.1
|
||||
identifier: Upgrade-dev
|
||||
---
|
||||
|
||||
This document is targeted for users who want to upgrade from TiKV 4.0 versions to TiKV 5.0 versions, or from TiKV 5.0 to a later version.
|
||||
|
|
|
|||
|
|
@ -2,10 +2,10 @@
|
|||
title: Benchmark Instructions
|
||||
description: How to do a benchmark over a TiKV cluster
|
||||
menu:
|
||||
"6.1":
|
||||
parent: Benchmark and Performance-v6.1
|
||||
"dev":
|
||||
parent: Benchmark and Performance-dev
|
||||
weight: 6
|
||||
identifier: Benchmark Instructions-v6.1
|
||||
identifier: Benchmark Instructions-dev
|
||||
---
|
||||
|
||||
TiKV delivers predictable throughput and latency at all scales on commodity hardware. This document provides a step-by-step tutorial on performing a benchmark test using the industry-standard benchmark tool [YCSB](https://github.com/brianfrankcooper/YCSB) on TiKV.
|
||||
|
|
|
|||
|
|
@ -2,10 +2,10 @@
|
|||
title: Performance Overview
|
||||
description: An overview of TiKV performance
|
||||
menu:
|
||||
"6.1":
|
||||
parent: Benchmark and Performance-v6.1
|
||||
"dev":
|
||||
parent: Benchmark and Performance-dev
|
||||
weight: 5
|
||||
identifier: Performance Overview-v6.1
|
||||
identifier: Performance Overview-dev
|
||||
---
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -2,10 +2,10 @@
|
|||
title: Benchmark and Performance
|
||||
description: Learn about the performance of TiKV.
|
||||
menu:
|
||||
"6.1":
|
||||
parent: Deploy-v6.1
|
||||
"dev":
|
||||
parent: Deploy-dev
|
||||
weight: 4
|
||||
identifier: Benchmark and Performance-v6.1
|
||||
identifier: Benchmark and Performance-dev
|
||||
---
|
||||
|
||||
This section introduces an overview of TiKV performance and the instructions to do a benchmark.
|
||||
|
|
|
|||
|
|
@ -2,10 +2,10 @@
|
|||
title: C++ Client
|
||||
description: Interact with TiKV using C++.
|
||||
menu:
|
||||
"6.1":
|
||||
parent: TiKV Clients-v6.1
|
||||
"dev":
|
||||
parent: TiKV Clients-dev
|
||||
weight: 5
|
||||
identifier: C++ Client-v6.1
|
||||
identifier: C++ Client-dev
|
||||
---
|
||||
|
||||
{{< warning >}}
|
||||
|
|
|
|||
|
|
@ -2,10 +2,10 @@
|
|||
title: Go Client
|
||||
description: Interact with TiKV using Go.
|
||||
menu:
|
||||
"6.1":
|
||||
parent: TiKV Clients-v6.1
|
||||
"dev":
|
||||
parent: TiKV Clients-dev
|
||||
weight: 2
|
||||
identifier: Go Client-v6.1
|
||||
identifier: Go Client-dev
|
||||
---
|
||||
|
||||
TiKV Go Client is still in the proof-of-concept stage and under development. You can track the development at [tikv/client-go](https://github.com/tikv/client-go/) repository.
|
||||
|
|
|
|||
|
|
@ -2,10 +2,10 @@
|
|||
title: TiKV Clients
|
||||
description: Interact with TiKV using the raw key-value API or the transactional key-value API.
|
||||
menu:
|
||||
"6.1":
|
||||
parent: Develop-v6.1
|
||||
"dev":
|
||||
parent: Develop-dev
|
||||
weight: 1
|
||||
identifier: TiKV Clients-v6.1
|
||||
identifier: TiKV Clients-dev
|
||||
---
|
||||
|
||||
TiKV offers two APIs that you can interact with:
|
||||
|
|
|
|||
|
|
@ -2,10 +2,10 @@
|
|||
title: Java Client
|
||||
description: Interact with TiKV using Java.
|
||||
menu:
|
||||
"6.1":
|
||||
parent: TiKV Clients-v6.1
|
||||
"dev":
|
||||
parent: TiKV Clients-dev
|
||||
weight: 1
|
||||
identifier: Java Client-v6.1
|
||||
identifier: Java Client-dev
|
||||
---
|
||||
|
||||
This document guides you on how to use [Java Client](https://github.com/tikv/client-java) in TiKV.
|
||||
|
|
|
|||
|
|
@ -2,10 +2,10 @@
|
|||
title: Python Client
|
||||
description: Interact with TiKV using Python.
|
||||
menu:
|
||||
"6.1":
|
||||
parent: TiKV Clients-v6.1
|
||||
"dev":
|
||||
parent: TiKV Clients-dev
|
||||
weight: 4
|
||||
identifier: Python Client-v6.1
|
||||
identifier: Python Client-dev
|
||||
---
|
||||
|
||||
TiKV client for python is built on top of [TiKV Client in Rust](https://github.com/tikv/client-rust) via CFFI and [PyO3 Python binding](https://github.com/PyO3/pyo3).
|
||||
|
|
|
|||
|
|
@ -2,10 +2,10 @@
|
|||
title: Rust Client
|
||||
description: Interact with TiKV using Rust.
|
||||
menu:
|
||||
"6.1":
|
||||
parent: TiKV Clients-v6.1
|
||||
"dev":
|
||||
parent: TiKV Clients-dev
|
||||
weight: 3
|
||||
identifier: Rust Client-v6.1
|
||||
identifier: Rust Client-dev
|
||||
---
|
||||
|
||||
TiKV Rust Client is still in the proof-of-concept stage and under development. You can track the development at [tikv/client-rust](https://github.com/tikv/client-rust/) repository.
|
||||
|
|
|
|||
|
|
@ -2,9 +2,9 @@
|
|||
title: Develop
|
||||
description: Learn how to use TiKV Clients for different languages
|
||||
menu:
|
||||
"6.1":
|
||||
"dev":
|
||||
weight: 3
|
||||
identifier: Develop-v6.1
|
||||
identifier: Develop-dev
|
||||
---
|
||||
|
||||
Learn how to use TiKV Clients for different languages.
|
||||
|
|
|
|||
|
|
@ -2,10 +2,10 @@
|
|||
title: CAS
|
||||
description: How to use RawKV's CAS API
|
||||
menu:
|
||||
"6.1":
|
||||
parent: RawKV-v6.1
|
||||
"dev":
|
||||
parent: RawKV-dev
|
||||
weight: 3
|
||||
identifier: CAS-v6.1
|
||||
identifier: CAS-dev
|
||||
---
|
||||
|
||||
This document walks you through how to use RawKV’s `CAS (Compare And Swap)` API.
|
||||
|
|
|
|||
|
|
@ -2,10 +2,10 @@
|
|||
title: Get, Put, and Delete
|
||||
description: How to use RawKV's basic operations such as Get, Put, and Delete.
|
||||
menu:
|
||||
"6.1":
|
||||
parent: RawKV-v6.1
|
||||
"dev":
|
||||
parent: RawKV-dev
|
||||
weight: 1
|
||||
identifier: Get, Put, and Delete-v6.1
|
||||
identifier: Get, Put, and Delete-dev
|
||||
---
|
||||
|
||||
This document walks you through how to use RawKV's basic operations such as `Get`, `Put`, and `Delete`.
|
||||
|
|
|
|||
|
|
@ -2,10 +2,10 @@
|
|||
title: RawKV
|
||||
description: How to interact with TiKV using RawKV API.
|
||||
menu:
|
||||
"6.1":
|
||||
parent: Develop-v6.1
|
||||
"dev":
|
||||
parent: Develop-dev
|
||||
weight: 2
|
||||
identifier: RawKV-v6.1
|
||||
identifier: RawKV-dev
|
||||
---
|
||||
|
||||
TiKV supports both transactional (TxnKV) API and non-transactional (RawKV) API. This chapter walks you through a few demonstrations about how to use RawKV API.
|
||||
|
|
|
|||
|
|
@ -2,10 +2,10 @@
|
|||
title: Scan
|
||||
description: Learn how to use RawKV's Scan API.
|
||||
menu:
|
||||
"6.1":
|
||||
parent: RawKV-v6.1
|
||||
"dev":
|
||||
parent: RawKV-dev
|
||||
weight: 2
|
||||
identifier: Scan-v6.1
|
||||
identifier: Scan-dev
|
||||
---
|
||||
|
||||
This document walks you through how to use RawKV's `Scan` API.
|
||||
|
|
|
|||
|
|
@ -2,10 +2,10 @@
|
|||
title: TTL
|
||||
description: How to use TTL via RawKV API.
|
||||
menu:
|
||||
"6.1":
|
||||
parent: RawKV-v6.1
|
||||
"dev":
|
||||
parent: RawKV-dev
|
||||
weight: 4
|
||||
identifier: TTL-v6.1
|
||||
identifier: TTL-dev
|
||||
---
|
||||
|
||||
TiKV provides the Time To Live (TTL) support via the RawKV API. This document provides two examples to show you how to set TTL via the RawKV API.
|
||||
|
|
|
|||
|
|
@ -1,63 +1,162 @@
|
|||
---
|
||||
title: What's New
|
||||
description: New features and improvements about TiKV 6.1
|
||||
description: New features and improvements about TiKV since 6.2
|
||||
menu:
|
||||
"6.1":
|
||||
"dev":
|
||||
weight: 1
|
||||
identifier: What's New-v6.1
|
||||
identifier: What's New-dev
|
||||
---
|
||||
|
||||
This document lists some significant features and improvements in **TiKV 6.1**.
|
||||
This document lists some significant features and improvements since **TiKV 6.2**.
|
||||
|
||||
## Improve stability of TiKV flow control
|
||||
## [TiKV 6.3.0]((https://docs.pingcap.com/tidb/v6.3/release-6.3.0))
|
||||
|
||||
TiKV introduces **a new flow control mechanism to replace the previous RocksDB write stall mechanism**. Compared with the write stall mechanism, this new mechanism **reduces the impact on the stability of foreground write**.
|
||||
### Key new features and improvements
|
||||
|
||||
In specific, when the stress of RocksDB compaction accumulates, flow control is performed at the TiKV scheduler layer instead of the RocksDB layer, to avoid the following issues:
|
||||
- TiKV supports encryption at rest using the SM4 algorithm.
|
||||
|
||||
- Raftstore is stuck, which is caused by RocksDB write stall.
|
||||
### Security
|
||||
|
||||
- Raft election times out and, as a result, the node leader is transferred.
|
||||
* TiKV supports the SM4 algorithm for encryption at rest [#13041](https://github.com/tikv/tikv/issues/13041) @[jiayang-zheng](https://github.com/jiayang-zheng)
|
||||
|
||||
**This new mechanism improves the flow control algorithm to mitigate QPS decrease when the write traffic is high**.
|
||||
Add the [SM4 algorithm](/encryption-at-rest.md) for TiKV encryption at rest. When you configure encryption at rest, you can enable the SM4 encryption capacity by setting the value of the `data-encryption-method` configuration to `sm4-ctr`.
|
||||
|
||||
[Click here](https://docs.pingcap.com/tidb/stable/tikv-configuration-file#storageflow-control) to see user guide.
|
||||
### Performance
|
||||
|
||||
## Improve Write latency
|
||||
* TiKV supports log recycling [#214](https://github.com/tikv/raft-engine/issues/214) @[LykxSassinator](https://github.com/LykxSassinator)
|
||||
|
||||
**Reduce write latency by separating I/O operations from Raftstore thread pool** (disabled by default). For more information about tuning, see [Tune TiKV Thread Pool Performance](https://docs.pingcap.com/tidb/stable/tune-tikv-thread-performance).
|
||||
TiKV supports [recycling log files](/tikv-configuration-file.md#enable-log-recycle-new-in-v630) in Raft Engine. This reduces the long tail latency in network disks during Raft log appending and improves performance under write workloads.
|
||||
|
||||
## Support Raft Engine
|
||||
### Stability
|
||||
|
||||
Since v6.1, TiKV has used Raft Engine as the default storage engine for logs. Compared with RocksDB, **Raft Engine can reduce TiKV I/O write traffic by up to 40% and CPU usage by 10%, while improving foreground throughput by about 5% and reducing tail latency by 20% under certain loads**.
|
||||
* Disabling Titan becomes GA @[tabokie](https://github.com/tabokie)
|
||||
|
||||
[Click here](https://docs.pingcap.com/tidb/stable/tikv-configuration-file#raft-engine) to see user guide.
|
||||
You can [disable Titan](/storage-engine/titan-configuration.md#disable-titan) for online TiKV nodes.
|
||||
|
||||
## Support Continuous Profiling
|
||||
### Compatibility changes
|
||||
|
||||
TiKV Dashboard introduces the Continuous Profiling feature, which is now generally available in v6.1. Continuous profiling is not enabled by default. **When enabled, the performance data of individual TiKV, and PD instances will be collected all the time, with negligible overhead**. With history performance data, technical experts can backtrack and pinpoint the root causes of issues like high memory consumption, even when the issues are difficult to reproduce. **In this way, the mean time to recovery (MTTR) can be reduced**.
|
||||
### Configuration file parameters
|
||||
|
||||
[Click here](https://docs.pingcap.com/tidb/stable/continuous-profiling) to see user guide.
|
||||
| Configuration file | Configuration | Change type | Description |
|
||||
| --- | --- | --- | --- |
|
||||
| TiKV | [`auto-adjust-pool-size`](/tikv-configuration-file.md#auto-adjust-pool-size-new-in-v630) | Newly added | Controls whether to automatically adjust the thread pool size. When it is enabled, the read performance of TiKV is optimized by automatically adjusting the UnifyReadPool thread pool size based on the current CPU usage.|
|
||||
| TiKV | [`data-encryption-method`](/tikv-configuration-file.md#data-encryption-method) | Modified | Introduces a new value option `sm4-ctr`. When this configuration item is set to `sm4-ctr`, data is encrypted using SM4 before being stored. |
|
||||
| TiKV | [`enable-log-recycle`](/tikv-configuration-file.md#enable-log-recycle-new-in-v630) | Newly added | Determines whether to recycle stale log files in Raft Engine. When it is enabled, logically purged log files will be reserved for recycling. This reduces the long tail latency on write workloads. This configuration item is only available when [format-version](/tikv-configuration-file.md#format-version-new-in-v630) is >= 2. |
|
||||
| TiKV | [`format-version`](/tikv-configuration-file.md#format-version-new-in-v630) | Newly added | Specifies the version of log files in Raft Engine. The default log file version is `1` for TiKV earlier than v6.3.0. The log files can be read by TiKV >= v6.1.0. The default log file version is `2` for TiKV v6.3.0 and later. TiKV v6.3.0 and later can read the log files. |
|
||||
| TiKV | [`log-backup.enable`](/tikv-configuration-file.md#enable-new-in-v620) | Modified | Since v6.3.0, the default value changes from `false` to `true`. |
|
||||
| TiKV | [`log-backup.max-flush-interval`](/tikv-configuration-file.md#max-flush-interval-new-in-v620) | Modified | Since v6.3.0, the default value changes from `5min` to `3min`. |
|
||||
| PD | [enable-diagnostic](/pd-configuration-file.md#enable-diagnostic-new-in-v630) | Newly added | Controls whether to enable the diagnostic feature. The default value is `false`. |
|
||||
|
||||
## Accelerate leader balancing after restarting TiKV nodes
|
||||
### Improvements
|
||||
|
||||
After a restart of TiKV nodes, the unevenly scattered leaders must be redistributed for load balance. In large-scale clusters, leader balancing time is positively correlated with the number of Regions. For example, the leader balancing of 100K Regions can take 20-30 minutes, which is prone to performance issues and stability risks due to uneven load. **TiKV v6.1 provides a parameter to control the balancing concurrency and enlarges the default value to 4 times of the original, which greatly shortens the leader rebalancing time and accelerates business recovery after a restart of the TiKV nodes**.
|
||||
- Support configuring the `unreachable_backoff` item to avoid Raftstore broadcasting too many messages after one peer becomes unreachable [#13054](https://github.com/tikv/tikv/issues/13054) @[5kbpers](https://github.com/5kbpers)
|
||||
- Improve the fault tolerance of TSO service [#12794](https://github.com/tikv/tikv/issues/12794) @[pingyu](https://github.com/pingyu)
|
||||
- Support dynamically modifying the number of sub-compaction operations performed concurrently in RocksDB (`rocksdb.max-sub-compactions`) [#13145](https://github.com/tikv/tikv/issues/13145) @[ethercflow](https://github.com/ethercflow)
|
||||
- Optimize the performance of merging empty Regions [#12421](https://github.com/tikv/tikv/issues/12421) @[tabokie](https://github.com/tabokie)
|
||||
- Support more regular expression functions [#13483](https://github.com/tikv/tikv/issues/13483) @[gengliqi](https://github.com/gengliqi)
|
||||
- Support automatically adjusting the thread pool size based on the CPU usage [#13313](https://github.com/tikv/tikv/issues/13313) @[glorv](https://github.com/glorv)
|
||||
|
||||
[Click here](https://docs.pingcap.com/tidb/stable/pd-control#scheduler-config-balance-leader-scheduler) to see user guide.
|
||||
### Bug fixes
|
||||
|
||||
+ TiKV
|
||||
|
||||
- Fix the issue that PD does not reconnect to TiKV after the Region heartbeat is interrupted [#12934](https://github.com/tikv/tikv/issues/12934) @[bufferflies](https://github.com/bufferflies)
|
||||
- Fix the issue that Regions might be overlapped if Raftstore is busy [#13160](https://github.com/tikv/tikv/issues/13160) @[5kbpers](https://github.com/5kbpers)
|
||||
- Fix the issue that the PD client might cause deadlocks [#13191](https://github.com/tikv/tikv/issues/13191) @[bufferflies](https://github.com/bufferflies) [#12933](https://github.com/tikv/tikv/issues/12933) @[BurtonQin](https://github.com/BurtonQin)
|
||||
- Fix the issue that TiKV might panic when encryption is disabled [#13081](https://github.com/tikv/tikv/issues/13081) @[jiayang-zheng](https://github.com/jiayang-zheng)
|
||||
- Fix the wrong expression of `Unified Read Pool CPU` in Dashboard [#13086](https://github.com/tikv/tikv/issues/13086) @[glorv](https://github.com/glorv)
|
||||
- Fix the issue that the TiKV service is unavailable for several minutes when a TiKV instance is in an isolated network environment [#12966](https://github.com/tikv/tikv/issues/12966) @[cosven](https://github.com/cosven)
|
||||
- Fix the issue that TiKV mistakenly reports a `PessimisticLockNotFound` error [#13425](https://github.com/tikv/tikv/issues/13425) @[sticnarf](https://github.com/sticnarf)
|
||||
- Fix the issue that PITR might cause data loss in some situations [#13281](https://github.com/tikv/tikv/issues/13281) @[YuJuncen](https://github.com/YuJuncen)
|
||||
- Fix the issue that causes checkpoint not advanced when there are some long pessimistic transactions [#13304](https://github.com/tikv/tikv/issues/13304) @[YuJuncen](https://github.com/YuJuncen)
|
||||
- Fix the issue that TiKV does not distinguish the datetime type (`DATETIME`, `DATE`, `TIMESTAMP` and `TIME`) and `STRING` type in JSON [#13417](https://github.com/tikv/tikv/issues/13417) @[YangKeao](https://github.com/YangKeao)
|
||||
- Fix incompatibility with MySQL of comparison between JSON bool and other JSON value [#13386](https://github.com/tikv/tikv/issues/13386) [#37481](https://github.com/pingcap/tidb/issues/37481) @[YangKeao](https://github.com/YangKeao)
|
||||
|
||||
+ PD
|
||||
|
||||
- Fix PD panics caused by the issue that gRPC handles errors inappropriately when `enable-forwarding` is enabled [#5373](https://github.com/tikv/pd/issues/5373) @[bufferflies](https://github.com/bufferflies)
|
||||
- Fix the issue that unhealthy Region might cause PD panic [#5491](https://github.com/tikv/pd/issues/5491) @[nolouch](https://github.com/nolouch)
|
||||
- Fix the issue that the TiFlash learner replica might not be created [#5401](https://github.com/tikv/pd/issues/5401) @[HunDunDM](https://github.com/HunDunDM)
|
||||
|
||||
|
||||
## TiKV API V2 (experimental)
|
||||
## [TiKV 6.2.0](https://docs.pingcap.com/tidb/v6.2/release-6.2.0)
|
||||
|
||||
Before v6.1, when TiKV is used as Raw Key Value storage, TiKV only provides basic Key Value read and write capability because it only stores the raw data passed in by the client.
|
||||
### Key new feature and improvements
|
||||
|
||||
TiKV API V2 provides a new Raw Key Value storage format and access interface, including the following changes:
|
||||
* TiKV supports [automatically tuning the CPU usage](https://docs.pingcap.com/tidb/v6.2/tikv-configuration-file#background-quota-limiter), thus ensuring stable and efficient database operations.
|
||||
* [Cross-cluster RawKV replication](https://docs.pingcap.com/tidb/v6.2/tikv-configuration-file#api-version-new-in-v610) is now supported.
|
||||
|
||||
- **The data is stored in MVCC and the change timestamp of the data is recorded. This feature lays the foundation for implementing Change Data Capture and incremental backup and restore**.
|
||||
- **Data is scoped according to different usage. Now you can run TiDB, Transactional KV, and RawKV applications within a single TiKV cluster**.
|
||||
### Stability
|
||||
|
||||
{{< warning >}}
|
||||
Due to significant changes in the underlying storage format, after enabling API V2, you cannot roll back a TiKV cluster to a version earlier than v6.1. Downgrading TiKV might result in data corruption.{{</ warning >}}
|
||||
* TiKV supports automatically tuning the CPU usage (experimental)
|
||||
|
||||
[Click here](https://docs.pingcap.com/tidb/stable/tikv-configuration-file#api-version-new-in-v610) to see user guide.
|
||||
Databases usually have background processes to perform internal operations. Statistical information can be collected to help identify performance problems, generate better execution plans, and improve the stability and performance of the database. However, how to more efficiently collect information, and how to balance the resource overhead of background operations and foreground operations without affecting the daily use have always been one of the headaches in the database industry.
|
||||
|
||||
Starting from v6.2.0, TiDB supports setting the CPU usage rate of background requests using the TiKV configuration file, thereby limiting the CPU usage ratio of background operations such as automatically collecting statistics in TiKV, and avoiding the resource preemption of user operations by background operations in extreme cases. This ensures that the operations of the database are stable and efficient.
|
||||
|
||||
At the same time, TiDB also supports automatically adjusting CPU usage. Then, TiKV will adaptively adjust the CPU resources occupied by background requests according to the CPU usage of the instance. This feature is disabled by default.
|
||||
|
||||
[User document](https://docs.pingcap.com/tidb/v6.2/tikv-configuration-file#background-quota-limiter) [#12503](https://github.com/tikv/tikv/issues/12503) @[BornChanger](https://github.com/BornChanger)
|
||||
|
||||
### Ease of use
|
||||
|
||||
* TiKV supports listing detailed configuration information using command-line flags
|
||||
|
||||
The TiKV configuration file can be used to manage TiKV instances. However, for instances that run for a long time and are managed by different users, it is difficult to know which configuration item has been modified and what the default value is. This might cause confusion when you upgrade the cluster or migrate data. Since TiDB v6.2.0, tikv-server supports a new command-line flag [`—-config-info`](https://docs.pingcap.com/tidb/v6.2/command-line-flags-for-tikv-configuration#--config-info-format) that lists default and current values of all TiKV configuration items, helps users to quickly verify the startup parameters of the TiKV process, and improves usability.
|
||||
|
||||
[User document](https://docs.pingcap.com/tidb/v6.2/command-line-flags-for-tikv-configuration#--config-info-format) [#12492](https://github.com/tikv/tikv/issues/12492) @[glorv](https://github.com/glorv)
|
||||
|
||||
### Compatibility changes
|
||||
|
||||
#### Configuration file parameters
|
||||
|
||||
| Configuration file | Configuration | Change type | Description |
|
||||
| --- | --- | --- | --- |
|
||||
| TiKV | [server.simplify-metrics](/tikv-configuration-file.md#simplify-metrics-new-in-v620) | Newly added | This configuration specifies whether to simplify the returned monitoring metrics. |
|
||||
| TiKV | [quota.background-cpu-time](/tikv-configuration-file.md#background-cpu-time-new-in-v620) | Newly added | This configuration specifies the soft limit on the CPU resources used by TiKV background to process read and write requests. |
|
||||
| TiKV | [quota.background-write-bandwidth](/tikv-configuration-file.md#background-write-bandwidth-new-in-v620) | Newly added | This configuration specifies the soft limit on the bandwidth with which background transactions write data (not effective currently). |
|
||||
| TiKV | [quota.background-read-bandwidth](/tikv-configuration-file.md#background-read-bandwidth-new-in-v620) | Newly added | This configuration specifies the soft limit on the bandwidth with which background transactions and the Coprocessor read data (not effective currently). |
|
||||
| TiKV | [quota.enable-auto-tune](/tikv-configuration-file.md#enable-auto-tune-new-in-v620) | Newly added | This configuration specifies whether to enable the auto-tuning of quota. If this configuration item is enabled, TiKV dynamically adjusts the quota for the background requests based on the load of TiKV instances. |
|
||||
| TiKV | rocksdb.enable-pipelined-commit | Deleted | This configuration is no longer effective. |
|
||||
| TiKV | gc-merge-rewrite | Deleted | This configuration is no longer effective. |
|
||||
| TiKV | [log-backup.enable](/tikv-configuration-file.md#enable-new-in-v620) | Newly added | This configuration controls whether to enable log backup on TiKV. |
|
||||
| TiKV | [log-backup.file-size-limit](/tikv-configuration-file.md#file-size-limit-new-in-v620) | Newly added | This configuration specifies the size limit on log backup data. Once this limit is reached, data is automatically flushed to external storage. |
|
||||
| TiKV | [log-backup.initial-scan-pending-memory-quota](/tikv-configuration-file.md#initial-scan-pending-memory-quota-new-in-v620) | Newly added | This configuration specifies the quota of cache used for storing incremental scan data. |
|
||||
| TiKV | [log-backup.max-flush-interval](/tikv-configuration-file.md#max-flush-interval-new-in-v620) | Newly added | This configuration specifies the maximum interval for writing backup data to external storage in log backup. |
|
||||
| TiKV | [log-backup.initial-scan-rate-limit](/tikv-configuration-file.md#initial-scan-rate-limit-new-in-v620) | Newly added | This configuration specifies the rate limit on throughput in an incremental data scan in log backup. |
|
||||
| TiKV | [log-backup.num-threads](/tikv-configuration-file.md#num-threads-new-in-v620) | Newly added | This configuration specifies the number of threads used in log backup. |
|
||||
| TiKV | [log-backup.temp-path](/tikv-configuration-file.md#temp-path-new-in-v620) | Newly added | This configuration specifies temporary path to which log files are written before being flushed to external storage. |
|
||||
| PD | replication-mode.dr-auto-sync.wait-async-timeout | Deleted | This configuration does not take effect and is deleted. |
|
||||
| PD | replication-mode.dr-auto-sync.wait-sync-timeout | Deleted | This configuration does not take effect and is deleted. |
|
||||
|
||||
#### Others
|
||||
|
||||
- TiKV adds a configuration item `split.region-cpu-overload-threshold-ratio` that supports [online configuration](/dynamic-config.md#modify-tikv-configuration-online).
|
||||
|
||||
### Improvements
|
||||
|
||||
- Support compressing the metrics response using gzip to reduce the HTTP body size [#12355](https://github.com/tikv/tikv/issues/12355) @[glorv](https://github.com/glorv)
|
||||
- Improve the readability of the TiKV panel in Grafana Dashboard [#12007](https://github.com/tikv/tikv/issues/12007) @[kevin-xianliu](https://github.com/kevin-xianliu)
|
||||
- Optimize the commit pipeline performance of the Apply operator [#12898](https://github.com/tikv/tikv/issues/12898) @[ethercflow](https://github.com/ethercflow)
|
||||
- Support dynamically modifying the number of sub-compaction operations performed concurrently in RocksDB (`rocksdb.max-sub-compactions`) [#13145](https://github.com/tikv/tikv/issues/13145) @[ethercflow](https://github.com/ethercflow)
|
||||
|
||||
### Bug fixes
|
||||
|
||||
+ TiKV
|
||||
|
||||
- Avoid reporting `WriteConflict` errors in pessimistic transactions [#11612](https://github.com/tikv/tikv/issues/11612) @[sticnarf](https://github.com/sticnarf)
|
||||
- Fix the possible duplicate commit records in pessimistic transactions when async commit is enabled [#12615](https://github.com/tikv/tikv/issues/12615) @[sticnarf](https://github.com/sticnarf)
|
||||
- Fix the issue that TiKV panics when modifying the `storage.api-version` from `1` to `2` [#12600](https://github.com/tikv/tikv/issues/12600) @[pingyu](https://github.com/pingyu)
|
||||
- Fix the issue of inconsistent Region size configuration between TiKV and PD [#12518](https://github.com/tikv/tikv/issues/12518) @[5kbpers](https://github.com/5kbpers)
|
||||
- Fix the issue that TiKV keeps reconnecting PD clients [#12506](https://github.com/tikv/tikv/issues/12506), [#12827](https://github.com/tikv/tikv/issues/12827) @[Connor1996](https://github.com/Connor1996)
|
||||
- Fix the issue that TiKV panics when performing type conversion for an empty string [#12673](https://github.com/tikv/tikv/issues/12673) @[wshwsh12](https://github.com/wshwsh12)
|
||||
- Fix the issue of time parsing error that occurs when the `DATETIME` values contain a fraction and `Z` [#12739](https://github.com/tikv/tikv/issues/12739) @[gengliqi](https://github.com/gengliqi)
|
||||
- Fix the issue that the perf context written by the Apply operator to TiKV RocksDB is coarse-grained [#11044](https://github.com/tikv/tikv/issues/11044) @[LykxSassinator](https://github.com/LykxSassinator)
|
||||
- Fix the issue that TiKV fails to start when the configuration of [backup](/tikv-configuration-file.md#backup)/[import](/tikv-configuration-file.md#import)/[cdc](/tikv-configuration-file.md#cdc) is invalid [#12771](https://github.com/tikv/tikv/issues/12771) @[3pointer](https://github.com/3pointer)
|
||||
- Fix the panic issue that might occur when a peer is being split and destroyed at the same time [#12825](https://github.com/tikv/tikv/issues/12825) @[BusyJay](https://github.com/BusyJay)
|
||||
- Fix the panic issue that might occur when the source peer catches up logs by snapshot in the Region merge process [#12663](https://github.com/tikv/tikv/issues/12663) @[BusyJay](https://github.com/BusyJay)
|
||||
- Fix the panic issue caused by analyzing statistics when `max_sample_size` is set to `0` [#11192](https://github.com/tikv/tikv/issues/11192) @[LykxSassinator](https://github.com/LykxSassinator)
|
||||
- Fix the issue that encryption keys are not cleaned up when Raft Engine is enabled [#12890](https://github.com/tikv/tikv/issues/12890) @[tabokie](https://github.com/tabokie)
|
||||
- Fix the issue that the `get_valid_int_prefix` function is incompatible with TiDB. For example, the `FLOAT` type was incorrectly converted to `INT` [#13045](https://github.com/tikv/tikv/issues/13045) @[guo-shaoge](https://github.com/guo-shaoge)
|
||||
- Fix the issue that the Commit Log Duration of a new Region is too high, which causes QPS to drop [#13077](https://github.com/tikv/tikv/issues/13077) @[Connor1996](https://github.com/Connor1996)
|
||||
- Fix the issue that PD does not reconnect to TiKV after the Region heartbeat is interrupted [#12934](https://github.com/tikv/tikv/issues/12934) @[bufferflies](https://github.com/bufferflies)
|
||||
|
|
|
|||
|
|
@ -2,10 +2,10 @@
|
|||
title: CLI
|
||||
description: Command-line interface tools used to administrate TiKV clusters
|
||||
menu:
|
||||
"6.1":
|
||||
parent: Reference-v6.1
|
||||
"dev":
|
||||
parent: Reference-dev
|
||||
weight: 4
|
||||
identifier: CLI-v6.1
|
||||
identifier: CLI-dev
|
||||
---
|
||||
|
||||
You can use the following command-line interface tools to administrate TiKV clusters:
|
||||
|
|
|
|||
|
|
@ -2,10 +2,10 @@
|
|||
title: pd-ctl
|
||||
description: Use PD Control to obtain the state information of a cluster and tune a cluster.
|
||||
menu:
|
||||
"6.1":
|
||||
parent: CLI-v6.1
|
||||
"dev":
|
||||
parent: CLI-dev
|
||||
weight: 2
|
||||
identifier: pd-ctl-v6.1
|
||||
identifier: pd-ctl-dev
|
||||
---
|
||||
|
||||
As a command-line tool of PD, pd-ctl (PD Control) obtains the state information of the cluster and tunes the cluster.
|
||||
|
|
|
|||
|
|
@ -2,10 +2,10 @@
|
|||
title: pd-recover
|
||||
description: Use PD Recover to recover a PD cluster which cannot start or provide services normally.
|
||||
menu:
|
||||
"6.1":
|
||||
parent: CLI-v6.1
|
||||
"dev":
|
||||
parent: CLI-dev
|
||||
weight: 3
|
||||
identifier: pd-recover-v6.1
|
||||
identifier: pd-recover-dev
|
||||
---
|
||||
|
||||
PD Recover is a disaster recovery tool of PD, used to recover the PD cluster from disaster, e.g.
|
||||
|
|
|
|||
|
|
@ -2,10 +2,10 @@
|
|||
title: tikv-ctl
|
||||
description: Use TiKV Control to manage a TiKV cluster.
|
||||
menu:
|
||||
"6.1":
|
||||
parent: CLI-v6.1
|
||||
"dev":
|
||||
parent: CLI-dev
|
||||
weight: 1
|
||||
identifier: tikv-ctl-v6.1
|
||||
identifier: tikv-ctl-dev
|
||||
---
|
||||
|
||||
TiKV Control (`tikv-ctl`) is a command-line tool of TiKV, used to manage the cluster.
|
||||
|
|
|
|||
|
|
@ -2,10 +2,10 @@
|
|||
title: TiUP
|
||||
description: TiUP documentation
|
||||
menu:
|
||||
"6.1":
|
||||
parent: Reference-v6.1
|
||||
"dev":
|
||||
parent: Reference-dev
|
||||
weight: 3
|
||||
identifier: TiUP-v6.1
|
||||
identifier: TiUP-dev
|
||||
---
|
||||
|
||||
Starting with TiKV 4.0, TiUP, as the package manager, makes it easier to manage different cluster components in the TiKV ecosystem.
|
||||
|
|
|
|||
|
|
@ -2,10 +2,10 @@
|
|||
title: Architecture
|
||||
description: How TiKV works and how it is built.
|
||||
menu:
|
||||
"6.1":
|
||||
parent: Reference-v6.1
|
||||
"dev":
|
||||
parent: Reference-dev
|
||||
weight: 1
|
||||
identifier: Architecture-v6.1
|
||||
identifier: Architecture-dev
|
||||
---
|
||||
|
||||
This chapter introduces how TiKV works and how it is built:
|
||||
|
|
|
|||
|
|
@ -2,10 +2,10 @@
|
|||
title: Overview
|
||||
description: Core concepts and architecture behind TiKV.
|
||||
menu:
|
||||
"6.1":
|
||||
parent: Architecture-v6.1
|
||||
"dev":
|
||||
parent: Architecture-dev
|
||||
weight: 1
|
||||
identifier: Overview-v6.1
|
||||
identifier: Overview-dev
|
||||
---
|
||||
|
||||
This page provides an overview of the TiKV architecture.
|
||||
|
|
|
|||
|
|
@ -2,10 +2,10 @@
|
|||
title: Scheduling
|
||||
description: Introduces the PD scheduling component in a TiKV cluster.
|
||||
menu:
|
||||
"6.1":
|
||||
parent: Architecture-v6.1
|
||||
"dev":
|
||||
parent: Architecture-dev
|
||||
weight: 4
|
||||
identifier: Scheduling-v6.1
|
||||
identifier: Scheduling-dev
|
||||
---
|
||||
|
||||
The Placement Driver ([PD](https://github.com/tikv/pd)) works as the manager in a TiKV cluster, and it also schedules Regions in the cluster. This article introduces the design and core concepts of the PD scheduling component.
|
||||
|
|
|
|||
|
|
@ -2,10 +2,10 @@
|
|||
title: Storage
|
||||
description: Understand the storage layer of a TiKV cluster.
|
||||
menu:
|
||||
"6.1":
|
||||
parent: Architecture-v6.1
|
||||
"dev":
|
||||
parent: Architecture-dev
|
||||
weight: 3
|
||||
identifier: Storage-v6.1
|
||||
identifier: Storage-dev
|
||||
---
|
||||
|
||||
This document introduces some design ideas and key concepts of TiKV storage.
|
||||
|
|
|
|||
|
|
@ -2,10 +2,10 @@
|
|||
title: Terminologies
|
||||
description: Explain TiKV and PD terminologies.
|
||||
menu:
|
||||
"6.1":
|
||||
parent: Architecture-v6.1
|
||||
"dev":
|
||||
parent: Architecture-dev
|
||||
weight: 4
|
||||
identifier: Terminologies-v6.1
|
||||
identifier: Terminologies-dev
|
||||
---
|
||||
|
||||
This document explains some important terminologies of TiKV and PD.
|
||||
|
|
|
|||
|
|
@ -2,10 +2,10 @@
|
|||
title: FAQs
|
||||
description: Frequently asked questions about TiKV
|
||||
menu:
|
||||
"6.1":
|
||||
parent: Reference-v6.1
|
||||
"dev":
|
||||
parent: Reference-dev
|
||||
weight: 10
|
||||
identifier: FAQs-v6.1
|
||||
identifier: FAQs-dev
|
||||
---
|
||||
|
||||
## What is TiKV?
|
||||
|
|
|
|||
|
|
@ -2,9 +2,9 @@
|
|||
title: Reference
|
||||
description: Learn about technical details of TiKV
|
||||
menu:
|
||||
"6.1":
|
||||
"dev":
|
||||
weight: 3
|
||||
identifier: Reference-v6.1
|
||||
identifier: Reference-dev
|
||||
---
|
||||
|
||||
This chapter describes some technical details of TiKV:
|
||||
|
|
|
|||
|
|
@ -2,10 +2,10 @@
|
|||
title: Query Layers
|
||||
description: Extend TiKV using stateless query layers
|
||||
menu:
|
||||
"6.1":
|
||||
parent: Reference-v6.1
|
||||
"dev":
|
||||
parent: Reference-dev
|
||||
weight: 2
|
||||
identifier: Query Layers-v6.1
|
||||
identifier: Query Layers-dev
|
||||
---
|
||||
|
||||
TiKV works as storage engines for the following projects:
|
||||
|
|
|
|||
Loading…
Reference in New Issue