08 2015 档案
摘要:概述 SQLite虽然是一个轻量的嵌入式数据库,但这并不影响它支持事务。所谓支持事务,即需要在并发环境下,保持事务的ACID特性。事务的原子性,隔离性都需要通过并发控制来保证。那么Sqlite的并发控制是怎样的,如何实现,在这里跟大家分享下我的理解。 SQLite是一个文件数据库,所有的数据都在一个
阅读全文
摘要:在生产环境中,DB服务器经常会被并发的慢查询压挂,因此事前进行sql审核避免烂SQL很重要。万一不小心慢sql还是跑到线上,并且并发还不小,这是dba肯定会收到告警。dba上线处理第一时间是定位并kill慢查询,避免慢查询其他正常的事务。本文主要围绕kill展开,并附带介绍几种相关的timeout参
阅读全文
摘要:Sqlite学习笔记(三)&&WAL性能测试中列出了几种典型场景下WAL的性能数据,了解到WAL确实有性能优势,这篇文章将会详细分析WAL的原理,做到知其然,更要知其所以然。 WAL是什么 WAL(Write ahead logging)是一种日志模式,它是一种思想,普遍应用于关系型数据库。每个事务
阅读全文
摘要:WAL是SQLite3.7.0版本引入的一个重大改进。SQLite官网宣称在很多使用场景下,WAL模型的性能都要好于默认的DELETE模式。下面将针对几个主要场景对WAL性能做测试,测试的硬件与xxx保持一致。 纯写场景 1) 测试说明 测试简单更新事务在WAL模式下与DELETE日志模式性能对比,
阅读全文
摘要:测试目标 获取SQlite的常规性能指标 测试环境 CPU:8核,Intel(R) Xeon(R) CPU E5-2430 0 @ 2.20GHz 内存:16G 磁盘:SSD Linux 2.6.32 SQlite最新版本3.8.11 测试场景 1) 主键查询测试 2) 主键更新测试 3) 批量导入
阅读全文
摘要:sysbench简介 Sysbench是一个模块化的、跨平台、多线程基准测试工具,主要用于评估测试各种不同系统参数下的数据库负载情况。它主要包括以下几种方式的测试:cpu性能,磁盘io性能,线程调度性能,内存分配及传输速度和数据库性能。由于本人是dba,因此重点关注sysbench测试数据库的场景...
阅读全文
摘要:Sqlite简介 sqlite是一个开源的嵌入式文件数据库,sqlite以动态链接库的方式供应用程序调用,所有的数据库对象都存储在同一个文件中。 sqlite动态库非常小,最新的3.8.11版本也只有500k左右。sqlite虽然小,但功能并不弱,它支持sql-92标准中大部分SQL规范, 支持表,
阅读全文