mirror of https://github.com/tikv/website.git
Refactor overview and add query layers page
Signed-off-by: Ana Hobden <operator@hoverbear.org>
This commit is contained in:
parent
32ea961990
commit
922421f8a1
|
@ -12,26 +12,22 @@ menu:
|
|||
|
||||
**TiKV** is a distributed transactional key-value database originally created by [PingCAP](https://pingcap.com/en) to complement [TiDB](https://github.com/pingcap/tidb).
|
||||
|
||||
As an incubating project of the [Cloud Native Computing Foundation](https://www.cncf.io/), TiKV is intended to fill the role of a unifying distributed storage layer. TiKV excels at working with **data in the large** by supporting petabyte scale deployments spanning trillions of rows.
|
||||
|
||||
It compliments other CNCF projects technologies like [etcd](https://etcd.io/) which is useful for low-volume metadata storage, and can be extended using [stateless query layers](../../reference/query-layers) which speak other protocols, like [TiDB](https://github.com/pingcap/tidb) speaking MySQL.
|
||||
|
||||
{{< info >}}
|
||||
The **Ti** in TiKV stands for **titanium**. Titanium has the highest strength-to-density ratio of any metallic element and is named after the Titans of Greek mythology.
|
||||
{{< /info >}}
|
||||
|
||||
## Features
|
||||
## Notable Features
|
||||
|
||||
{{< features >}}
|
||||
{{< features featured >}}
|
||||
|
||||
## Code
|
||||
|
||||
TiKV is written in [Rust](https://www.rust-lang.org) and powered by the [Raft](https://raft.github.io) consensus algorithm.
|
||||
|
||||
## Inspiration
|
||||
|
||||
TiKV was originally inspired by [Google Spanner](https://ai.google/research/pubs/pub39966) and [HBase](https://hbase.apache.org).
|
||||
You can browse a complete list on the [features](../features) page.
|
||||
|
||||
## Architecture
|
||||
|
||||
The basic architecture of TiKV is described in the diagram below:
|
||||
|
||||
{{< figure
|
||||
src="/img/basic-architecture.png"
|
||||
caption="The architecture of TiKV"
|
||||
|
@ -40,3 +36,9 @@ The basic architecture of TiKV is described in the diagram below:
|
|||
number="1" >}}
|
||||
|
||||
You can read more in the [Concepts and architecture](../architecture/) documentation.
|
||||
|
||||
## Codebase, Inspiration, and Culture
|
||||
|
||||
TiKV is implemented in the [Rust](https://rust-lang.org) programming language. It uses technologies like [Facebook's RocksDB](https://rocksdb.org/) and [Raft](https://raft.github.io/).
|
||||
|
||||
The project was originally inspired by [Google Spanner](https://ai.google/research/pubs/pub39966) and [HBase](https://hbase.apache.org).
|
|
@ -4,6 +4,7 @@ description: Interact with TiKV using the raw key-value API or the transactional
|
|||
menu:
|
||||
docs:
|
||||
parent: Reference
|
||||
weight: 2
|
||||
---
|
||||
|
||||
TiKV has clients for a number of languages:
|
||||
|
|
|
@ -0,0 +1,16 @@
|
|||
---
|
||||
title: Query Layers
|
||||
description: Extend TiKV using stateless query layers
|
||||
menu:
|
||||
docs:
|
||||
parent: Reference
|
||||
weight: 3
|
||||
---
|
||||
|
||||
There are several projects which harness TiKV to power their storage:
|
||||
|
||||
* [TiDB](https://github.com/pingcap/tidb) (MySQL)
|
||||
* [TiPrometheus](https://github.com/bragfoo/TiPrometheus) (Prometheus)
|
||||
* [Titan](https://github.com/distributedio/titan) (Redis)
|
||||
* [Tidis](https://github.com/yongman/tidis) (Redis)
|
||||
* [Titea](https://github.com/gengmei-tech/titea) (Redis)
|
|
@ -1,12 +1,33 @@
|
|||
- name: Geo-replication
|
||||
description: TiKV uses the [Raft](https://raft.github.io/) consensus algorithm and the [Placement Driver](/docs/3.0/concepts/architecture#placement-driver) to support geo-replication.
|
||||
icon: fa-globe
|
||||
featured: true
|
||||
- name: Horizontal scalability
|
||||
description: With the [Placement Driver](/docs/3.0/concepts/architecture#placement-driver) and carefully designed Raft groups, TiKV excels in horizontal scalability and can easily scale to 100+ terabytes of data.
|
||||
icon: fa-ruler-horizontal
|
||||
featured: true
|
||||
- name: Consistent distributed transactions
|
||||
description: Similar to Google's [Spanner](https://ai.google/research/pubs/pub39966), TiKV supports externally consistent distributed transactions.
|
||||
icon: fa-align-center
|
||||
featured: true
|
||||
- name: Coprocessor support
|
||||
description: Similar to [Hbase](https://hbase.apache.org), TiKV implements a coprocessor framework to support distributed computing.
|
||||
icon: fa-microchip
|
||||
featured: true
|
||||
- name: Automatic sharding
|
||||
description: TiKV shards your data into regions without manual intervention, reducing maintenance burden.
|
||||
icon: fa-boxes
|
||||
- name: Region balance
|
||||
description: TiKV supports rebalancing regions due to faults, workload, or topology needs.
|
||||
icon: fa-balance-scale
|
||||
- name: Dynamic membership
|
||||
description: Grow or shrink TiKV clusters dynamically, without the need for downtime.
|
||||
icon: fa-cogs
|
||||
- name: Rolling online updates
|
||||
description: Using supported deployment methods, safely upgrade TiKV clusters without worry.
|
||||
- name: Extensive Metric Suite
|
||||
description: Easily integrate TiKV into your infrastructure monitoring with extensive Prometheus reporting.
|
||||
icon: fa-eye
|
||||
- name: Flexible APIs
|
||||
description: Use transactional or raw gRPC APIs through clients in your favorite language, or use gRPC directly.
|
||||
icon: fa-plug
|
|
@ -48,7 +48,7 @@
|
|||
<section class="section has-background-primary">
|
||||
<div class="container">
|
||||
<div class="columns">
|
||||
{{ range $features }}
|
||||
{{ range where $features "featured" true }}
|
||||
<div class="column">
|
||||
<div class="card">
|
||||
<header class="card-header">
|
||||
|
|
|
@ -1,4 +1,7 @@
|
|||
{{ $features := site.Data.features }}
|
||||
{{ if eq (.Get 0) "featured"}}
|
||||
{{ $features = where $features "featured" true }}
|
||||
{{ end }}
|
||||
<table>
|
||||
<thead>
|
||||
<tr>
|
||||
|
|
Loading…
Reference in New Issue