分布式数据库基本上是一个不限于一个系统的数据库,它分布在不同的站点上,即多台计算机或计算机网络上。分布式数据库系统位于不共享物理组件的多个站点上。当全球不同用户需要访问特定数据库时,可能需要这样做。需要对其进行管理,以便用户将其视为一个数据库。
类型:
1.同构数据库: 在同构数据库中,所有不同的站点都以相同的方式存储数据库。操作系统、数据库管理系统和使用的数据结构在所有站点都是相同的。因此,它们很容易管理。
2.异构数据库: 在异构分布式数据库中,不同的站点可以使用不同的模式和软件,这可能会导致查询处理和事务中出现问题。此外,一个特定的站点可能完全不知道其他站点。不同的计算机可能使用不同的操作系统、不同的数据库应用程序。他们甚至可能对数据库使用不同的数据模型。因此,不同的网站需要翻译才能进行交流。
分布式数据存储: 有两种方法可以将数据存储在不同的站点上。这些是:
1.复制—— 在这种方法中,整个关系被冗余地存储在两个或多个站点上。如果整个数据库在所有站点都可用,则它是一个完全冗余的数据库。因此,在复制中,系统维护数据的副本。
这是有利的,因为它增加了不同站点的数据可用性。此外,现在可以并行处理查询请求。 然而,它也有一些缺点。数据需要不断更新。在一个站点进行的任何更改都需要在存储关系的每个站点进行记录,否则可能会导致不一致。这是很大的开销。此外,并发控制变得更加复杂,因为现在需要在多个站点上检查并发访问。
2.碎片化- 在这种方法中,关系被分割(即,它们被分成更小的部分),每个片段都存储在需要它们的不同位置。必须确保片段可以用于重建原始关系(即,没有任何数据丢失)。 分段是有利的,因为它不会创建数据的副本,一致性不是问题。
关系的分裂可以通过两种方式实现:
- 水平分割–按行分割– 该关系被分割成多个元组,以便每个元组被分配给至少一个片段。
- 垂直分割–按列分割– 关系的模式被划分为更小的模式。每个片段必须包含一个公共候选密钥,以确保无损连接。
在某些情况下,会使用碎片和复制的混合方法。
分布式数据库的应用:
- 它用于企业管理信息系统。
- 它用于多媒体应用。
- 用于军队控制系统、连锁酒店等。
- 它也用于制造控制系统。