热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

DDBMS中的透明度有哪几种类型

DDBMS中的透明度有哪几种类型
透明度是分布式数据库系统(DDBMS)的优势之一,那么DDBMS中的透明度什么?本篇文章就来带大家认识一下DDBMS中的透明度,介绍透明度的类型,希望对大家有所帮助。

DDBMS中透明度是什么?

透明度是分布式数据库的一个属性,用于对用户隐藏DDBMS分发的内部细节,不允许用户查看分发的内部详细信息。

透明度很重要的原因是可用性。我们系统的透明度越高,用户的认知负担就越小。换句话说:透明度简化了系统的API。

例如:DDBMS设计者可以选择对表进行分段,复制片段并将它们存储在不同的站点。但是,由于用户不了解这些细节,他们发现分布式数据库易于使用,就像任何集中式数据库一样。

DDBMS中透明度的类型

DDBMS可以提供各种级别的透明度,主要分为四种主要的透明度类型:

● 分发透明度

● 交易透明度

● 性能透明度;

● DBMS透明度。

下面就来介绍一下:

分发透明度

分发透明度允许用户将数据库视为单个逻辑实体。如果添加BMS显示分布透明度,则用户不需要·知道数据是细节(碎片透明度)或数据项的位置(本地透明度)。

分发透明度还可以分为以下几个级别:

1、破碎透明度:

碎片化是分布透明度的最高级别。如果DDBMS提供了碎片透明性,则用户不需要知道数据是碎片化的,因此,数据库访问基于全局模式。

用户可以以不分段的方式访问任何表。表格被分段的信息以及多个站点上的片段的位置对用户是隐藏的。

SQL视图具有类似的方式,其中用户不知道用户查看表的视图而不是原始表的事实。

2、位置透明度:

位置是分布透明度的中间水平。通过位置透明性,用户可以查询表的任何表或片段,就像它们本地存储在用户的站点中一样,但不必知道数据的位置。

其表或其片段存储在分布式数据库系统中的远程站点的事实应该完全无视最终用户。远程站点的地址和访问机制完全隐藏。

为了结合位置透明性,DDBMS应该能够访问更新和准确的数据字典和DDBMS目录,其中包含数据位置的详细信息。

3、复制透明度:

通过复制透明性向用户隐藏数据库的复制。用户可以以原始表格的方式访问任何表格。

当用户更新数据时,它会更新并反映在多个站点的所有表中。这对用户是隐藏的,这称为并发透明性。复制副本便于用户在网站发生故障的情况下继续查询,而不知道故障,这被称为故障透明度。

4、本地映射透明度:

它是分发透明度的最低级别。使用本地映射透明性,用户需要指定片段名称和数据项的位置,同时考虑可能存在的任何复制。

显然,对于用户来说,这是一个比第一个更复杂和耗时的查询。提供这种级别的tr_ sparency的系统不太可能被最终用户接受。

交易透明度

DDBMS环境中的事务透明性确保所有分布式事务都保持分布式数据库的完整性和一致性。分布式事务访问存储在远离一个位置的数据。每个事务被分成若干个子事务,每个事务对应一个必须访问的站点; 子事务由代理表示。

DDBMS还必须确保每个子事务的原子性。碎片化,分配和复制schenlas使分布式DBMS中的事务透明性变得复杂。

性能透明度

性能透明性要求DDBMS像集中式DBMS一样执行。在分布式环境中,由于分布式体系结构,系统应该遭受任何性能下降,例如网络的存在性能透明性还要求DDBMS确定执行请求的最具成本效益的策略。

在集中式DBMS中,查询处理器(QP)必须评估每个数据请求并找到最佳执行策略,该策略由数据库上的有序操作序列组成。在分布式环境中,分布式查询处理器(DQP)将数据请求映射到本地数据库上的有序操作序列。考虑到碎片,复制和分配模式,增加了复杂性。DQP必须决定:

● 要访问哪个片段?

● 如果片段被复制,要使用哪个片段副本?

● 使用的位置。

DQP产生一个针对某些成本函数进行优化的执行策略。通常,与分布式请求相关的成本包括:

● 访问磁盘上的物理数据所涉及的访问时间(I / O)成本;

● 对主存储器中的数据执行操作时产生的CPU时间成本;

● 与通过网络传输数据相关的通信成本。

前两个因素是集中式系统中唯一考虑的因素。在分发环境中,DDBMS必须考虑通信成本,这可能是带宽为几千字节/秒的WAN中最主要的因素。在这种情况下,优化可能会忽略I / O和CPU成本。但是,LAN的带宽与磁盘的带宽相当,因此在这种情况下,优化不应完全忽略I / O和CPU成本。

DBMS透明度。

DBMS透明度隐藏了本地DBMS可能不同的知识,因此仅适用于异构DDBMS。它是最难以提供的透明度之一。

以上就是本篇文章的全部内容,希望能对大家的学习有所帮助。更多精彩内容大家可以关注 第一PHP社区 相关教程栏目!!!

