惊了,数据库原来还可以这样实现秒级扩容?

架构师之路

共 1778字,需浏览 4分钟

 ·

2021-02-13 21:06

《大专栏》的另一个重点,第五阶“数据库架构”已经放出。


工程上,数据库要设计一些什么?
(1)根据“业务模式”设计表结构
(2)根据“访问模式”设计索引结构

架构上,数据库还必须考虑什么?
(1)读性能提升;
(2)高可用;
(3)一致性保障;
(4)扩展性;
(5)垂直拆分;
画外音:我C,我居然从来没考虑过这些问题。

提升系统读取速度,有哪几种常见方法?
(1)建立索引;
(2)增加从库;
(3)增加缓存;

一个数据库分组集群,主从同步,读写分离,能不能在主库和从库建立不同的索引?
可以,例如:
(1)主库只响应写请求,不建立索引;
(2)线上从库,建立线上访问索引;
(3)后台从库,建立后台访问索引;

如何保证数据库的高可用?
核心思想是:冗余+故障自动转移
(1)写库高可用,冗余写库;
(2)读库高可用,冗余读库;

数据冗余会带来什么副作用?
会引发一致性问题:
(1)两个写库数据可能不一致;
(2)主库和从库数据可能不一致;

写库高可用,两个写库相互同步数据,自增ID可能冲突导致数据不一致,有什么优化方案?
(1)为每个写库指定不同的初始值,相同的增长步长;
(2)生成不同的ID;
(3)一个写库提供服务,一个写库作为高可用影子主;

主从延时,有什么优化方案?
(1)业务容忍;
(2)强制读主;
(3)在从库有可能读到旧数据时,选择性读主(非常帅气的方案);

底层表结构变更,水平扩展分库个数发生变化,底层存储引擎升级,数据库如何平滑过度?
如果业务能够接受,可以停服扩展。

否则,可以使用以下三种方法:
(1)追日志平滑,平滑过度;
(2)双写平滑,平滑过度;
(3)秒级平滑扩容法(非常帅气的方案);
画外音:如何在秒级,实现读写实例加倍?容量加倍?

数据库垂直拆分的最佳实践是什么?
数据库垂直拆分,尽量把:
(1)长度短;
(2)访问频率高;
(3)经常一起访问;
的数据放在主表里。

如《17次直播回看,50节架构师训练营干货重放》中所述,17次直播回看,以及《架构师第五阶:数据库架构》的6节也已经放出,系统性的详聊了上面这些问题。

17次直播精华回看,有哪些内容?

(1)每秒100w请求,秒杀架构
(2)千万粉丝,feed架构
(3)千万同时在线,IM架构
(4)每秒100w检索,搜索引擎内核架构
(5)MQ内核细节
(6)RPC内核细节
(7)数据库架构
(8)多机房多活架构与细节
(9)分布式调用链追踪架构与细节
(10)3周自研自动化上线平台
(11)区块链中的架构理念
(12)数据库性能瓶颈定位
(13)反范式数据库设计
(14)微服务抽离与解耦
(15)经典架构10问
(16)微服务与数据库架构10问
(17)技术人职业发展规划

每次1-2小时不等,全部已放出。


50节架构师训练营干货重放,有哪些内容?

第一阶:技术选型(5节,已放出)

第二阶:接入层架构(5节,已放出)

第三阶:极速性能优化(3节,已放出)

第四阶:微服务架构(7节,已放出)

第五阶:数据库架构(6节,已放出)

第六阶:缓存架构

第七阶:架构解耦

第八阶:架构分层

第九阶:架构进阶

把控住这些,应该能成为一名P8的架构师吧?


其他“阶”内容何时放出?
2.21之前全部放出

《大专栏》,有没有折扣?
(1)巨折899(原价1699);
(2)参加过二期训练营的小伙伴免费
(3)邀请朋友一起学,返现20%;

今天大年初一,有进一步福利么?
大年初一可领200优惠券(699)。
画外音:仅限大年初一,抓紧时间。

如何领优惠券?

扫码领券,直减200,仅限大年初一


如何邀请小伙伴参加?
详情页右上角分享,不买专栏也能邀返20%

如何入手《大专栏》?
扫码,入手架构师之路《大专栏

白嫖了这么多年,欢迎为情怀补票,希望大家有收获,早日成为P8P9架构师

画外音:建议平均每天花2小时,倍速看1-2集直播,5节训练营,春节20天假期搞定。


相关文章
17次直播回看,50节架构师训练营干货重放

作业题
为了保证数据库主从一致性,在从库有可能读到旧数据时,如何选择性读主

阅读原文,订阅《大专栏》。
画外音:优惠最后一天,200直减仅限大年初一。
浏览 44
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报