浏览 4826 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2008-06-26
随着传统的数据库技术日趋成熟、计算机网络技术的飞速发展和应用范围的扩充,数据库应用 已经普遍建立于计算机网络之上。这时集中式数据库系统表现出它的不足:集中式处理,势必造成性 能瓶颈;应用程序集中在一台计算机上运行,一旦该计算机发生故障,则整个系统受到影响,可靠性 不高;集中式处理引起系统的规模和配置都不够灵活,系统的可扩充性差。在这种形势下,集中式数 据库将向分布式数据库发展。 分布式数据库系统的优点: 1、降低费用。分布式数据库在地理上可以式分布的。其系统的结构符合这种分布的要求。允许用 户在自己的本地录用、查询、维护等操作,实行局部控制,降低通信代价,避免集中式需要更高要求 的硬件设备。而且分布式数据库在单台机器上面数据量较少,其响应速度明显提升。 2、提高系统整体可用性。避免了因为单台数据库的故障而造成全部瘫痪的后果。 3、易于扩展处理能力和系统规模。分布式数据库系统的结构可以很容易地扩展系统,在分布式数 据库中增加一个新的节点,不影响现有系统的正常运行。这种方式比扩大集中式系统要灵活经济。在 集中式系统中扩大系统和系统升级,由于有硬件不兼容和软件改变困难等缺点,升级的代价常常是昂 贵和不可行的。 Amoeba在分布式数据库系统充当什么角色? Amoeba在分布式数据库领域将致力解决数据切分,应付客户端“集中式”处理分布式数据。这 儿集中式是一个相对概念,客户端不需要知道某种数据的物理存储地。避免这种逻辑出现在业务端, 大大简化了客户端操作分布式数据的复杂程度。 更详细的内容请下载 http://amoeba.sourceforge.net/amoeba.pdf 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2008-09-04
对数据库的水平切分,是不是只适用于没有外键连接的表?如果有外键,就必须放在同一数据库里?(我觉得这两个问题也是多余的。有外键的话,肯定只能放在一个数据库里)
如果一个数据库,所有表都有连接,那就不能用水平切分,只能作垂直切分了。 |
|
返回顶楼 | |
发表时间:2008-10-20
bottom 写道 对数据库的水平切分,是不是只适用于没有外键连接的表?如果有外键,就必须放在同一数据库里?(我觉得这两个问题也是多余的。有外键的话,肯定只能放在一个数据库里)
如果一个数据库,所有表都有连接,那就不能用水平切分,只能作垂直切分了。 这个需要看DBA以及架构部门来规划你们的数据库了. |
|
返回顶楼 | |
发表时间:2008-11-02
这个项目适合的场景是大规模的用户特定数据。 因此, 所有的join是没有意义的。
当初, 我们讨论这个东西的时候, 就是大规模的并发下, 数据是绝对不允许做任何形式的join的。 如果大家想象, 一个表有上10亿条数据的WEB应用表, 并且有上5000W以上的访问, 那么这个项目的意义就非同寻常了。 每个设计都有他的特定使用范围, 讨论过多的应用没有实际意义, 不然这个世界早就充满各种设计了, ORALCE也早就搞出大规模可分布式的数据库了。 |
|
返回顶楼 | |
发表时间:2009-04-24
看过amoeba的文档之后,有几个问题请教一下:
1.假如我要用到线上环境,那么做水平拆分,应该要求现在的应用就要不能用 join 那些要进行水平拆分的表。 2.如果水平拆分后,数据在写入的时候,是如何进行处理的?主要是insert的时候,是由那块决定写入那张表中? 希望能够得到答复,谢谢。 |
|
返回顶楼 | |