百万级活跃用户、十亿级数据,揭秘PolarDB-X如何提升小打卡性能和稳定性

本文涉及的产品
云原生数据库 PolarDB MySQL 版,Serverless 5000PCU 100GB
云原生数据库 PolarDB 分布式版,标准版 2核8GB
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
简介: 通过PolarDB-X+RDS MySQL的分布式数据库解决方案支持客户核心业务圈子打卡日记,采用PolarDB-X的水平拆分给客户提供海量数据存储能力,利用平滑扩容能力提供计算和存储的平滑扩展,可支持到百亿级数据存储和读写。

“PolarDB-X产品解决了我们社交场景中的圈子日记查询功能,每天用户在小打卡数十万的兴趣圈子中活跃,发布数百万条打卡日记,非常适合PolarDB-X的分库分表场景,降低了响应时间,提高了并发查询能力,利用异构索引表满足了我们多维度查询的需求,最近的全局二级索引解决了异构索引表数据延迟的问题。”这是来自小打卡的客户感言


“再小的爱好都有同好”

小打卡是国内知名的兴趣社群平台,在这里,能快速发现你感兴趣的圈子;加入圈子,有达人带你玩转各种兴趣,有同好一起分享,一起成长。2017年8月公司成立至今,小打卡上已服务六千多万用户,聚集绘画、瑜伽、健身、手帐、摄影、亲子、阅读、潮玩等数百万个兴趣圈子,每天有数百万用户活跃在小打卡上,围绕各类兴趣和学习产生数百万条内容和数百万次互动。

1.png

业务挑战

基于小打卡的业务场景,面临着三个主要挑战:

  • 数百万个圈子的打卡日记数据量大,客户有十亿级数据的高性能存储诉求。

  • 百万级活跃用户,有高并发读写诉求,同时需要在十亿级数据存储情况下读写性能平稳。

  • 圈子打卡日记业务在根据圈子做水平拆分表之后有多维度查询诉求,通过用户维度查询打卡日记。

PolarDB-X+RDS MySQL的分布式数据库解决方案

针对上述业务痛点,我们通过PolarDB-X+RDS MySQL的分布式数据库解决方案支持客户核心业务圈子打卡日记,采用PolarDB-X的水平拆分给客户提供海量数据存储能力,利用平滑扩容能力提供计算和存储的平滑扩展,可支持到百亿级数据存储和读写。

通过PolarDB-X水平拆分后,数据库业务由多个RDS MySQL承载,单个RDS业务读写压力大幅度下降,出现性能异常的时候,只影响部分用户使用,同时由于单个物理表数据量小,性能异常对系统可用性影响较小。PolarDB-X通过多个RDS MySQL承载高并发写,可支撑百亿级数据10万TPS、百万QPS的稳定读写承载。

数据库表拆分后多维度查询诉求是分布式数据库中间件的一个痛点,不按拆分键查询的SQL不能下推导致查询出现全表扫描,PolarDB-X支持全局索引,通过全局索引可以完美解决多维查询的痛点。

2.png

小打卡技术架构图


海量数据存储和扩展能力,保障核心业务稳定性与高性能

小打卡当前圈子打卡日记有10亿以上数据,每年亿级增量,基于PolarDB-X+RDS的分布式数据库解决方案给客户提供了海量数据存储和数据存储扩展能力,解决了客户的10亿级数据在单机数据库的存储瓶颈。

小打卡有几百万活跃用户,业务发展较快,高并发读是小打卡的数据库强需求,在单机RDS的情况下由于单表数据量大,会出现读性能瓶颈导致APP卡顿或者崩溃。基于PolarDB-X+RDS的分布式数据库解决方案在将表拆分成小的物理表后能提供海量数据平稳高并发读能力,保证了客户核心业务的稳定性和高性能。

小打卡的圈子打卡日记通过圈子做拆分,同时用户有看自己圈子日记的诉求,全局索引能力给小打卡客户提供了基于圈子和用户两个维度的高性能查询能力,解决了多维查询的需求。