以上就是DDBMS中的透明度有哪几种类型的详细内容,更多请关注 第一PHP社区 其它相关文章!


推荐阅读
  • 一、Hadoop来历Hadoop的思想来源于Google在做搜索引擎的时候出现一个很大的问题就是这么多网页我如何才能以最快的速度来搜索到,由于这个问题Google发明 ... [详细]
  • 本文介绍了在开发Android新闻App时,搭建本地服务器的步骤。通过使用XAMPP软件,可以一键式搭建起开发环境,包括Apache、MySQL、PHP、PERL。在本地服务器上新建数据库和表,并设置相应的属性。最后,给出了创建new表的SQL语句。这个教程适合初学者参考。 ... [详细]
  • 本文介绍了如何使用php限制数据库插入的条数并显示每次插入数据库之间的数据数目,以及避免重复提交的方法。同时还介绍了如何限制某一个数据库用户的并发连接数,以及设置数据库的连接数和连接超时时间的方法。最后提供了一些关于浏览器在线用户数和数据库连接数量比例的参考值。 ... [详细]
  • 本文介绍了Redis的基础数据结构string的应用场景,并以面试的形式进行问答讲解,帮助读者更好地理解和应用Redis。同时,描述了一位面试者的心理状态和面试官的行为。 ... [详细]
  • 在说Hibernate映射前,我们先来了解下对象关系映射ORM。ORM的实现思想就是将关系数据库中表的数据映射成对象,以对象的形式展现。这样开发人员就可以把对数据库的操作转化为对 ... [详细]
  • 本文由编程笔记小编整理,介绍了PHP中的MySQL函数库及其常用函数,包括mysql_connect、mysql_error、mysql_select_db、mysql_query、mysql_affected_row、mysql_close等。希望对读者有一定的参考价值。 ... [详细]
  • 本文介绍了Oracle数据库中tnsnames.ora文件的作用和配置方法。tnsnames.ora文件在数据库启动过程中会被读取,用于解析LOCAL_LISTENER,并且与侦听无关。文章还提供了配置LOCAL_LISTENER和1522端口的示例,并展示了listener.ora文件的内容。 ... [详细]
  • Oracle分析函数first_value()和last_value()的用法及原理
    本文介绍了Oracle分析函数first_value()和last_value()的用法和原理,以及在查询销售记录日期和部门中的应用。通过示例和解释,详细说明了first_value()和last_value()的功能和不同之处。同时,对于last_value()的结果出现不一样的情况进行了解释,并提供了理解last_value()默认统计范围的方法。该文对于使用Oracle分析函数的开发人员和数据库管理员具有参考价值。 ... [详细]
  • 高质量SQL书写的30条建议
    本文提供了30条关于优化SQL的建议,包括避免使用select *,使用具体字段,以及使用limit 1等。这些建议是基于实际开发经验总结出来的,旨在帮助读者优化SQL查询。 ... [详细]
  • 如何在php中将mysql查询结果赋值给变量
    本文介绍了在php中将mysql查询结果赋值给变量的方法,包括从mysql表中查询count(学号)并赋值给一个变量,以及如何将sql中查询单条结果赋值给php页面的一个变量。同时还讨论了php调用mysql查询结果到变量的方法,并提供了示例代码。 ... [详细]
  • 本文介绍了lua语言中闭包的特性及其在模式匹配、日期处理、编译和模块化等方面的应用。lua中的闭包是严格遵循词法定界的第一类值,函数可以作为变量自由传递,也可以作为参数传递给其他函数。这些特性使得lua语言具有极大的灵活性,为程序开发带来了便利。 ... [详细]
  • 本文介绍了Python高级网络编程及TCP/IP协议簇的OSI七层模型。首先简单介绍了七层模型的各层及其封装解封装过程。然后讨论了程序开发中涉及到的网络通信内容,主要包括TCP协议、UDP协议和IPV4协议。最后还介绍了socket编程、聊天socket实现、远程执行命令、上传文件、socketserver及其源码分析等相关内容。 ... [详细]
  • ubuntu用sqoop将数据从hive导入mysql时,命令: ... [详细]
  • 本文介绍了iOS数据库Sqlite的SQL语句分类和常见约束关键字。SQL语句分为DDL、DML和DQL三种类型,其中DDL语句用于定义、删除和修改数据表,关键字包括create、drop和alter。常见约束关键字包括if not exists、if exists、primary key、autoincrement、not null和default。此外,还介绍了常见的数据库数据类型,包括integer、text和real。 ... [详细]
  • Oracle seg,V$TEMPSEG_USAGE与Oracle排序的关系及使用方法
    本文介绍了Oracle seg,V$TEMPSEG_USAGE与Oracle排序之间的关系,V$TEMPSEG_USAGE是V_$SORT_USAGE的同义词,通过查询dba_objects和dba_synonyms视图可以了解到它们的详细信息。同时,还探讨了V$TEMPSEG_USAGE的使用方法。 ... [详细]
author-avatar
繁華落盡灬熙
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有