SQL SERVER并发控制中隔离级别的实现

来源 :世界家苑 | 被引量 : 0次 | 上传用户:LHL1111111111
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘要:为了充分利用系统资源,发挥共享资源的特点,数据库系统允许执行多个并发事务,在任何给定的时刻有可达数百个正在执行的却只部分完成的事务,这是由用户来选择一个可以保证应用程序正确执行并且能够使并发度最大的隔离级别的执行选项。
  关键词:事务;隔离级别;并发执行;并发控制
  数据库系统的最大特点是共享,允许多个用户或多种应用相互覆盖地共享数据集合。在互联网时代,成千上万的不同地点的计算机每秒执行上百的操作,同一时间有多个操作影响同一数据,即存在并发操作,如果不加以控制,可能带来数据不一致问题:更新丢失;不可重复读;读脏数据。为保证并发事务执行时数据的正确性和一致性,对并发事务要进行控制。
  1 事务管理器
  负责事务的正确执行是事务管理器,它接受来自应用的命令,包括BEGIN TRANSACATION、COMMIT、ROLLBACK,而将事务操作传给日志管理器。并发控制管理器对并发执行的事务进行控制,通过加锁和封锁协议保证并发执行的事务保持隔离性。其流程如图1所示。
  2 事务隔离级别
  在实际开发中,直接操作数据库中各种锁的几率相对比较少,更多的是利用数据库提供的四个隔离级别:未提交读、已提交读、可重复读、可序列化,用隔离封装锁。隔离级别从上到下依次增加,级别越低,引起的问题也就比较多,比如脏读、丢失更新等;隔离级别越高,需要管理更多的锁,无法并行处理,性能方面又受损。在实际的系统中只需要根据业务需求选择一种当适合的隔离级别。一种隔离级别,就有一套利用锁的方案,如此设计的目的就是为了平衡性能和功能。
  2.1 读未提交(Read Uncommitted)
  “读未提交”提供了事务之间最小限度的隔离,事务没有获得读锁也可以执行该操作,事务可以读取其它事务已经在其上加过写锁的数据,即允许脏读。其实现的机制通过实验验证,过程如表1所示。
  未提交读不允许更新丢失,如果一个事务已经开始写数据,则另外一个数据则不允许同时进行写操作,该隔离级别可以通过排它锁实现。
  2.2 讀已提交(Read Committed)
  “读已提交”只能读提交的数据,不允许脏读,但允许不可重复读。这可以通过共享锁和排它锁实现。读取数据的事务允许其它事务继续访问该行数据,但是未提交的写事务将会禁止其他事务访问该行。其实现的机制通过实验验证,过程如表2所示。
  2.3 可重复读(Repeatable Read)
  “可重复读”通过共享锁和排它锁实现,读取数据的事务将会禁止写事务(但允许读事务),写事务则禁止任何其它事务,禁止不可重复读和脏读。其实现的机制通过实验验证,过程如表3所示。
  2.4 序列化(Serializable)
  “序列化”提供严格的事务隔离,它要求事务序列化执行,事务只能一个接着一个地执行,但不能并发执行。如果仅仅通过“行级锁”是无法实现事务序列化的,必须通过其他机制保证新插入的数据不会被刚执行查询操作的事务访问到。
  3 结语
  隔离级别越高,越能保证数据的完整性和一致性,但是对并发性能的影响也越大。对于多数应用程序,可以优先考虑把数据库系统的隔离级别设为Read Committed,它能够避免读脏数据,而且具有较好的并发性能。尽管它会导致不可重复读、虚读这些并发问题,在可能出现这类问题的个别场合,可以由应用程序采用悲观锁或乐观锁来控制。
  参考文献:
  [1] 送金玉,陈萍,陈刚.数据库原理与应用(第2版)[M].清华大学出版社,2011(06).
  [2] 尹为民,数据库原理与技术(第2版)[M].科学出版社,2010(01).
  (作者单位:江汉大学数学与计算机科学学院)
