[InnoDB系列] - InnoDB VS PBXT实测

简介:

1、前言

PBXT 是  PrimeBase 公司推出的MySQL插件引擎,其功能和  InnoDB 类似,主要特性如下:
  • MVCC Support:
    MVCC stands for Multi-version Concurrency Control. MVCC allows reading the database without locking.
  • Fully ACID complient:
    This means that transactionally safe, and able to handle multiple concurrent transactions.
  • Row-level locking:
    When updating, PBXT uses row-level locking. Row-level locking is also used during SELECT FOR UPDATE.
  • Fast Rollback and Recovery:
    PBXT
    uses a specialized method to identify garbage which makes "undo"
    unncessary. This make both rollback of transactions and recovery after
    restart very fast.
  • Deadlock Detection:
    PBXT identifies all kinds of deadlocks immediately.
  • Write-once:
    PBXT
    uses a log-based storage which makes it possible to write transactional
    data directly to the database, without first being writen to the
    transaction log.
  • Referential Integrity:
    PBXT supports foreign key definitions, including cascaded updates and deletes.
  • BLOB streaming:
    In combination with the BLOB Streaming engine PBXT can stream binary and media directly in and out of the database.
本次我们来实际对比测试下InnoDB和PBXT的性能区别。

2、准备

2.1 配置

PBXT 和  InnoDB 主要配置参数如下:
innodb:
innodb_buffer_pool_size = 6G
innodb_data_file_path = ibdata1:1024M:autoextend
innodb_thread_concurrency = 8
innodb_flush_log_at_trx_commit = 1
innodb_log_buffer_size = 16M
innodb_log_file_size = 256M
innodb_log_files_in_group = 3
innodb_max_dirty_pages_pct = 90
innodb_file_per_table
pbxt:
pbxt_checkpoint_frequency    = 28MB
pbxt_data_file_grow_size     = 8MB
pbxt_data_log_threshold      = 128MB
pbxt_garbage_threshold       = 50
pbxt_index_cache_size        = 2G
pbxt_log_buffer_size         = 2M
pbxt_log_cache_size          = 16MB
pbxt_log_file_count          = 3
pbxt_log_file_threshold      = 128MB
pbxt_record_cache_size       = 4G
pbxt_row_file_grow_size      = 1M
pbxt_transaction_buffer_size = 32MB

2.2 准备数据

本次测试分2部分进行,一部分是利用MySQL官方提供的  sql-bench 工具测试,另一部分采用  sysbench 做一个基准测试。


本文转自叶金荣51CTO博客,原文链接:http://blog.51cto.com/imysql/308827,如需转载请自行联系原作者
相关文章
|
9月前
|
存储 算法 Oracle
PostgreSQL的MVCC vs InnoDB的MVCC
PostgreSQL的MVCC vs InnoDB的MVCC
53 0
PostgreSQL的MVCC vs InnoDB的MVCC
|
关系型数据库 MySQL 数据库
MySQL 中 MyISAM vs. InnoDB
 MyISAM 是 MySQL 的默认数据库引擎(5.5 版本之前),由早期的 ISAM 改良而来,虽然性能极佳,但却有一个致命缺点:不支持事务处理(transaction),后来 MySQL 导入 InnoDB 以强化参照完整性与并发违规处理机制,后来就逐渐取代 MyISAM 成为 MySQL 的默认数据库引擎,现在最新版本的 MyISAM 也支持事务处理。
MySQL 中 MyISAM vs. InnoDB
|
Oracle 关系型数据库 MySQL
MySQL · 答疑解惑 · InnoDB 预读 VS Oracle 多块读
背景 目前,IO 仍然是数据库的性能杀手,为了提高 IO 利用率和吞吐量,不同的数据库都设计了不同的方法,本文就介绍下 InnoDB 提供的预读(read-ahead)功能,以及 Oracle 提供的多块读(multiblock-read)功能,并进行一些对比。 InnoDB read-ahea
2787 0
|
关系型数据库 Linux 测试技术
|
SQL 关系型数据库 MySQL
MySQL性能: InnoDB vs MyISAM in 5.6
Since the latest changes made recently within InnoDB code (MySQL 5.6) to improve OLTP Read-Only performance + support of full text search (FTS), I was curious to compare it now with MyISAM.. Whil
1889 0
|
1月前
|
存储 关系型数据库 MySQL
MySQL InnoDB数据存储结构
MySQL InnoDB数据存储结构
|
1月前
|
存储 缓存 关系型数据库
MySQL的varchar水真的太深了——InnoDB记录存储结构
varchar(M) 能存多少个字符,为什么提示最大16383?innodb怎么知道varchar真正有多长?记录为NULL,innodb如何处理?某个列数据占用的字节数非常多怎么办?影响每行实际可用空间的因素有哪些?本篇围绕innodb默认行格式dynamic来说说原理。
828 6
MySQL的varchar水真的太深了——InnoDB记录存储结构
|
3月前
|
存储 SQL 关系型数据库
系统设计场景题—MySQL使用InnoDB,通过二级索引查第K大的数,时间复杂度是多少?
系统设计场景题—MySQL使用InnoDB,通过二级索引查第K大的数,时间复杂度是多少?
46 1
系统设计场景题—MySQL使用InnoDB,通过二级索引查第K大的数,时间复杂度是多少?