一、主流
1、oracle
ORACLE双机、RAC、Dataguard区别-------博采众长
2、sql server
b、SQL 2005 的故障转移集群
----基于共享的磁盘阵列柜,30s,对应用完全透明
c、sql2008的数据库镜像
------3s,不完全透明
故障转移群集技术几乎是一种非常完美的技术——除了没有数据的副本,
数据库镜像技术也几乎是一种非常完美的技术——如果性能开销不是问题的话。
完整区别:
http://www.51cto.com/art/200710/57888.htm,SQL Server 2005的高可用性
http://www.cnblogs.com/qanholas/archive/2012/02/28/2371376.html,sql server 复制,镜像,日志传输及故障转移集群区别
d、SQL Server 2012 新一代的高可用技术AlwaysOn
自SQL Server2012之后的版本出现的AlwaysOn取数据库镜像和故障转移集群之长。AlwaysOn不再像故障转移集群那样需要共享磁盘,从而主副本和辅助副本可以更容易的部署到不同的地理位置;AlwaysOn还打破了镜像只能1对1的限制,支持最多5个可用性伙伴,使得辅助副本不仅能用于高可用性的目的,还能用于只读访问,甚至可以在辅助副本上进行数据库备份。
AlwaysOn不能实现负载均衡,在特定条件下(需要修改前端应用程序)可以负担只读负载,但负载均衡是无法做到的。
但实际上AlwaysOn是基于镜像,性能不会比镜像高。
http://www.canway.net/Lists/CanwayOriginalArticels/DispForm.aspx?ID=279,SQL 2012 高可用技术增强 ——AlwaysOn 解决方案
http://www.2cto.com/database/201403/289099.html,SQLServerAlwaysOn中的几个误区
二、支持集群的非主流db
1、c-jdbc、sequoia
Sequoia是一个能够为任何数据库提供群集,负载平衡和容错服务的中间件。Sequoia是C-JDBC项目的扩展。
C-JDBC是一个数据库集成方式,包括同步、复制、备份和集群等,Sequoia的出现 也说明了C-JDBC的成熟性,在这里万分感觉INRIA公司,一个法兰西的公司
C-JDBC(Java 数据库连接群集)是一个数据库集成方式,包括同步、复制、备份和集群等。 数据库可以分布在多个节点并可以进行数据复制,C-JDBC能够均衡在这些节点之间的查询负载。 C-JDBC是GNU LGPL许可证下的ObjectWeb项目。
sequoia是c-jdbc项目的延续(改名是由于跟SUN的JDBC有商标上的冲突),该项目发端于INRIA(法国国家计算机和自动化研究院)的sardes项目。 2003年提出了RAIDb的概念,并开发c-jdbc作为软件实现,RAIDb借鉴了RAID的思想,采用灵活的数据库复制技术和集成中间件,以廉价、异构的数据库构建冗余数据库集群,从而提供高可扩展、灵活的高性能集群。
2、淘宝的OceanBase
适用于每天的更新操作占全部数据量较小的 工况
每天定时对整个数据库进行“快照”,作为基线数据库;对基线数据库做的修改保存在 增量数据库内(具体是服务器的内存里)。
读操作需要融合 基线数据库和 增量数据库 的信息,更新操作只对增量数据库;因固态硬盘有“写放大”,故每天定时只一次合并基线数据库和 增量数据库 ;如增量数据库超过内存容量,则保存到ssd或分发到其他 增量数据库。
基线数据库和 增量数据库默认3个热备。
提供了java、c的驱动,兼容mysql协议、故可以使用mysql的管理工具
参考:
知网,“海量结构化数据存储管理系统OceanBase ”
OceanBase架构介绍,http://zzstudy.offcn.com/archives/7502 -------详细
20、其它
云数据库讨论,http://blog.chinaunix.net/uid-354915-id-3932652.html
Tesora已经开源了数据库服务(DBaaS)平台——Tesora Database Virtualization Engine,它主要是用于OpenStack云存储技术。
二、中间件实现集群
1、格瑞趋势 针对sql server的Moebius集群
http://www.grqsh.com/products.htm
大数据时代下的SQL Server第三方负载均衡方案----Moebius测试,http://www.cnblogs.com/gaizai/p/3644510.html