联邦数据库管理系统问题称为联邦数据库系统(FDBS)的元数据库管理系统(DBMS)将许多独立的数据库系统无缝地转换为单个联邦数据库。组成数据库在地理上分散,并通过计算机网络连接。联邦数据库系统比组合许多不同数据库(通常很困难)的工作更可取,因为组件数据库系统保留了它们的自主性。联邦数据库(也称为虚拟数据库)由组成联邦数据库系统的所有单个数据库组成。由于数据联合,在组件独立的数据库中没有真正的数据集成。每个服务器都是独立的,并使用集中式DBMS与自己的本地用户的系统称为联邦数据库。当存在一个由应用程序共享的数据库联邦的全局视图或模式时,就使用联邦数据库系统(Federated database System,简称FDS)的名称。这些系统结合了分布式和集中式体系结构的元素。 联邦数据库如果联邦数据库由异构数据库组组成,则程序可以更一致地查看数据,而不必跨数据库复制数据或运行多个查询并手动集成结果。如果您的客户正在寻求这种安排,IBM Information Integration可能是一个很好的起点。联邦数据库可以帮助在同构环境(vldb)中分配超大数据库的工作负载。本设计中的每个组件数据库具有相同的结构,但只是记录总数的一部分。尽管组成数据库各不相同,但联邦数据库系统可以通过数据抽象提供统一的用户界面,允许用户和客户机使用单个查询从多个不连续的数据库存储和检索数据。为此,联邦数据库系统必须能够将问题拆分为更小的查询,这些查询可以发送到适当的成员dbms。然后,系统必须将较小的查询结果组合起来。联邦数据库系统可以对子查询应用包装器,将它们转换为适当的查询语言,因为不同的数据库管理系统使用不同的查询语言。 联邦数据库组件在采用负载分配时,将根据主键将行分配给联邦数据库的组件。选择这个键需要技巧,因为它可能是成功和失败设置之间的差异。大多数查询是什么?还是全部?应该最终只访问一个组件数据库。选择这个键需要技巧,因为它可能是成功和失败设置之间的差异。大多数查询是什么?还是全部?应该最终只访问一个组件数据库。 一个例子是使用联邦数据库的银行,其中的事务按年划分。用户通常只查看前一年的事务,并且系统只需要访问一个或两个组件数据库。给定的一组事务将涉及客户ID的随机分布,因此将数据库除以客户ID不太可能有效;因此,查询将被发送到许多,甚至所有的组件数据库。结果,联邦数据库的优势丧失了(几乎搜索每个条目),查询重定向只会使查询的总延迟更糟。 根据SQL Server专家和微软MVP Hilary Cotter的说法,联邦数据库有很多缺点。每个组件数据库都可能是单点故障,任何一台服务器的延迟都会导致整个调用延迟。如果一个或多个组件数据库超时,您的客户将不得不配置联邦数据库或其调用应用程序来处理可能的部分查询结果。此外,他们还必须监控和更新每个组件数据库,这增加了维护费用。 在SQL Server 2005中,表分区通常是比数据库联合更好的选择。表分区通过扫描单个数据库的许多段而不是多个数据库的整体来解决这个问题,这就是分区如何管理基于主键将单个大数据库分割成更小的部分。与向外扩展的联邦数据库不同,这台服务器必须管理整个数据库,因此更新它被称为“向上扩展”。向上扩展通常是比向外扩展更好的策略,但它有其局限性(服务器只能增强这么多),并且可能需要您的客户购买昂贵的高端硬件,而不是现成的服务器。 DBMS的问题
下一个话题
DBMS中的隔离
|