技术头条 - 一个快速在微博传播文章的方式     搜索本站
您现在的位置首页 --> MySQL --> 数据库使用的规划

数据库使用的规划

浏览:1402次  出处信息

    最近要做2010年的技术规划,对于数据库的整理如下:

数据库

1)   数据库物理的分布和可扩展

目前通过数据库的主/从配置, sharding(分库/分表机制)已经做到slave数据库的分布式应用.对于master库还没有做到可扩展及分布.

2)    数据库延迟问题

根据cap原理,数据只要最终一致即可.数据库延迟需要通过设计去解决.

目前的问题:

a:假如数据库延迟,则读取到的数据为脏数据,而且没有延期更新机制.

b:对于应用来说,无法知道数据库有没有延迟.

3)   数据库的服务对象

a:数据库只做存储用,尽量不涉及业务层的逻辑关系.比如冷热数据的分离属于业务层

b:数据库使用它的关系组织,即未来提供index+content的设计模式.

对于内容来说,可以使用一些非关系型数据库(比如no-sql中的mdb/mongodb)

对于索引:可以通过关系表的建立来解决,也可通过数据库的索引来解决.

4)   数据库的应用设计

a:博客核心数据库的应用设计要可扩展:

不会因为产品需求的变动,导致较大的DDL操作.

不会因为产品需求的变动导致数据库操作关联耦合度较大.

b:博客数据库的抽象和规整

根据博客产品的特点,规整数据库服务体,比如核心库就只有用户库,用户属性库,文章库,评论库.

非核心数据库要应用和运维提供一种统一的服务模式

5)   数据库的指标

a:数据库的容量扩大不是数据库变慢的原因,说明数据库做了不该做的业务

b:假如数据库的查询量上升,而数据库本身没有做到可扩展,那不是设计的问题,需要数据库管理员来解决

6)    数据库本地写/队列复制模式

数据库一般提供关系数据(比如列表和排列)和单内容体数据(无需排序,只要有实体就行)

对于简单的单内容体数据,通过本地临时写(比如cache),队列复制的模式(直接写到master数据库,master主辅同步机制).

对于列表数据,在数据库数据顺序上可能会有问题.

7)   数据库的容灾策略

建议继续学习:

  1. 建立动态规划状态转移方程的练习    (阅读:3194)
QQ技术交流群:445447336,欢迎加入!
扫一扫订阅我的微信号:IT技术博客大学习
© 2009 - 2024 by blogread.cn 微博:@IT技术博客大学习

京ICP备15002552号-1