---
title: 'TiDB x VIPKID | TiDB 在公有云亿级数据场景下的应用实践'
date: '2023-06-29T06:16:27+08:00'
status: publish
permalink: /case/user-case-vipkid
author: xuliwen
excerpt: 'VIPKID 基于公有云在多个业务场景引入 TiDB ，打破了原先单机 MySQL 的性能和容量瓶颈。依托 TiDB 高度兼容 MySQL 这一特性，线上业务不需做过多改动即可实现平滑迁移。'
type: case
id: 1232
thumbnail: https://img1.pingcap.com/files/2023/02/VIPKID.jpeg
industry:
    - 在线教育
scene:
    - '实时 HTAP'
company_desc:
    - 'VIPKID 是全球增长速度最快的在线青少儿英语教育品牌，提供北美外教一对一的互联网授课服务。VIPKID 目前在全球设立 9 个办公室，付费学员数量突破 50万。'
white_paper_link:
    - ''
banner_image:
    - ''
---
业务挑战
----

VIPKID 采用阿里云与 AWS 双云架构提供业务服务，随着业务数据量的暴增， MySQL 单机瓶颈的问题逐渐暴露，经过多次业务调优和 SQL 调优，MySQL 还是无法满足业务需求，于是 VIPKID 在多个业务场景引入 TiDB。

解决方案
----

目前，VIPKID 共有 5 套 TiDB 集群，集群最大数据量达 40 亿以上，单表是 2.5 亿，最大 QPS 平均 2.3 万左右，主要用于写入，另外还有 2 套单独的 DM 集群。 在线上复杂查询场景，TiDB 根据自身特性做了很多优化，TiDB 中数据可以均匀分布在多个存储节点，同时支持 Join 和聚合算子的并行优化，打破了原先单机 MySQL 的性能和容量瓶颈。对于一些在线或离线业务，VIPKID 通过 TiDB Data Migration 管理平台拉取对应 MySQL Binlog，进行解析后同步到下游 TiDB 集群，由 TiDB 提供多维度的复杂查询，下游的统计逻辑不需要做变更。

![VIPKid数据库架构示意图.png](https://img1.pingcap.com/prod/VIP_Kid_24d0504976.png)在数据归档场景，原先随着线上表增加或删减字段，历史表也都需要做对应操作，导致很高的维护成本。TiDB 实现了 F1 在线异步 Schema 变更算法，避免历史表的 Rebuild 操作，变更线上表的结构，不再影响之前的数据，大幅降低了加减字段的成本。

用户收益
----

![VIPkid用户收益.png](https://img1.pingcap.com/prod/VI_Pkid_b6a9f6a206.png)