DB2 9 根柢(730 考试)认证指南,第 6 部分: 数据并发性(6)

2024-01-10 05:40

本文主要是介绍DB2 9 根柢(730 考试)认证指南,第 6 部分: 数据并发性(6),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

developerWorks








结束语

本教程旨在介绍数据分歧性的不雅念,以及 DB2 9 在单用户和多用户状况下用来维护数据库分歧性的各种机制。假如用户忘掉了举办统统需求的变动,大年夜约假如在用户举办变动的进程中系统崩溃了,又大年夜约数据库应用步伐由于某种启事过早地中缀了,数据库都会变得不平等。当几个用户同时访谒分歧数据库时,也或许发作不平等的状况。比如,一个用户或许在得外地更新统统表之前读取另一个用户的变动,并凭据所读取的不是终极的数据值举办了一些不适合的应用或举办了错误的变动。为了灌注数据不平等(尤其是在多用户状况中),DB2 9 的垦荒人员将下列数据分歧性支撑机制兼并到其方案中:

  • 工作
  • 隔离级别


工作(也称为任务单位)是一种将一个或多个 SQL 应用组织成一个单位的可规复序列,素日位于应用步伐进程中。工作的启动和中缀界说了数据库分歧性点;要么将工作中实验的统统 SQL 应用的结果都应用于数据库(提交),要么完全取消并丢弃已实验的统统 SQL 应用的结果(回滚)。在这两种状况下,数据库都保证在每个工作竣事后处于分歧的形状。

维护数据库分歧性和数据无缺性,同时又容许多个应用步伐同时访谒分歧数据,这种特性称为并发性。在 DB2 中,并发性是经由应用隔离级别完成的。可以应用四种差另外隔离级别:

  • 可反复的读
  • 读动摇性
  • 游标动摇性
  • 未提交的读


可反复的读隔离级别可以灌注统统征象,但是会大年夜大年夜低沉并发性的程度(可以同时访谒分歧资源的工作数量)。未提交的读隔离级别提供了最大年夜的并发性,但是脏读、不行反复的读和幻像都或许泛起。

除了隔离级别,DB2 经由对锁的应用在多用户状况下提供并发性。锁是一种用来将数据资源与单个工作讨论相干起来的机制,其用处是控制其他工作在资源与拥有锁的工作相讨论相干的状况下怎样与资源举办交互。可以应用几种不同类型的锁:

  • 意向无(IN)
  • 意向共享(IS)
  • 下一键共享(NS)
  • 共享(S)
  • 意向互斥(IX)
  • 带意向互斥的共享(SIX)
  • 更新(U)
  • 下一键弱互斥(NW)
  • 互斥(X)
  • 弱互斥(W)
  • 超等互斥(Z)


为了维护数据无缺性,DB2 数据库打点步伐隐式地获取锁,获取的统统锁都在 DB2 数据库打点步伐的控制之下。锁可以摆设在表空间、表和行上。

为了举办优化以获取最大年夜的并发性,行级锁素日比表级锁更好,由于它们所限定访谒的资源要小得多。但是,由于所获取的每个锁都需求必然命量的存储空间和处理责罚时间来举办打点,所以单个表级锁需求的开支比几个单独的行级锁低。




版权声明: 原创作品,容许转载,转载时请务必以超链接体例标明文章 原始情由 、作者信息和本声明。否则将清查法令责任。

转载于:https://www.cnblogs.com/zgqjymx/archive/2011/03/07/1972941.html

这篇关于DB2 9 根柢(730 考试)认证指南,第 6 部分: 数据并发性(6)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/589728

相关文章

SpringBoot实现RSA+AES自动接口解密的实战指南

《SpringBoot实现RSA+AES自动接口解密的实战指南》在当今数据泄露频发的网络环境中,接口安全已成为开发者不可忽视的核心议题,RSA+AES混合加密方案因其安全性高、性能优越而被广泛采用,本... 目录一、项目依赖与环境准备1.1 Maven依赖配置1.2 密钥生成与配置二、加密工具类实现2.1

Oracle迁移PostgreSQL隐式类型转换配置指南

《Oracle迁移PostgreSQL隐式类型转换配置指南》Oracle迁移PostgreSQL时因类型差异易引发错误,需通过显式/隐式类型转换、转换关系管理及冲突处理解决,并配合验证测试确保数据一致... 目录一、问题背景二、解决方案1. 显式类型转换2. 隐式转换配置三、维护操作1. 转换关系管理2.

Nginx进行平滑升级的实战指南(不中断服务版本更新)

《Nginx进行平滑升级的实战指南(不中断服务版本更新)》Nginx的平滑升级(也称为热升级)是一种在不停止服务的情况下更新Nginx版本或添加模块的方法,这种升级方式确保了服务的高可用性,避免了因升... 目录一.下载并编译新版Nginx1.下载解压2.编译二.替换可执行文件,并平滑升级1.替换可执行文件

Python调用LibreOffice处理自动化文档的完整指南

《Python调用LibreOffice处理自动化文档的完整指南》在数字化转型的浪潮中,文档处理自动化已成为提升效率的关键,LibreOffice作为开源办公软件的佼佼者,其命令行功能结合Python... 目录引言一、环境搭建:三步构建自动化基石1. 安装LibreOffice与python2. 验证安装

使用Python开发一个Ditto剪贴板数据导出工具

《使用Python开发一个Ditto剪贴板数据导出工具》在日常工作中,我们经常需要处理大量的剪贴板数据,下面将介绍如何使用Python的wxPython库开发一个图形化工具,实现从Ditto数据库中读... 目录前言运行结果项目需求分析技术选型核心功能实现1. Ditto数据库结构分析2. 数据库自动定位3

pandas数据的合并concat()和merge()方式

《pandas数据的合并concat()和merge()方式》Pandas中concat沿轴合并数据框(行或列),merge基于键连接(内/外/左/右),concat用于纵向或横向拼接,merge用于... 目录concat() 轴向连接合并(1) join='outer',axis=0(2)join='o

批量导入txt数据到的redis过程

《批量导入txt数据到的redis过程》用户通过将Redis命令逐行写入txt文件,利用管道模式运行客户端,成功执行批量删除以Product*匹配的Key操作,提高了数据清理效率... 目录批量导入txt数据到Redisjs把redis命令按一条 一行写到txt中管道命令运行redis客户端成功了批量删除k

破茧 JDBC:MyBatis 在 Spring Boot 中的轻量实践指南

《破茧JDBC:MyBatis在SpringBoot中的轻量实践指南》MyBatis是持久层框架,简化JDBC开发,通过接口+XML/注解实现数据访问,动态代理生成实现类,支持增删改查及参数... 目录一、什么是 MyBATis二、 MyBatis 入门2.1、创建项目2.2、配置数据库连接字符串2.3、入

SpringBoot多环境配置数据读取方式

《SpringBoot多环境配置数据读取方式》SpringBoot通过环境隔离机制,支持properties/yaml/yml多格式配置,结合@Value、Environment和@Configura... 目录一、多环境配置的核心思路二、3种配置文件格式详解2.1 properties格式(传统格式)1.

Apache Ignite 与 Spring Boot 集成详细指南

《ApacheIgnite与SpringBoot集成详细指南》ApacheIgnite官方指南详解如何通过SpringBootStarter扩展实现自动配置,支持厚/轻客户端模式,简化Ign... 目录 一、背景:为什么需要这个集成? 二、两种集成方式(对应两种客户端模型) 三、方式一:自动配置 Thick