数据库中间件理论

1. 为什么需要数据库中间件?

答:单台服务器的性能不能支持大型应用。可以增加缓存,用空间换时间。还有增加读写分离,增加多个从服务器。也可以增加数据库服务器。数据库存储的时候需要分库存储,因为业务太多了,按照分库存储,即垂直拆分。即使是单个业务,可能也需要多个服务器,就需要分表,即水平拆分。需要DAO层(Data Access Object)代码进行支持。
总结起来:缓存+分库分表+读写分离。数据库中间件就是为了解决存储和访问压力的。


单台性能

读写分离
2. 数据库中间件设计要点有哪些?
  • 要能解析sql
  • 能支持读写分离
  • 能支持从库读的负载均衡
  • 支持分库操作
  • 支持分表操作
  • 支持跨库关联查询
  • 对事务的支持处理
  • 主键ID的生成
  • 数据源管理
3. 数据的拆分方式有什么?
垂直拆分

水平拆分

分片规则

难点
4. 数据库中间件的实现模式有什么?
  • 客户端模式


    客户端模式
  • 服务端(代理)模式


    服务端模式
5. 社区数据库中间件有哪些?

答:mycat的前身叫做cobar。


数据库中间件列表
数据库中间件区别

你可能感兴趣的:(数据库中间件理论)