---
title: 'TiDB x 爱奇艺 | TiDB 在爱奇艺实时分析场景的应用实践'
date: '2023-06-30T01:47:22+08:00'
status: publish
permalink: /case/user-case-iq
author: xuliwen
excerpt: 'TiDB 作为一款分布式 NewSQL 数据库具备水平的弹性扩展能力，支持 ACID 事务，同时兼容 MySQL 协议，能很好满足爱奇艺对于实时分析的业务需求。'
type: case
id: 1241
thumbnail: https://img1.pingcap.com/files/2023/02/爱奇艺.png
industry:
    - 视频
scene:
    - '实时 HTAP'
white_paper_link:
    - 'https://app.ma.scrmtech.com/resources/ResourcePc/ResourcePcInfo?pf_uid=19697_1864&id=24385&pf_type=3'
company_desc:
    - '爱奇艺是全球领先的网络视频播放平台，专注于提供高清网络视频服务，是 2021 年中国市场份额最大的五个影音平台之一。2019 年 6 月，爱奇艺 VIP 会员规模突破 1 亿。'
banner_image:
    - ''
---
业务挑战
----

随着视频业务的快速发展，数据的实时处理能力成为数据变现的重要关口之一。面对爱奇艺实时分析的业务需求，Lambda 和 Kappa 两种经典架构存在不同的痛点：Lambda 架构相对来说比较复杂，需要去维护流、批两套系统，对于运维和开发人员来说难度相对比较大，离线数据和实时数据也很难保持一致；对于 Kappa 架构来说，它对消息中间件是强依赖的，存在性能瓶颈，还存在丢数据的风险，给爱奇艺的实时分析业务带来了挑战。

解决方案
----

历经五年的时间，爱奇艺内部 TiDB 集群的规模已经超过 500 台服务器，总计有 100 多个 TiDB 集群服务 30 多条业务线，涉及编解码、图片生产、文件存储、风控、会员订单、用户登录、观影记录、BI 运营等。

### 安全风控场景

爱奇艺内部的安全风控数据服务系统主要的功能是提供统一的标签服务，需要满足 OLTP 和 OLAP 两类查询。标签的实时数据写入并存在 TiDB 里面，然后通过解析 Binlog 的方式或是通过手动触发的方式支持标签上浮，存储到服务层的 Cache 里面，用风控引擎进行一些实时的查询。ETL 模块通过跑 Spark job 的方式把 TiDB 的数据放到 Hive 里面，确保 TiDB 和 Hive 里面都存有全量的数据。

![数据服务系统架构.png](https://img1.pingcap.com/prod/_0e0972e550.png)### BI 运营系统场景

BI 运营系统主要目的是帮助运营人员去分析站内剧集上线后的综合表现，需要对多个维度的数据进行统计分析。BI 运营系统的数据源来自内部的内容数仓以及用户画像的数据，通过 Spark 和 Hive 的清洗存到服务层。TiDB 负责详情页的查询，为某专辑或者是视频展示详细的统计数据，数据可以展示每日的详情，也可以展示该时段的实时数据统计，目前该系统数据量大概有十几个 TB。爱奇艺部署 TiFlash 集群，业务 SQL 方面通过加 hint 的方式，把查询 SQL 打到 TiFlash 集群上，使得 OLAP 类的查询和 OLTP 类的查询互不影响。

![BI运营系统架构.png](https://img1.pingcap.com/prod/BI_7085b35183.png)业务收益
----

- TiDB 具备水平的弹性扩展能力，支持 ACID 事务，同时兼容 MySQL 协议；
- TiDB 满足业务系统 OLTP 和 OLAP 的两类查询需求，解决了 OLAP 类的查询和 OLTP 类的查询互相干扰的问题；
- TiDB 支持真正的 Real-Time HTAP 场景，且性能表现优异。