业务挑战
在数据报表场景,原先采用 Hadoop 数仓对数据做预聚合,然后放到 MySQL 里面做查询,随着业务增长,报表形式更加多样化,MySQL 的扩展性成为瓶颈。多节点 MySQL 的分库分表方案复杂度高,运维非常困难。在反欺诈分析场景,传统数仓方案 T+1 的时效性不佳,要求数据库提供较强的实时分析能力。
解决方案
面对以上挑战,小红书引入 TiDB HTAP 方案,在数据服务层采用 TiDB 提供全部数据服务。
在数据报表场景,直接使用 TiDB 直接替换 MySQL ,TiDB 可以通过增加节点进行扩容,并且可以自动实现数据的重新均衡。通过搭建实时流把在线业务层分库分表的 MySQL Binlog 写到 TiDB 并进行合库,将一万张分表合成 TiDB 的一张大表,在 TiDB 进行查询、事务和聚合等操作,都不会影响主库。
反欺诈数据分析场景应用 TiDB 之后,把 T+1 的提交改成由 Flink SQL 实时写入,打点数据产生的速率峰值 QPS 达到三四万,单表一天写入 5 亿左右的数据。小红书绕过 Hadoop 数仓,通过 TiDB HTAP 提供实时查询,在分钟级就可以看到促销发放优惠券的使用与分发情况,为业务提供高效、稳健的实时数据服务。
小红书将其他数据汇聚至基于 Amazon S3 和 EMR 所构建的数据湖中,实现对数据的预处理和聚合,然后加载至 TiDB 集群,实现统一、高效的运营分析。
应用效果
客户简介
行业:零售与电商
小红书是年轻人的生活方式平台,用户可以通过短视频、图文等形式记录生活点滴,分享生活方式。截至到 2019 年 10 月,小红书月活跃用户数已经过亿,并持续快速增长。