欢迎来到天天文库
浏览记录
ID:46581914
大小:346.55 KB
页数:21页
时间:2019-11-25
《分布式数据库解决方案》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、Amoeba:分布式数据库Proxy解决方案author:陈思儒随着传统的数据库技术日趋成熟、计算机网络技术的飞速发展和应用范围的扩充,数据库应用已经普遍建立于计算机网络之上。这时集中式数据库系统表现出它的不足:集中式处理,势必造成性能瓶颈;应用程序集中在一台计算机上运行,一旦该计算机发生故障,则整个系统受到影响,可靠性不高;集中式处理引起系统的规模和配置都不够灵活,系统的可扩充性差。在这种形势下,集中式数据库将向分布式数据库发展。分布式数据库系统的优点:1、降低费用。分布式数据库在地理上可以式分布的。其系统的结构符合这种分布的要求
2、。允许用户在自己的本地录用、查询、维护等操作,实行局部控制,降低通信代价,避免集中式需要更高要求的硬件设备。而且分布式数据库在单台机器上面数据量较少,其响应速度明显提升。2、提高系统整体可用性。避免了因为单台数据库的故障而造成全部瘫痪的后果。3、易于扩展处理能力和系统规模。分布式数据库系统的结构可以很容易地扩展系统,在分布式数据库中增加一个新的节点,不影响现有系统的正常运行。这种方式比扩大集中式系统要灵活经济。在集中式系统中扩大系统和系统升级,由于有硬件不兼容和软件改变困难等缺点,升级的代价常常是昂贵和不可行的。Amoeba在分布式
3、数据库系统充当什么角色?Amoeba在分布式数据库领域将致力解决数据切分,应付客户端“集中式”处理分布式数据。这儿集中式是一个相对概念,客户端不需要知道某种数据的物理存储地。避免这种逻辑出现在业务端,大大简化了客户端操作分布式数据的复杂程度。CopyRightStructchenAmoebaOverviewAmoeba属于分布式数据库代理开发框架,目前基于amoeba的数据库分布式代理有AmoebaForMysql。以下链接提供了您在开发、使用、安装Amoeba时,可能需要的信息:•Amoeba是什么本节描述了Amoeba是什么的以
4、及它的框架•AmoebaForMysql本节介绍如何快速配置AmoebaForMysql,如何启动AmoebaForMysql,和您必须确保已经具备所有先决条件•Amoeba高级使用本节主要讲述如何利用Amoeba为目标数据库服务器创建负责均衡、数据切分、读写分离以及Amoeba本身性能调优方面•如何在Amoeba上面进行高级开发为其他数据库开发Amoeba新实例、数据库相关的函数开发等。CopyRightStructchenAmoeba是什么Amoeba(变形虫)项目,专注分布式数据库proxy开发。座落与Client、DBSer
5、ver(s)之间。对客户端透明。具有负载均衡、高可用性、sql过滤、读写分离、可路由相关的query到目标数据库、可并发请求多台数据库合并结果。主要解决:•降低数据切分带来的复杂多数据库结构•提供切分规则并降低数据切分规则给应用带来的影响•降低db与客户端的连接数•读写分离CopyRightStructchenAmoebaArchitectureAmoeba作为DataBaseProxy的开发框架。致力于解决数据切分、读写分离。以下将为您介绍Amoeba框架•BuiltonJavaNIO1.采用javaNIO框架无阻塞模式,不像传统
6、的Socket编程在大量并发的情况非常浪费系统资源、而且可扩展性也较差•ReusableServerConnectionAmoeba提供与数据库连接的可重用度非常高,在Amoeba系统内所DatabaseConnection同时共享给所有连接到Amoeba的客户端•提供读写分离、数据切分1.传统的读写分离技术需要通过客户端或者相关的DatabaseDriver技术才能解决,而且客户端的配置也比较复杂2.单台Database性能总是有限制的,基于Amoeba上面可以寻找一种可线性扩展的多数据库支持。Amoeba为DBA提供一种非常友好
7、的类似SQL语法的数据切分规则同时客户端不用担心过多的DataBaseServer会给应用带来更多的配置。•支持高可用性、负责均衡1.Amoeba提供Database连接的异常检测与连接恢复功能。2.用户可节省使用其他昂贵的负载均衡的硬件设备,Amoeba提供多台DatabaseServer负载均衡策略(轮询、当前活动连接数量)CopyRightStructchenAmoebaSequenceCopyRightStructchenAmoebaForMysqlAmoebaForMysql是Amoeba项目的子项目。要使用AmoebaF
8、orMysql您必须确保您已符合所有先决条件:先决条件:1.JavaSE1.5或以上Amoeba框架是基于JDK1.5开发的,采用了JDK1.5的特性。2.支持Mysql协议版本10(mysql4.1以后的版本)。3.您的网络环境至少
此文档下载收益归作者所有