大规模数据库架构与技术
2013-08-01 17:35
253 查看
需要解决的几个问题
一、高性能问题
二、高可用问题
三、隔离问题
1. 数据隔离
分库(数据库连接池能否支持多个库,如果支持,恐怕不同数据库之间也不能复用连接,毕竟是到不同数据库的连接是不同的,难以复用)
分schema
每个Schema都有不同的用户名和密码,可以实现彼此隔离,以及数据的相互访问(需要权限),同时可以利用到数据库连接池,复用链接,为众多Schema服务。
2.资源隔离
目的:同一台物理服务器上有多个数据库,不能因为个别或部分数据库对资源(CPU、Mem、NetTraffic)消耗太大,影响其他数据库。
目的:同一台物理服务器上有一个数据库,不能因为个别或部分Schema对资源(CPU、Mem、NetTraffic)消耗太大,影响其他Schema。
1)基于数据库实例的限制
如果每个数据库启动一个SQL实例,那么可以通过对SQL进程的控制,轻松实现资源配额限制。问题是,如果数据库量(单台机器上万个DB)很多,将会有大量的数据库实例存在,性能开销是否Hold住,需要测试。
2)基于用户名的限制
系统可以为不同的DB创建不同的用户名,可以利用CGroup对用户的资源配额的限制,实现对数据库使用配额的限制。缺点是:系统要求所有DB的用户不能重名。
一、高性能问题
二、高可用问题
三、隔离问题
1. 数据隔离
分库(数据库连接池能否支持多个库,如果支持,恐怕不同数据库之间也不能复用连接,毕竟是到不同数据库的连接是不同的,难以复用)
分schema
每个Schema都有不同的用户名和密码,可以实现彼此隔离,以及数据的相互访问(需要权限),同时可以利用到数据库连接池,复用链接,为众多Schema服务。
2.资源隔离
目的:同一台物理服务器上有多个数据库,不能因为个别或部分数据库对资源(CPU、Mem、NetTraffic)消耗太大,影响其他数据库。
目的:同一台物理服务器上有一个数据库,不能因为个别或部分Schema对资源(CPU、Mem、NetTraffic)消耗太大,影响其他Schema。
1)基于数据库实例的限制
如果每个数据库启动一个SQL实例,那么可以通过对SQL进程的控制,轻松实现资源配额限制。问题是,如果数据库量(单台机器上万个DB)很多,将会有大量的数据库实例存在,性能开销是否Hold住,需要测试。
2)基于用户名的限制
系统可以为不同的DB创建不同的用户名,可以利用CGroup对用户的资源配额的限制,实现对数据库使用配额的限制。缺点是:系统要求所有DB的用户不能重名。
相关文章推荐
- 上周技术关注:Technorati的后台数据库架构
- 互联网数据库“跨库分页”架构技术实践
- 大规模网站架构技术原理透析(1)
- 大家提提意见 2个小领导、4个开发人员、3种数据库、2种开发技术、3种技术架构、3个开发思想为3个项目服务
- 2010年大规模技术架构的思路
- .NET, C++, Flash, Java,系统架构,技术顾问---大规模招聘开始。
- 大家提提意见 2个小领导、4个开发人员、3种数据库、2种开发技术、3种技术架构、3个开发思想为3个项目服务
- 2017双11技术揭秘—阿里巴巴数据库技术架构演进
- DDD:DDD+CQRS架构中的数据库访问技术
- 大规模网站架构技术原理透析
- 【PDF下载】金融技术峰会之云数据库OceanBase架构
- 双11超级工程—阿里巴巴数据库技术架构演进
- 一起谈.NET技术,实战ASP.NET大规模网站架构:Web加速器
- 大规模网站系统架构技术原理解析
- 2018数据架构选型必读:9月数据库产品技术解析 - Newsletter
- 大规模网站架构技术原理透析
- 2017双11技术揭秘—阿里巴巴数据库技术架构演进
- 大规模网站架构技术原理透析
- 大家提提意见 2个小领导、4个开发人员、3种数据库、2种开发技术、3种技术架构、3个开发思想为3个项目服务
- Teradata 数据库技术概略之一 —— Teradata数据库的架构组成