Skip to content

Commit

Permalink
Merge pull request pingcap#3 from pingcap/book-rush-6.x
Browse files Browse the repository at this point in the history
Book rush 6.x
  • Loading branch information
shczhen authored Apr 21, 2022
2 parents 315e6fb + d5b08df commit 904df37
Show file tree
Hide file tree
Showing 39 changed files with 560 additions and 21,039 deletions.
34 changes: 15 additions & 19 deletions .github/workflows/docker-image.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,30 +2,26 @@ name: Docker Image CI

on:
push:
branches: [ main ]
pull_request:
branches: [ main ]
branches: [main]

jobs:

build:

runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v3

- name: Login to Container Registry
uses: docker/login-action@v1
with:
registry: ${{ secrets.DOCKER_REGISTRY }}
username: ${{ secrets.DOCKER_REGISTRY_USERNAME }}
password: ${{ secrets.DOCKER_REGISTRY_PASSWORD }}
- name: Login to Container Registry
uses: docker/login-action@v1
with:
registry: ${{ secrets.DOCKER_REGISTRY }}
username: ${{ secrets.DOCKER_REGISTRY_USERNAME }}
password: ${{ secrets.DOCKER_REGISTRY_PASSWORD }}

- name: Build and push
uses: docker/build-push-action@v2
with:
context: .
push: true
tags: |
${{ secrets.DOCKER_REGISTRY }}/tidb-community-book:${{ runner.os }}-${{ github.sha }}
- name: Build and push
uses: docker/build-push-action@v2
with:
context: .
push: true
tags: |
${{ secrets.DOCKER_REGISTRY }}/tidb-community-book:${{ runner.os }}-${{ github.sha }}
24 changes: 23 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1 +1,23 @@
# Docusaurus-test
# About

