国内最专业的IT技术学习网

UI设计

当前位置:主页 > UI设计 >

数据库软件架构,到底要设计些什么?

发布时间:2019/08/02标签:   数据    点击量:

原标题:数据库软件架构,到底要设计些什么?
1、基础观点观点一:单库单库观点二:分片分片分片处理“数据量太大”这一成绩,也就是平日说的“程度切分”。一旦引入分片,必将面对“数据路由”的新成绩,数据究竟要拜访哪个库。路由规矩平日有3种方式:(1)范畴:range 长处:简略,轻易扩大。 毛病:各库压力不均(新号段更活泼)。(2)哈希:hash 长处:简略,数据平衡,负载平均。 毛病:迁徙费事(2库扩3库数据要迁徙)。(3)同一路由效劳:router-config-server 长处:机动性强,营业与路由算法解耦。 毛病:每次拜访数据库前多一次查问。大局部互联网公司采纳的计划二:哈希路由。观点三:分组分组处理“可用性,机能晋升”这一成绩,分组平日经过主从复制的方法完成。互联网公司数据库现实软件架构是“既分片,又分组”:数据库软件架构,毕竟计划些甚么呢,最少要斟酌以下四点: 怎样保障数据可用性 怎样进步数据库读机能(大局部利用读多写少,读会先成为瓶颈) 怎样保障分歧性 怎样进步扩大性2、怎样保障数据的可用性?处理可用性成绩的思绪是:冗余。 怎样保障站点的可用性?冗余站点。 怎样保障效劳的可用性?冗余效劳。 怎样保障数据的可用性?冗余数据。数据的冗余,会带来一个副感化:分歧性成绩。1. 怎样保障数据库“读”高可用?冗余读库。2. 冗余读库带来甚么副感化?读写有延时,数据能够纷歧致。上图是许多互联网公司mysql的架构,写依然是单点,不能保障写高可用。3. 怎样保障数据库“写”高可用?冗余写库。采纳双主互备的方法,能够冗余写库。4. 冗余写库带来甚么副感化?双写同步,数据能够抵触(比方“自增id”同步抵触)。怎样处理同步抵触,有两种罕见处理计划: 两个写库应用差别的初始值,雷同的步长来增添id:1写库的id为0,2,4,6...;2写库的id为1,3,5,7…; 不应用数据的id,营业层本人天生独一的id,保障数据不抵触;阿里云的RDS效劳号称写高可用,是怎样完成的呢?他们采纳的就是相似于“双主同步”的方法(不再有从库了)。

版权信息Copyright © IT技术教程 版权所有    ICP备案编号:鲁ICP备09013610号