日期:2014-05-16 浏览次数:20878 次
这是这门课的第二课,感觉收获还是很多的。那我接下来说一说我在本次可课程中了解到如何分布式数据库吧。
一、基于ORACLE的分布式数据库架构设计
那么作为一个分布式数据库,那么我们要在数据库层面之上架构一个中间,这个中间层包括查询、加载等服务来协调各数据库并满足不同用户的要求
关系型分布式数据库架构的示例:
二、分布式数据库架构的优势:
1、数据的并行计算和访问
2、I/O通道的扩展
3、主机资源的整合
4、灵活的扩展性
例如:容量:当业务的数据接近系统存储的上限值时,可以自由的扩展
性能:当数据处理的速度无法满足业务的需求时,可以添加更多的节点,从而取得更多的资源来提高我们的性能
突发事件:为了防止突发事件的发生,我们在各个节点上都会做一定量的冗余,从而保证了数据库的高可用性
5、对应用的透明
6、数据的冗余
我们可以选择做同城灾备或者异地灾备。而无论是哪一种都需要在数据库层面之上架构一层应用来完成这项任务。
三、影响分布式数据库数量的因素
1、系统容量
2、加载性能
3、查询性能
4、恢复时间
四、分布式数据库的冗余
、
从上面的图片我们得知,我们在分布式数据库中加载数据是使用SQL*Loader而不是使用RMAN。原因是RMAN在加载数据时,数据已经在数据库中,这会占用一定量的存储空间,而且使用RMAN就必须开启归档,而开启归档,我们就需要更多的空间来存储归档信息。而且对于海量数据库来说,产生的归档数量之庞大,会让我们放弃在数据仓库中会放弃开启归档。所以最终我们选择了SQL*Loader的方式来加载数据。
上面说了许多分布式数据库的优势和设计方法,那么作为数据库层面之上的中间件有哪些优势、又该如何去设计呢。
一、分布式系统中间件架构的优势
1、统一对外的API
2、负载均衡
3、高效的查询和加载性能
4、灵活的扩展性
二、分布式系统中间件架构的设计
1、统一API
2、负载均衡
3、数据查询