TiDB 社区电子书 [tidb.net/book](https://tidb.net/book)

## Structure

```
.
├── Dockerfile
├── README.md
└── website // website built with Docusaurus
├── README.md
├── babel.config.js
├── book-rush-6-x // Book Rush 6.x content
├── docusaurus.config.js
├── monthly // Monthly content
├── package.json
├── sidebars.js
├── src
├── static
├── tsconfig.json
└── yarn.lock
```
14 changes: 3 additions & 11 deletions website/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,18 +24,10 @@ $ yarn build

This command generates static content into the `build` directory and can be served using any static contents hosting service.

### Deployment

Using SSH:

```
$ USE_SSH=true yarn deploy
```

Not using SSH:
### Serve and Deployment

```
$ GIT_USER=<Your GitHub username> yarn deploy
$ yarn serve
```

If you are using GitHub pages for hosting, this command is a convenient way to build the website and push to the `gh-pages` branch.
Nginx reverse porxy: tidb.net/book -> website.serve:3000
6 changes: 6 additions & 0 deletions website/book-rush/1-features/1-tiflash-code/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
---
title: TiFlash 源码解读
hide_title: true
---

# TiFlash 源码解读
6 changes: 6 additions & 0 deletions website/book-rush/1-features/2-new-features/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
---
title: TiDB 6.0 新特性解读
hide_title: true
---

# TiDB 6.0 新特性解读
6 changes: 6 additions & 0 deletions website/book-rush/1-features/3-other-features/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
---
title: 其他原理解读
hide_title: true
---

# 其他原理解读
8 changes: 8 additions & 0 deletions website/book-rush/1-features/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
---
title: TiDB 6.0 原理和特性
hide_title: true
---

# TiDB 6.0 原理和特性

6.0 刚刚发布,PingCAP 研发也在加紧产出对新特性解读的相关内容,如果你有相关的内容,非常欢迎投稿。
6 changes: 6 additions & 0 deletions website/book-rush/2-developer-guide/1-cloud-devtier/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
---
title: TiDB Cloud DevTier 搭建
hide_title: true
---

# TiDB Cloud DevTier 搭建
6 changes: 6 additions & 0 deletions website/book-rush/2-developer-guide/2-demo-app/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
---
title: TiDB Demo Application
hide_title: true
---

# TiDB Demo Application
6 changes: 6 additions & 0 deletions website/book-rush/2-developer-guide/3-simple-crud/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
---
title: Simple CRUD 指南
hide_title: true
---

# Simple CRUD 指南
16 changes: 16 additions & 0 deletions website/book-rush/2-developer-guide/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
---
title: TiDB Developer 体验指南
hide_title: true
---

# TiDB Developer 体验指南

TiDB 社区在不断完善面向 Developer 人群的适配和文档,这一块内容大部分将由 PingCAP 内部研发撰写,如果你有相关的内容,非常欢迎投稿。



示例:

- [Facebook 开源 Golang 实体框架 Ent 现已支持 TiDB](https://pingcap.com/zh/blog/facebook-ent-supports-tidb)
- [当 TiDB 遇见 dbt丨让数据价值清晰可见](https://pingcap.com/zh/blog/when-tidb-meets-dbt)

15 changes: 15 additions & 0 deletions website/book-rush/3-manageability/1-tiem-practice/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
---
title: TiEM 体验
hide_title: true
---

# TiEM 体验

TiDB Enterprise Manager (TiEM) 是一款以 TiDB 数据库为核心的企业级数据库管理平台,帮助用户在私有部署 (on-premises) 或公有云环境中管理 TiDB 集群。



TiEM 不仅为 TiDB 集群提供全生命周期的可视化管理,也同时一站式提供 TiDB 数据库的参数管理、数据库版本升级、克隆集群、主备集群切换、数据导入导出、数据同步、数据备份恢复服务,能有效提高 TiDB 集群运维效率,降低企业运维成本。

在此目录下,你可以撰写 TiEM 体验和实践相关的文章。

20 changes: 20 additions & 0 deletions website/book-rush/3-manageability/2-clinic-practice/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
---
title: Clinic 体验
hide_title: true
---

# Clinic 体验

PingCAP Clinic 诊断服务 Technical Preview 版本已经上线



[PingCAP Clinic](https://clinic.pingcap.com.cn/) 为 TiDB 集群提供诊断服务,支持远程定位集群问题和本地快速检查集群状态,用于从全生命周期确保 TiDB 集群稳定运行、预测可出现的集群问题、降低问题出现概率、快速定位并修复问题。



当 TiDB 集群出现问题,需要邀请 PingCAP 技术支持人员协助定位问题时,你可以通过 PingCAP Clinic 服务采集并上传诊断数据,从而大大提高定位问题的速度。



在此目录下,你可以撰写 Clinic 体验和实践相关的文章。
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
---
title: Placement Rules 体验
hide_title: true
---

# Placement Rules 体验

## 基于 SQL 的数据放置规则

TiDB 是具有优秀扩展能力的分布式数据库,通常数据横跨多个服务器甚至多数据中心部署,数据调度管理是 TiDB 最重要的基础能力之一。大多数情况下用户无需关心数据如何调度管理,但是随着业务复杂度的提升,因隔离性和访问延迟导致的数据部署变更是 TiDB 面对的新的挑战。TiDB 从 6.0.0 版本开始正式提供基于 SQL 接口的数据调度管理能力,支持针对任意数据提供副本数、角色类型、放置位置等维度的灵活调度管理能力,在多业务共享集群、跨 AZ 部署下提供更灵活的数据放置管理能力。



Placement Rules in SQL 特性用于通过 SQL 接口配置数据在 TiKV 集群中的放置位置。通过该功能,用户可以将表和分区指定部署至不同的地域、机房、机柜、主机。适用场景包括低成本优化数据高可用策略、保证本地的数据副本可用于本地 Stale Read 读取、遵守数据本地要求等。



> 注意
>
> Placement Rules in SQL 底层的实现依赖 PD 提供的放置规则 (placement rules) 功能,参考 [Placement Rules 使用文档](https://docs.pingcap.com/zh/tidb/v6.0/configure-placement-rules)。在 Placement Rules in SQL 语境下,放置规则既可以代指绑定对象的放置策略 (placement policy),也可以代指 TiDB 发给 PD 的放置规则。


## 应用场景

该功能可以实现以下业务场景:

- 合并多个不同业务的数据库,大幅减少数据库常规运维管理的成本
- 增加重要数据的副本数,提高业务可用性和数据可靠性
- 将最新数据存入 SSD,历史数据存入 HDD,降低归档数据存储成本
- 把热点数据的 leader 放到高性能的 TiKV 实例上
- 将冷数据分离到不同的存储中以提高可用性



在此目录下,你可以撰写 Placement Rules 体验和实践相关的文章。
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
---
title: TiDB 可观测性体验
hide_title: true
---

# TiDB 可观测性体验

## 可观测性

- Top SQL:面向非专家的 SQL 性能诊断功能

Top SQL 是一个面向运维人员及应用开发者的一体化、自助的数据库性能观测和诊断功能,集成于 TiDB Dashboard 图形化界面,在 TiDB v6.0.0 正式发布。

与现有 TiDB Dashboard 中各个面向数据库专家的诊断功能不同的是,Top SQL 完全面向非专家:你不需要观察几千张监控图表寻找相关性,也不需要理解诸如 Raft Snapsnot、RocksDB、MVCC、TSO 等 TiDB 内部机制,仅需要知道常见的数据库概念,如索引、锁冲突、执行计划等,就可以通过 Top SQL 快速分析数据库负载情况,并提升应用程序的性能。

Top SQL 功能功能默认关闭。启用后,通过 Top SQL 提供的各个 TiDB 或 TiKV 节点实时 CPU 负载情况,你可以直观了解各节点的高 CPU 负载来自哪些 SQL 语句,从而快速分析诸如数据库热点和负载陡升等问题。例如,你可以通过 Top SQL 分析某个 TiKV 节点上正在消耗 90% CPU 负载的 SQL 查询语句的具体内容及执行情况。

[用户文档](https://docs.pingcap.com/zh/tidb/v6.0/top-sql)



- 持续性能分析

持续性能分析 (Continuous Profiling) 功能集成于 TiDB Dashboard,在 TiDB v6.0.0 中正式发布。该功能默认关闭,启用该功能后,集群将以极低的开销自动收集各 TiDB、TiKV 及 PD 实例每时每刻的性能数据。通过这些历史性能数据,技术专家可以在事后回溯、分析该集群任意时刻(如曾经出现过高内存占用)的问题根因,无需等待问题复现,从而有助于缩短故障诊断时间。

[用户文档](https://docs.pingcap.com/zh/tidb/v6.0/continuous-profiling)



在此目录下,你可以撰写 针对 TiDB 可观测性的体验和实践相关的文章。
26 changes: 26 additions & 0 deletions website/book-rush/3-manageability/5-dm-webui/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
---
title: DM WebUI 体验
hide_title: true
---

# DM WebUI 体验

## DM WebUI(实验特性)

DM WebUI 是一个 TiDB Data Migration (DM) 迁移任务管理界面,方便用户以直观的方式管理大量迁移任务,无需使用 dmctl 命令行,简化任务管理的操作步骤。已支持的功能有:

- 在 Dashboard 上显示迁移任务信息

- 管理迁移任务

- 配置上游参数

- 查询同步状态

- 查看 Master 和 Worker 信息

此特性为实验性,尚存在不完善之处。建议仅用于体验,且已知与 dmctl 操作同一任务可能存在问题,此现象将于后续版本改进。

[用户文档](https://docs.pingcap.com/zh/tidb/v6.0/dm-webui-guide)

在此目录下,你可以撰写针对 DM WebUI 体验和实践相关的文章。
10 changes: 10 additions & 0 deletions website/book-rush/3-manageability/6-other-features/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
---
title: 6.0 其他特性体验
hide_title: true
---

# 6.0 其他特性体验

前面的目录中并没有一一列出 6.0 所有新增特性,其他特性详见 TiDB 6.0 Release 文档:https://docs.pingcap.com/zh/tidb/v6.0/release-6.0.0-dmr

在此目录下,你可以撰写其他 6.0 新特性体验和实践相关的文章。
12 changes: 12 additions & 0 deletions website/book-rush/3-manageability/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
---
title: TiDB 6.0 可管理性
hide_title: true
---

# TiDB 6.0 可管理性

可管理性是数据库的一个重要能力维度:在满足业务需求的前提下,是否灵活易用,将决定了用户技术选择背后的隐性成本。这种成本可大可小,可以是一句抱怨,也可能会结合人因带来灾难性后果。在最新版本研发过程中,我们结合了客户和市场反馈,总结了当前的可管理性的问题仍存在的缺失,这包含了**「复杂且不直观的集群的日常管理」,「无法控制数据的存储位置」,「数据生态套件难于使用」,「面对热点缺少解决方案」**等多个维度,而 TiDB 6.0 从内核,数据生态套件,增强组件多个方面针对这些问题进行了加强。



在此目录下,你可以从不同的角度体验 TiDB 6.0 的可管理型,撰写相关的体验和实践文章。
12 changes: 12 additions & 0 deletions website/book-rush/4-performance/1-data-consistency/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
---
title: 内核层面增加数据索引一致性检查
hide_title: true
---

# 内核层面增加数据索引一致性检查

在事务执行过中增加数据索引一致性检查,通过极低的资源开销提升系统稳定性和健壮性。你可以通过 `tidb_enable_mutation_checker``tidb_txn_assertion_level` 参数控制检查行为。默认配置下,大多数场景下 QPS 下降控制在 2% 以内。关于数据索引一致性检查的报错说明,请参考[用户文档](https://docs.pingcap.com/zh/tidb/v6.0/troubleshoot-data-inconsistency-errors)



在此目录下,你可以撰写针对这个特性的体验和实践文章。
24 changes: 24 additions & 0 deletions website/book-rush/4-performance/2-hotspot/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
---
title: TiDB 6.0 热点场景优化体验
hide_title: true
---

# TiDB 6.0 热点场景优化体验

- 热点小表缓存

用户业务遇到热点小表访问场景下,支持显式将热点表缓存于内存中,大幅提高访问性能,提升吞吐,降低访问延迟。该方案可以有效避免引入三方缓存中间件,降低架构复杂性,减少运维管理成本,适用于高频访问低频更新的小表场景,例如配置表,汇率表等。

[用户文档](https://docs.pingcap.com/zh/tidb/v6.0/cached-tables)[#25293](https://github.com/pingcap/tidb/issues/25293)



- 内存悲观锁优化

TiDB 从 v6.0.0 开始默认开启内存悲观锁功能。开启后,悲观事务锁管理将在内存中完成,避免悲观锁持久化,也避免了锁信息的 Raft 复制,大大降低悲观事务锁管理的开销。在悲观锁性能瓶颈下,通过悲观锁内存优化,可以有效降低 10% 延迟,提升 10% QPS。

[用户文档](https://docs.pingcap.com/zh/tidb/v6.0/pessimistic-transaction#内存悲观锁)[#11452](https://github.com/tikv/tikv/issues/11452)



在此目录下,你可以撰写针对这些特性的体验和实践文章。
24 changes: 24 additions & 0 deletions website/book-rush/4-performance/3-mpp-engine/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
---
title: MPP 引擎计算性能提升
hide_title: true
---

# MPP 引擎计算性能提升

在 TiDB 6.0 中,通过支持更多函数和算子下推至 MPP 引擎,持续提升 MPP 引擎计算性能:

- 逻辑函数: `IS``IS NOT`

- 字符串函数:`REGEXP()``NOT REGEXP()`

- 数学函数:`GREATEST(int/real)``LEAST(int/real)`

- 日期函数:`DAYOFNAME()``DAYOFMONTH()``DAYOFWEEK()``DAYOFYEAR()``LAST_DAY()``MONTHNAME()`

- 算子:Anti Left Outer Semi Join, Left Outer Semi Join

[用户文档](https://docs.pingcap.com/zh/tidb/v6.0/use-tiflash#tiflash-支持的计算下推)



在此目录下,你可以撰写针对这些特性的体验和实践文章。
Loading

0 comments on commit 904df37

Please sign in to comment.