本文,将介绍数据库架构设计中的一些基本概念,常见问题以及对应解决方案,为了便于读者理解,将以“用户中心”数据库为例,讲解数据库架构设计的常见玩法。
一、用户中心
用户中心是一个常见业务,主要提供用户注册、登录、信息查询与修改的服务,其核心元数据为:
User(uid, uname, passwd, sex, age,nickname, …)
其中:
uid为用户ID,主键
uname, passwd, sex, age, nickname, …等为用户的属性
数据库设计上,一般来说在业务初期,单库单表就能够搞定这个需求。
二、图示说明
为了方便大家理解,后文图片说明较多,其中:
“灰色”方框,表示service,服务
“紫色”圆框,标识master,主库
“粉色”圆框,表示slave,从库
三、单库架构
最常见的架构设计如上:
user-service:用户中心服务,对调用者提供友好的RPC接口
user-db:一个库进行数据存储
四、分组架构
什么是分组?
答:分组架构是最常见的一主多从,主从同步,读写分离数据库架构:
user-service:依旧是用户中心服务
user-db-M(master):主库,提供数据库写服务
user-db-S(slave):从库,提供数据库读服务
主和从构成的数据库集群称为“组”。
</