相关实践学习
跟我学:如何一键安装部署 PolarDB-X
《PolarDB-X 动手实践》系列第一期,体验如何一键安装部署 PolarDB-X。
目录
相关文章
|
2月前
|
存储 关系型数据库 分布式数据库
PolarDB常见问题之PolarDB冷存数据到OSS之后恢复失败如何解决
PolarDB是阿里云推出的下一代关系型数据库,具有高性能、高可用性和弹性伸缩能力,适用于大规模数据处理场景。本汇总囊括了PolarDB使用中用户可能遭遇的一系列常见问题及解答,旨在为数据库管理员和开发者提供全面的问题指导,确保数据库平稳运行和优化使用体验。
|
2月前
|
SQL 关系型数据库 分布式数据库
在PolarDB中,行数评估是通过对表的统计数据、基数估计以及算子代价模型来进行估算的。
【2月更文挑战第14天】在PolarDB中,行数评估是通过对表的统计数据、基数估计以及算子代价模型来进行估算的。
91 1
|
2天前
|
SQL 存储 关系型数据库
性能诊断工具DBdoctor如何快速纳管数据库PolarDB-X
DBdoctor是一款基于eBPF技术的数据库性能诊断工具,已通过阿里云PolarDB分布式版(V2.3)认证。PolarDB-X是阿里云的高性能云原生分布式数据库,采用Shared-nothing和存储计算分离架构,支持高可用、水平扩展和低成本存储。PolarDB-X V2.3.0在读写混合场景下对比开源MySQL有30-40%的性能提升。DBdoctor能按MySQL方式纳管PolarDB-X的DN节点,提供性能洞察和诊断。用户可通过指定步骤安装PolarDB-X和DBdoctor,实现数据库的管理和性能监控。
|
3天前
|
关系型数据库 分布式数据库 数据库
「活动预告」PolarDB走进青岛,邀请您一起畅游琴岛山海春韵,共话数据生态创新
由PolarDB开源社区、海信聚好看、PostgreSQL中文社区共同发起的《开源数据库沙龙》,将于青岛举办。
|
12天前
|
分布式计算 DataWorks 关系型数据库
DataWorks产品使用合集之在使用 DataWorks 数据集成同步 PostgreSQL 数据库中的 Geometry 类型数据如何解决
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
24 0
|
17天前
|
SQL 关系型数据库 API
从API获取数据并将其插入到PostgreSQL数据库:步骤解析
使用Python处理从API获取的数据并插入到PostgreSQL数据库:安装`psycopg2`,建立数据库连接,确保DataFrame与表结构匹配,然后使用`to_sql`方法将数据插入到已存在的表中。注意数据准备、权限设置、性能优化和安全处理。
|
24天前
|
SQL 关系型数据库 MySQL
关系型数据库插入数据的语句
使用SQL的`INSERT INTO`语句向关系型数据库的`students`表插入数据。例如,插入一个`id`为1,`name`为'张三',`age`为20的记录:`INSERT INTO students (id, name, age) VALUES (1, '张三', 20)。如果`id`自增,则可简化为`INSERT INTO students (name, age) VALUES ('张三', 20)`。
26 2
|
24天前
|
SQL 存储 Oracle
关系型数据库查询数据的语句
本文介绍了关系型数据库中的基本SQL查询语句,包括选择所有或特定列、带条件查询、排序、分组、过滤分组、表连接、限制记录数及子查询。SQL还支持窗口函数、存储过程等高级功能,是高效管理数据库的关键。建议深入学习SQL及相应数据库系统文档。
13 2
|
29天前
|
Cloud Native 关系型数据库 分布式数据库
数据之势丨云原生数据库,走向Serverless与AI驱动的一站式数据平台
在大模型席卷之下,历史的齿轮仍在转动,很多人开始思考,大模型能为数据库带来哪些改变。阿里云数据库产品事业部负责人李飞飞表示,数据库和智能化的结合是未来非常重要的发展方向,数据库的使用门槛将大幅降低。
|
1月前
|
人工智能 Cloud Native 算法
数据之势丨AI时代,云原生数据库的最新发展趋势与进展
AI与云数据库的深度结合是数据库发展的必然趋势,基于AI能力的加持,云数据库未来可以实现更快速的查询和决策,帮助企业更好地利用海量数据进行业务创新和决策优化。
数据之势丨AI时代,云原生数据库的最新发展趋势与进展

相关产品

  • 云原生分布式数据库 PolarDB-X
  • 云原生数据库 PolarDB