内容提要 |
业务需要,以及解决信息基础设施最后一公里难题
需求和存在的困难
我们的技术突破及解决方案
给数据库用户带来的益处 |
业务需要,以及最后一公里难题 |
数据库保存了随需应变计算的最终结果。
关键业务需要具有高性能,高可用性,高安全性的数据库。
要想对数据库的响应速度和可用性进行扩展,技术上具有极大的困难,而且代价很高。 |
需求和存在的困难 |
必须是一种价格低廉的,离架的(off-the-shelf)的设备。
必须以最小的改动就能升级到未来的新技术。
在部署时,必须是非入侵方式的,以便利用原有的软硬件投资。 |
最薄弱的环节 (最后一公里) |
数据库是所有电子交易处理系统中的最薄弱环节
不断增多的病毒,间谍件和黑客事件,以及快速变化的需求经常导致事务处理的回卷(rollback)
不断增长的有计划的数据库停机。
不断增长的软件复杂度,以及24x7的使用要求
不断增长的意外的数据库停机。
不断增长的数据库访问致使数据库成为整个信息系统性能的瓶颈。 但是不可能通过简单增加服务器并且不降低 可用性这种方法来提升数据库的性能
由于系统伸缩性低而导致成本不断增长。
通信的发展使得人们跨时区的访问成为可能
不断增长的高可用性需求。 |
数据库停机服务的统计 |
|
数据库停机服务的损失 |
对于中等规模的分布式网络来讲, 有计划和意外的数据库停机导致的收入损失一般为$78,000/小时。
典型的金融服务企业每年因为数据库停机而导致的损失为一百万美元($1 Million)。
得克萨斯大学的一项研究表明,遭受过灾难性数据丢失的公司里面有94%的公司无法继续生存: 其中42% 永远不能重新开张,51%在两年内关闭。
1998年4月, 由于内部的软件升级,AT&T 发生6-26 小时的服务中断。结果引发FCC(联邦通讯委员会)的法律诉讼,导致五千万美元的损失。
1998年8月5号, 由于维护系统的原因,AOL(美国在线)停止服务21小时。 结果AOL宣布向消费者提供三百万美元的补偿, 另外还花了八千万美元用于基础设施的建设。
(Source: Strategic Research Group, CA.) |
困难在何处? |
一个简单的问题: 我们究竟能不能同步复制并发的事务处理?
如果答案为?#26159;?那么数据库的可伸缩性和可用性就容易做到,并且成本低廉。
否则,数据库的可伸缩性和可用性就很难提高,并且代价很高。 |
为什么业界?#22823;腕?#35299;决不了呢? |
数据库厂商希望这问题在他们的数据库引擎内部解决 -> 日志复制(log shipping)及其它非同步复制工具。
中间件厂商只在意向客户提供新的功能. 他们并不在意数据库基础设施本身-> 采用两阶段提交(2PC)的同步复制技术。
数据库方面的这个问题,由于摩而定律而暂时缓解了: 每十八个月CPU主频翻一番。现在摩而定律快结束了。2004年10月英特尔取消了主频为4GHz的Prescott微处理器的生产,这标志着摩而定律的正式结束。 |
我们的技术突破 |
开发出一个低额外开销,动态的事务处理同步复制算法(非两阶段提交)(non-2PC),具备ACID特点 (原子性,一致性,孤立性,和可持续性)。
对于失去同步的众多数据库服务器而言,我们开发出一个重新同步的算法,这样一来使得数据库服务的可靠性达到5个9(99.999%)。
美国专利 USPTO #6,421,668。
|
访问控制下的事务处理同步复制 |
|
主要特性 |
非入侵部署: 一对(IP,port)。 应用程序接口不作任何修改。
通过常用的宽带网络, 快速的事务处理同步复制。
几乎不停的服务: 自动的错误恢复, 最长不超过10秒的系统停机重新同步 (和数据集的大小无关)。
零单点错误源,不使用两阶段提交协议(2PC)。
可伸缩的数据库性能(负载均衡+非入侵式的数据库阵列扩展)
灾难预防和恢复的能力。
内置数据库访问防火墙。
内置加密/解密算法,用于公共网络传输。
不停机的数据挖掘能力。 |
非入侵方式部署 
几乎不停的服务
零单点错误源

可伸缩的数据库性能 (1/2)
可伸缩的数据库性能(2/2)

灾难预防与恢复

不停的统计报告/数据挖掘

|
给数据库用户带来的益处
|
使得数据库具有可伸缩性. 需要更多的数据库性能的时候,只要增加数据库服务器就可以了。
真正把意料之内和意料之外的停机时间缩至最短。
具备即时的灾难恢复能力。
由于使用了近乎实时的数据,在不消耗工作数据库性能的前提下,改善了数据挖掘的准确度。
由于内置了防火墙和自动的加解密传输功能,增强了数据的安全性。 |
益处总结
高伸缩性 负载均衡 + 负载分离(数据挖掘)。
高可用性 使数据库服务可用性达到5个9 (99.999% )。
高可靠性 零单点错误源(全冗余配置) : 硬件, 软件, 数据和通信链路。
易部署性 单个入口(IP,port)和出口。
|
|