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

相关文章

Linux内核参数配置与验证详细指南

《Linux内核参数配置与验证详细指南》在Linux系统运维和性能优化中,内核参数(sysctl)的配置至关重要,本文主要来聊聊如何配置与验证这些Linux内核参数,希望对大家有一定的帮助... 目录1. 引言2. 内核参数的作用3. 如何设置内核参数3.1 临时设置(重启失效)3.2 永久设置(重启仍生效

一文详解如何在Python中从字符串中提取部分内容

《一文详解如何在Python中从字符串中提取部分内容》:本文主要介绍如何在Python中从字符串中提取部分内容的相关资料,包括使用正则表达式、Pyparsing库、AST(抽象语法树)、字符串操作... 目录前言解决方案方法一:使用正则表达式方法二:使用 Pyparsing方法三:使用 AST方法四:使用字

Python列表去重的4种核心方法与实战指南详解

《Python列表去重的4种核心方法与实战指南详解》在Python开发中,处理列表数据时经常需要去除重复元素,本文将详细介绍4种最实用的列表去重方法,有需要的小伙伴可以根据自己的需要进行选择... 目录方法1:集合(set)去重法(最快速)方法2:顺序遍历法(保持顺序)方法3:副本删除法(原地修改)方法4:

SpringBoot集成Milvus实现数据增删改查功能

《SpringBoot集成Milvus实现数据增删改查功能》milvus支持的语言比较多,支持python,Java,Go,node等开发语言,本文主要介绍如何使用Java语言,采用springboo... 目录1、Milvus基本概念2、添加maven依赖3、配置yml文件4、创建MilvusClient

SpringValidation数据校验之约束注解与分组校验方式

《SpringValidation数据校验之约束注解与分组校验方式》本文将深入探讨SpringValidation的核心功能,帮助开发者掌握约束注解的使用技巧和分组校验的高级应用,从而构建更加健壮和可... 目录引言一、Spring Validation基础架构1.1 jsR-380标准与Spring整合1

MySQL 中查询 VARCHAR 类型 JSON 数据的问题记录

《MySQL中查询VARCHAR类型JSON数据的问题记录》在数据库设计中,有时我们会将JSON数据存储在VARCHAR或TEXT类型字段中,本文将详细介绍如何在MySQL中有效查询存储为V... 目录一、问题背景二、mysql jsON 函数2.1 常用 JSON 函数三、查询示例3.1 基本查询3.2

SpringBatch数据写入实现

《SpringBatch数据写入实现》SpringBatch通过ItemWriter接口及其丰富的实现,提供了强大的数据写入能力,本文主要介绍了SpringBatch数据写入实现,具有一定的参考价值,... 目录python引言一、ItemWriter核心概念二、数据库写入实现三、文件写入实现四、多目标写入

SpringSecurity JWT基于令牌的无状态认证实现

《SpringSecurityJWT基于令牌的无状态认证实现》SpringSecurity中实现基于JWT的无状态认证是一种常见的做法,本文就来介绍一下SpringSecurityJWT基于令牌的无... 目录引言一、JWT基本原理与结构二、Spring Security JWT依赖配置三、JWT令牌生成与

使用Python将JSON,XML和YAML数据写入Excel文件

《使用Python将JSON,XML和YAML数据写入Excel文件》JSON、XML和YAML作为主流结构化数据格式,因其层次化表达能力和跨平台兼容性,已成为系统间数据交换的通用载体,本文将介绍如何... 目录如何使用python写入数据到Excel工作表用Python导入jsON数据到Excel工作表用

Mysql如何将数据按照年月分组的统计

《Mysql如何将数据按照年月分组的统计》:本文主要介绍Mysql如何将数据按照年月分组的统计方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录mysql将数据按照年月分组的统计要的效果方案总结Mysql将数据按照年月分组的统计要的效果方案① 使用 DA