TPCH-H基准测试
1 概述1.1 序言TPC-H用于决策支持系统的标准测试,由面向商业应用的一系列查询和更新组成。选择的查询和填充数据库的数据既考虑了广泛行业的相关性,又考虑了实现的简单性。该基准测试阐明决策支持系统的3个方面:l处理大数据量的能力;l执行高复杂查询的能力;l回答关键商业问题的能力;TPC-H用于评估各种决策支持系统的性能,其查询有如下特点:l回答现实中的商业问题;l模拟生成上的
如何并行编程
1 并行编程简介并行编程是一项难度很大的技术,但跟所有有难度的技术一样,随着时间的推移难度会逐步降低。汽车就是一个很好的例子,驾驶技术曾经是一门罕见的技术,但现在已经很普遍了。这归因于:1)汽车更加便宜和易用,从而更多的人学习驾驶;2)自动技术使得驾驶更加容易。1.1 并行编程困难的历史原因导致并行编程困难的历史原因可以分为如下几类:l过去并行系统的成本比较高,且相对稀少;l缺
OLTP Through the Looking Glass and What We Found There
1介绍 1.1DBMS的各种架构 1.2测量OLTP系统的负载 1.3结果2OLTP系统的发展趋势 2.1集群计算 2.2全内存数据库
【数据库设计与实现】第七章:缓存与检查点
7.1设计原则 数据缓冲区与检查点是相辅相成的,所以放在同一个章节介绍。由于CPU与持久化设备之间存在巨大的速度差距,所以在内存中引入缓冲区缩小这个差距。从读的角度来看,将热点数据或预判用户可能读取的数据提前加载到内存中,从而将持久化设备的读时延和带宽提升至内存的时延和带宽。从写的角度来看,直接修改缓冲区中的数据而不是磁盘中的数据,可以带来两方面的优势
Aurora:面向云的高性能关系型数据库
1介绍2规模化的持久化能力2.1复制和相干性异常2.2分段存储2.3弹性带来的操作优势3日志就是数据库3.1写放大后的负担3.2将REDO处理下沉到存储层3.3存储服务的设计要点4日志的推进4.1方案概要:异步处理4.2常规操作4.3恢复5整体运行6性能6.1基准测试的结果6.2真实客户负载下的结果7学到的教训7.1多租户和数据库融合7.2高并发自扩展负载7.3Shcema演进7.4可用性和软件升
【数据库设计与实现】第六章:并发控制
6 并发控制6.1 设计原则 事务的并发控制首先要保证并发执行的正确性,满足可序列化要求,即并发执行的结果和某种串行执行的结果是一致的,然后在满足正确性的前提下尽可能地获得最高的并发度。当然在某些业务场景下,可以适当牺牲部分正确性(即接受某些异常),从而获得更高的并发性能。并发控制大体分为悲观算法和乐观算法,为了尽可能深入了解各种算法的优缺点,本章在O
关于ANSI SQL隔离级别的评论
1介绍 在不同隔离级别下运行并发事务,允许应用设计者在正确性和吞吐量之间做一个权衡。低隔离级别可以提升事务并发度,但会增加事务不正确性风险。令人惊讶的是,即使某些事务运行在最高隔离级别(序列化级别)下,而运行在低隔离级别下的并发事务仍然可以读到未提交数据或者过期数据[GLPT]。当然,运行在低隔离级别下的事务还会产生错误数据。应用设计者必须设法阻止运行
【数据库设计与实现】第五章:同步与互斥
5.1设计原则 数据库的一个重要能力就是为多个用户提供并发访问服务,并发度是考察数据库性能的重要指标之一。事务隔离级别定义了并发控制算法的正确性,并让用户通过选择隔离级别在正确性和高性能之间进行平衡。事务重点考虑的是数据层面的并发控制,是属于较上层的同步与互斥。实际上,数据库系统是由大量进程、线程、数据结构构成的,进程、线程会并发地访问、修改数据结构,
【数据库设计与实现】第四章:事务
4.1综述 事务是数据库提供服务的基本逻辑单元,其满足如下关键特性(ACID):原子性(atomicity):归属于单个事务的所有动作要么全部被执行,要么全部都不执行;一致性(consistency):事务的运行不改变数据的一致性,事务能够正确地将目标数据集合从一个一致性状态变换为另一个一致性状态,事务运行过程中数据的状态可能是不一致的,但在执行前和执
【数据库设计与实现】第三章:数据后像与前滚
3.1设计原则 事务的持久性要求事务提交时本次事务的修改必须完成持久化工作,而事务修改的block或page在大部分场景下并不是连续的,在持久化设备上表现为大量的随机IO。通过记录后像,可以将随机IO转换为对持久化设备更为有利的顺序IO,并将dirty block或dirty page(指被修改过但尚未完成持久化的block或page)的多次修改合并,
【数据库设计与实现】第二章:数据前像与回滚
2数据前像与回滚2.1设计原则 事务中重要的一点是事务的原子性,即事务中的所有操作要么全部生效,要么全部都不生效。数据的前像和回滚是保证事务原子性的重要手段。修改记录前,先将记录的前像(即修改前的记录)保存下来,当事务需要回滚时,将记录恢复到前像,从而保证事务的原子性。从当前的实现情况来看,前像保存主要有两种技术手段:本地更新方案:直接在原记录上进行更
【数据库设计与实现】第一章:空间管理与数据布局
1 空间管理与数据布局 1.1 设计原则 数据库设计数据布局和空间管理应当考虑哪些因素呢?又有哪些设计原则?本章先提出问题,看有哪些因素要考虑,然后选取Oracle和MySQL这2款最流行的数据库,看看它们是如何进行空间管理的。我们先看看有哪些因素要考虑:数据最终要反映到持久设备上,空间管理首先要考虑持久设备(如磁盘)的物理特性,考虑如何组织数据才能最大化地发挥存储设备的效率;如何协调平