其他文献
摘要:我国为了更好地保证教育的效果改善教育质量,现如今提出了立德树人的教学任务来推动学生身心的健康发展。在中职院校当中引进了有效的心理辅导的概念。而班主任有着自身得天独厚的优势,能够更好地在与学生相处的过程当中进行心理健康有效传输,掌握学生自身的心理发展方向,从而可以有针对性的对学生的心理问题进行有效辅导。基于大力提倡心理健康教育的教学环境基础之下,本篇文章通过对中职班主任的工作性质以及自身的角色
期刊
摘 要:目前,构建有效课堂已经成为学科教学的基本追求,而有效教学的前提是要改善学生的学习状态,以学生的自主学习行为来提高课堂教学效率。对此,情境教学法可以提供丰富直观的课堂活动,更便于学生实现自主学习,所以中职语文教师要可以通过情境教学法来提高教学效率,让学生快乐学习。本文将从借助话题讨论创设情境、借助行为表演创设情境、借助多媒体资源创设情境三个角度来分析中职语文教师应该实施情境教学法,积极构建有
期刊
摘要:现在学术界针对雷锋精神的探究有很多,然而有关学习雷锋精神的探究偏少,在这寥寥无几的探究当中,大多数也都是注重理论,并未详细的针对其学习雷锋精神常态化的体制系统,本文旨在推进学雷锋志愿服务制度化常态化,通过从高职院校大学生角度寻找常态化践行雷锋精神的途径,对雷锋精神概念、意义、时代内涵以及对高校的重要性进行深入研究。  关键词:雷锋精神;常态化;高职院校  1 雷锋精神的时代内涵  (1)雷锋
期刊
摘要:大学数学融入思想政治资源,充分发挥课堂教学的主渠道,把知识传授、能力培养、思想引领融入课程的教学全过程,能够达到全面育人的目的,实现思想政治教育目标与学生成长发展需求的一致性。本文阐述了如何在数学课程教学中巧妙融入思想政治理念,以供借鉴。  关键词:思政教育;大学高等数学;教学  1 大学数学课程进行“课程思政”的意义  高等数学主要是面向大学一年级学生开设的一门专业基础课,时间长、影响大、
期刊
摘要:钢琴伴奏从西方钢琴表演艺术中分支而成,是现今艺术体系中不可缺少的一门表演艺术学科,通常被称为钢琴艺术指导。钢琴伴奏和钢琴独奏的演奏技巧基本相似,要求学生具备扎实的视奏、模唱和听音练耳的基本功,熟练掌握钢琴的基本演奏技巧。本文首先简要介绍钢琴伴奏教学,其次以管弦乐钢琴伴奏教学为主,归纳管弦乐钢琴伴奏教学的职能体现和授课方法,最后总结了管弦乐钢琴伴奏教师应当具备的音乐理论素养与教学实践能力。  
期刊
摘要:高职院校的教育目标是为了给我国社会培养出更多高素质的技能型人才。随着我国经济社会的快速发展,国内的茶艺文化专业也逐渐成为了高职院校中的重点教学项目,很多高职院校为了能够培养出高素质的茶艺专业人才还专门开设了茶艺课程。如何在高职院校茶艺教学中提高学生的职业核心能力是目前高职院校茶艺老师需要思考的问题。  关键词:茶艺教学;职业核心能力;重要性;有效对策  随着教育改革的日益深入以及素质教育的大
期刊
摘要:阅读与学习课本内容时的知识含量、平日做题时的审题速度、学习理解能力等有着直接的关系。如果不能达到一定的标准,结果不仅仅是在阅读速度上与别的同学差一截,还将直接影响到知识的掌握效率、做习题的速度与质量、进而直接影响到学习成绩。基于职高语文教学现状,笔者从多个方面提出高效语文阅读课堂的一些思考和建议,与大家共同探讨交流。  关键词:高效课堂;阅读感悟;交流探讨  1 当前职高语文课堂阅读教学中存
期刊
摘要:随着互联网技术的不断发展,“互联网+教育”的模式应运而生,其中微课作为电子技术教学中的新形式,对提升电子技术教学的效率发挥了重要的作用,受到了广大师生的欢迎和喜爱。本文探究了微课的概述,并分析了在电子技术教学中应用微课的相关对策,以便强化电子技术课程的教学效率。  关键词:电子技术;微课;技工院校;概述  技工院校是培养专业性以及职业性人才的基地,在新形势下,社会对人才的要求逐渐提升,因此技
期刊
摘要:美术是一个艺术性质的学科,不光要学好相关的知识,还要注意艺术和审美的提升,学生在创作的过程中应该有自己的思想与态度,要想完成现代化教学的目的,最重要的是培养学生的思维能力。本文主要就针对美术教学中培养和提高学生的审美能力进行了阐述和分析。进行美术教学的过程中,应该注重对学生基本能力的培养,培养学生的创新能力,可通过写生课来锻炼学生,实现美术教学的现代化。  关键词:美术教学;审美能力;创造性
期刊
Abstract:This study aims to compare the influence of two approaches, that is prodcut-based teaching and language-based teaching in teaching EFL literature on the progress of English literature student
期刊