SlideShare uma empresa Scribd logo
1 de 16
Baixar para ler offline
MySQL TokuDB Engine performance benchmark on FusionIO
Environment:
Machine DELL PowerEdge R720 * 2
CPU Intel(R) Xeon(R) CPU E5-2630 v2 @ 2.60GHz * 24
memory 128GB
OS CentOS release 6.5 (Final)
Kernel 2.6.32-431.el6.x86_64 #1 SMP
DB version 10.0.21-MariaDB-log MariaDB Server
raid Internal Raid
File system Ext4 with options
disk FusionIO SX300 1.6TB
Database configuration:
InnoDB:
[client]
port = 3306
socket = /storage/fioa/mysql3306/data/mysql.sock
[mysqld]
port = 3306
socket = /storage/fioa/mysql3306/data/mysql.sock
server-id = 100011
replicate_ignore_db = test
skip-name-resolve
lower_case_table_names = 1
character-set-server = utf8
replicate_wild_ignore_table = dbmon.%,sys.%,zabbix.%,mysql.%,test.%,bbs.%,slow_query_log.%
tmpdir = /storage/fioa/mysql3306/mysql-tmpdir
key_buffer_size = 64M
sort_buffer_size = 8M
read_buffer_size = 8M
read_rnd_buffer_size = 8M
query_cache_type = 0
max_allowed_packet = 628M
myisam_sort_buffer_size = 128M
tmp_table_size = 1024M
join_buffer_size = 16M
back_log = 500
open_files_limit = 6000
innodb_open_files = 4096
table_open_cache = 768
thread_cache_size = 12
max_connections = 6000
thread_concurrency = 48
datadir = /storage/fioa/mysql3306/data
tmpdir = /storage/fioa/mysql3306/mysql-tmpdir
slow_query_log = 1
long_query_time = 1
slow_query_log_file = /storage/fioa/mysql3306/mysql-slow.log
log-error = /storage/fioa/mysql3306/mysql-error.log
log-warnings
sysdate-is-now
###replication setting
log-slave-updates
sync_binlog = 0
binlog_format = row
log_bin_trust_function_creators = 1
log-bin = /storage/fioa/mysql3306/binlog/mysql-bin
log-slave-updates
relay_log_purge = 0
relay-log = /storage/fioa/mysql3306/binlog/mysql-relay-bin
relay-log-index = /storage/fioa/mysql3306/binlog/mysql-relay-bin.index
relay_log_info_file = /storage/fioa/mysql3306/binlog/relay.info
master-info-file = /storage/fioa/mysql3306/binlog/master.info
#innodb setting
innodb_data_home_dir = /storage/fioa/mysql3306/data
innodb_data_file_path = ibdata0:1024M;ibdata1:1024M;ibdata2:1024M;ibdata3:1024M:autoextend
innodb_log_group_home_dir = /storage/fioa/mysql3306/data
innodb_log_files_in_group = 2
innodb_log_file_size = 512M
innodb_buffer_pool_size = 65536M
innodb_log_buffer_size = 128M
innodb_flush_log_at_trx_commit = 2
innodb_flush_method = O_DIRECT
innodb_thread_concurrency = 6
innodb_file_per_table = 1
transaction-isolation = READ-COMMITTED
[mysqldump]
quick
max_allowed_packet = 128M
[myisamchk]
key_buffer_size = 256M
sort_buffer_size = 256M
read_buffer = 4M
write_buffer = 4M
[mysql]
max_allowed_packet = 128M
default-character-set = utf8
no_auto_rehash
prompt = "R:m:s d> "
pager = "more"
TokuDB :
[client]
port = 3306
socket = /storage/fioa/mysql3306/data/mysql.sock
[mysqld]
port = 3306
socket = /storage/fioa/mysql3306/data/mysql.sock
server-id = 100011
replicate_ignore_db = test
skip-name-resolve
lower_case_table_names = 1
character-set-server = utf8
plugin-load=ha_tokudb
tokudb_cache_size =64G
tokudb_directio=1
tokudb_commit_sync = 0
replicate_wild_ignore_table = dbmon.%,sys.%,zabbix.%,mysql.%,test.%,bbs.%,slow_query_log.%
plugin-load=ha_tokudb
tmpdir = /storage/fioa/mysql3306/mysql-tmpdir
key_buffer_size = 64M
sort_buffer_size = 8M
read_buffer_size = 8M
read_rnd_buffer_size = 8M
query_cache_type = 0
max_allowed_packet = 628M
myisam_sort_buffer_size = 128M
tmp_table_size = 1024M
join_buffer_size = 16M
back_log = 500
open_files_limit = 6000
innodb_open_files = 4096
table_open_cache = 768
thread_cache_size = 12
max_connections = 6000
thread_concurrency = 48
datadir = /storage/fioa/mysql3306/data
tmpdir = /storage/fioa/mysql3306/mysql-tmpdir
slow_query_log = 1
long_query_time = 1
slow_query_log_file = /storage/fioa/mysql3306/mysql-slow.log
log-error = /storage/fioa/mysql3306/mysql-error.log
log-warnings
sysdate-is-now
###replication setting
log-slave-updates
sync_binlog = 0
binlog_format = row
log_bin_trust_function_creators = 1
log-bin = /storage/fioa/mysql3306/binlog/mysql-bin
log-slave-updates
relay_log_purge = 0
relay-log = /storage/fioa/mysql3306/binlog/mysql-relay-bin
relay-log-index = /storage/fioa/mysql3306/binlog/mysql-relay-bin.index
relay_log_info_file = /storage/fioa/mysql3306/binlog/relay.info
master-info-file = /storage/fioa/mysql3306/binlog/master.info
#innodb setting
innodb_data_home_dir = /storage/fioa/mysql3306/data
innodb_data_file_path = ibdata0:1024M;ibdata1:1024M;ibdata2:1024M;ibdata3:1024M:autoextend
innodb_log_group_home_dir = /storage/fioa/mysql3306/data
innodb_log_files_in_group = 2
innodb_log_file_size = 512M
innodb_flush_method = O_DIRECT
innodb_buffer_pool_size = 65536M
innodb_log_buffer_size = 128M
innodb_flush_log_at_trx_commit = 2
innodb_thread_concurrency = 6
innodb_file_per_table = 1
transaction-isolation = READ-COMMITTED
[mysqldump]
quick
max_allowed_packet = 128M
[myisamchk]
key_buffer_size = 256M
sort_buffer_size = 256M
read_buffer = 4M
write_buffer = 4M
[mysql]
max_allowed_packet = 128M
default-character-set = utf8
no_auto_rehash
prompt = "R:m:s d> "
pager = "more"
We create 1000 DWs first to test on both InnoDB and TokuDB engine –separate test from 32 threads to 512 threads
TpmC result on different threads
InnoDB Threads 32 64 128 256 512 1024
TpmC 46376.699 48921.6 47090.801 41429.398 39957.102 33683.102
TokuDB Threads 32 64 128 256 512 1024
TpmC 41694.898 30663.7 22092 13243.9 N/A N/A
TokuDB does not support foreign keys, so we add indexes for queries, even so in a heavy-load environment TokuDB still has too
many system locks that result in a low TpmC.
In this test, TokuDB engine got a poor performance (TpmC decreases rapidly, many connections timeout appear due to system locks
in MySQL when threads up to 512).
Look at total size of these two engines:
InnoDB tpcc1000 DB:
TokuDB tpcc1000 DB:
Simple test table mytest10 size:
Compression ratio of these two engines is nearly 2:1
Mydbtest performance in different threads
We create four tables for this test on four modes (100% insert, 50%insert+50%select, 50%insert+50%update, mix)
mode threads 256 512
insert(innodb) Summary: exec=23768/s, qtps=47669/s Summary: exec=13319/s, qtps=54116/s
insert(tokudb) Summary: exec=23640/s, qtps=47415/s Summary: exec=12818/s, qtps=51969/s
50insert+50sel(innodb) Summary: exec=16606/s, qtps=66803/s Summary: exec=16418/s, qtps=66461/s
50insert+50sel(tokudb) Summary: exec=15324/s, qtps=61667/s Summary: exec=15317/s, qtps=61979/s
50insert+50upd(innodb) Summary: exec=10078/s, qtps=40657/s Summary: exec=10016/s, qtps=40842/s
50insert+50upd(tokudb) Summary: exec=9890/s, qtps=39890/s Summary: exec=9843/s, qtps=40155/s
mix mode(innodb) Summary: exec=7573/s, qtps=61504/s Summary: exec=7728/s, qtps=63939/s
mix mode(tokudb) Summary: exec=6788/s, qtps=55262/s Summary: exec=6833/s, qtps=56753/s
InnoDB still has a better performance than TokuDB when use simple queries to avoid MySQL locks.
option
user xxxxx/xxxx@10.128.6.35:3306:tpcc1000
name tpcc1000
time 10m
log toku_insert100%_512_parallel__%p.log
declare
a int 1 200000000
b int 40000 6000000000
c CHAR 1 20
d CHAR 1 50
e char 1 4
f CHAR 1 5
g char 1 6
h char 3 15
j int 35 555555555
h char 3 15
k date -90 -60
l int 1 49999999
begin
insert into mytest10 values(:a,:b,:c,:d,:e,:f,:g,:h,:j);
--- /*insert into mytest values (:a,:c,:d);*/
--- /*select * from mytest where a=:a;*/
--- /*insert into mytest2 values (:a,:b,:k,:h);*/
--- /*update mytest set a=a-1 where a=:a;*/
--- /*select * from mytest2 where k=:k;*/
end
Conclusion:
Reference:https://www.percona.com/blog/2015/07/24/innodb-vs-tokudb-in-linkbench-benchmark/
Though, it worth remembering, that:
 On a fast expensive storage, TokuDB provides a better compression, which allows to store more data in limited capacity
 TokuDB still writes two time less than InnoDB, that mean twice longer lifetime for SSD (still expensive).
Also looking at the results, I can make the conclusion that InnoDB compression is inefficient in its implementation, as it is not able to get benefits: first, from doing
less reads (well, it helps to get better than uncompressed InnoDB, but not much); and, second, from a fast storage.
In this picture, TokuDB has a better performance on IO slow storage like SATA SAS disk (Author uses M500 SSD disk for this test)
For us data quality is more important than storage cost. We have already used SSD&PCIe cards for all database system. TokuDB
has big advantage for its high compression ratio. I thinks it’s more suitable for log system rather than core system.

Mais conteúdo relacionado

Mais procurados

1 m+ qps on mysql galera cluster
1 m+ qps on mysql galera cluster1 m+ qps on mysql galera cluster
1 m+ qps on mysql galera clusterOlinData
 
Open Source SQL databases enters millions queries per second era
Open Source SQL databases enters millions queries per second eraOpen Source SQL databases enters millions queries per second era
Open Source SQL databases enters millions queries per second eraSveta Smirnova
 
How (not) to kill your MySQL infrastructure
How (not) to kill your MySQL infrastructureHow (not) to kill your MySQL infrastructure
How (not) to kill your MySQL infrastructureMiklos Szel
 
HandlerSocket - A NoSQL plugin for MySQL
HandlerSocket - A NoSQL plugin for MySQLHandlerSocket - A NoSQL plugin for MySQL
HandlerSocket - A NoSQL plugin for MySQLJui-Nan Lin
 
MySQL Audit using Percona audit plugin and ELK
MySQL Audit using Percona audit plugin and ELKMySQL Audit using Percona audit plugin and ELK
MySQL Audit using Percona audit plugin and ELKI Goo Lee
 
Setting up mongo replica set
Setting up mongo replica setSetting up mongo replica set
Setting up mongo replica setSudheer Kondla
 
Postgres-BDR with Google Cloud Platform
Postgres-BDR with Google Cloud PlatformPostgres-BDR with Google Cloud Platform
Postgres-BDR with Google Cloud PlatformSungJae Yun
 
HandlerSocket plugin for MySQL (English)
HandlerSocket plugin for MySQL (English)HandlerSocket plugin for MySQL (English)
HandlerSocket plugin for MySQL (English)akirahiguchi
 
SiteGround Tech TeamBuilding
SiteGround Tech TeamBuildingSiteGround Tech TeamBuilding
SiteGround Tech TeamBuildingMarian Marinov
 
MongoDB – Sharded cluster tutorial - Percona Europe 2017
MongoDB – Sharded cluster tutorial - Percona Europe 2017MongoDB – Sharded cluster tutorial - Percona Europe 2017
MongoDB – Sharded cluster tutorial - Percona Europe 2017Antonios Giannopoulos
 
Как PostgreSQL работает с диском
Как PostgreSQL работает с дискомКак PostgreSQL работает с диском
Как PostgreSQL работает с дискомPostgreSQL-Consulting
 
Oracle cluster installation with grid and iscsi
Oracle cluster  installation with grid and iscsiOracle cluster  installation with grid and iscsi
Oracle cluster installation with grid and iscsiChanaka Lasantha
 
Advanced Replication
Advanced ReplicationAdvanced Replication
Advanced ReplicationMongoDB
 
XtraDB 5.7: key performance algorithms
XtraDB 5.7: key performance algorithmsXtraDB 5.7: key performance algorithms
XtraDB 5.7: key performance algorithmsLaurynas Biveinis
 
Introduction to MySQL InnoDB Cluster
Introduction to MySQL InnoDB ClusterIntroduction to MySQL InnoDB Cluster
Introduction to MySQL InnoDB ClusterI Goo Lee
 
Add a bit of ACID to Cassandra. Cassandra Summit EU 2014
Add a bit of ACID to Cassandra. Cassandra Summit EU 2014Add a bit of ACID to Cassandra. Cassandra Summit EU 2014
Add a bit of ACID to Cassandra. Cassandra Summit EU 2014odnoklassniki.ru
 
Backup automation in KAKAO
Backup automation in KAKAO Backup automation in KAKAO
Backup automation in KAKAO I Goo Lee
 
Oracle cluster installation with grid and nfs
Oracle cluster  installation with grid and nfsOracle cluster  installation with grid and nfs
Oracle cluster installation with grid and nfsChanaka Lasantha
 

Mais procurados (20)

1 m+ qps on mysql galera cluster
1 m+ qps on mysql galera cluster1 m+ qps on mysql galera cluster
1 m+ qps on mysql galera cluster
 
Open Source SQL databases enters millions queries per second era
Open Source SQL databases enters millions queries per second eraOpen Source SQL databases enters millions queries per second era
Open Source SQL databases enters millions queries per second era
 
How (not) to kill your MySQL infrastructure
How (not) to kill your MySQL infrastructureHow (not) to kill your MySQL infrastructure
How (not) to kill your MySQL infrastructure
 
HandlerSocket - A NoSQL plugin for MySQL
HandlerSocket - A NoSQL plugin for MySQLHandlerSocket - A NoSQL plugin for MySQL
HandlerSocket - A NoSQL plugin for MySQL
 
MySQL Audit using Percona audit plugin and ELK
MySQL Audit using Percona audit plugin and ELKMySQL Audit using Percona audit plugin and ELK
MySQL Audit using Percona audit plugin and ELK
 
Setting up mongo replica set
Setting up mongo replica setSetting up mongo replica set
Setting up mongo replica set
 
Postgres-BDR with Google Cloud Platform
Postgres-BDR with Google Cloud PlatformPostgres-BDR with Google Cloud Platform
Postgres-BDR with Google Cloud Platform
 
HandlerSocket plugin for MySQL (English)
HandlerSocket plugin for MySQL (English)HandlerSocket plugin for MySQL (English)
HandlerSocket plugin for MySQL (English)
 
SiteGround Tech TeamBuilding
SiteGround Tech TeamBuildingSiteGround Tech TeamBuilding
SiteGround Tech TeamBuilding
 
MongoDB – Sharded cluster tutorial - Percona Europe 2017
MongoDB – Sharded cluster tutorial - Percona Europe 2017MongoDB – Sharded cluster tutorial - Percona Europe 2017
MongoDB – Sharded cluster tutorial - Percona Europe 2017
 
Как PostgreSQL работает с диском
Как PostgreSQL работает с дискомКак PostgreSQL работает с диском
Как PostgreSQL работает с диском
 
Oracle cluster installation with grid and iscsi
Oracle cluster  installation with grid and iscsiOracle cluster  installation with grid and iscsi
Oracle cluster installation with grid and iscsi
 
Advanced Replication
Advanced ReplicationAdvanced Replication
Advanced Replication
 
XtraDB 5.7: key performance algorithms
XtraDB 5.7: key performance algorithmsXtraDB 5.7: key performance algorithms
XtraDB 5.7: key performance algorithms
 
Introduction to MySQL InnoDB Cluster
Introduction to MySQL InnoDB ClusterIntroduction to MySQL InnoDB Cluster
Introduction to MySQL InnoDB Cluster
 
Add a bit of ACID to Cassandra. Cassandra Summit EU 2014
Add a bit of ACID to Cassandra. Cassandra Summit EU 2014Add a bit of ACID to Cassandra. Cassandra Summit EU 2014
Add a bit of ACID to Cassandra. Cassandra Summit EU 2014
 
Backup automation in KAKAO
Backup automation in KAKAO Backup automation in KAKAO
Backup automation in KAKAO
 
Haproxy - zastosowania
Haproxy - zastosowaniaHaproxy - zastosowania
Haproxy - zastosowania
 
Oracle cluster installation with grid and nfs
Oracle cluster  installation with grid and nfsOracle cluster  installation with grid and nfs
Oracle cluster installation with grid and nfs
 
Puppet
PuppetPuppet
Puppet
 

Destaque

TokuDB 高科扩展性 MySQL 和 MariaDB 数据库
TokuDB 高科扩展性 MySQL 和 MariaDB 数据库TokuDB 高科扩展性 MySQL 和 MariaDB 数据库
TokuDB 高科扩展性 MySQL 和 MariaDB 数据库YUCHENG HU
 
TokuDB - What You Need to Know
TokuDB - What You Need to KnowTokuDB - What You Need to Know
TokuDB - What You Need to KnowJervin Real
 
MySQL Performance Tuning Variables
MySQL Performance Tuning VariablesMySQL Performance Tuning Variables
MySQL Performance Tuning VariablesFromDual GmbH
 
Get More Out of MySQL with TokuDB
Get More Out of MySQL with TokuDBGet More Out of MySQL with TokuDB
Get More Out of MySQL with TokuDBTim Callaghan
 
Infiniflash benchmark
Infiniflash benchmarkInfiniflash benchmark
Infiniflash benchmarkLouis liu
 
HBASE Performane Test
HBASE Performane TestHBASE Performane Test
HBASE Performane TestLouis liu
 
Visualizing Data in Elasticsearch DevFest DC 2016
Visualizing Data in Elasticsearch DevFest DC 2016Visualizing Data in Elasticsearch DevFest DC 2016
Visualizing Data in Elasticsearch DevFest DC 2016David Erickson
 
Storage Methods for Nonstandard Data Patterns
Storage Methods for Nonstandard Data PatternsStorage Methods for Nonstandard Data Patterns
Storage Methods for Nonstandard Data PatternsBob Burgess
 
Sql to-mongo db
Sql to-mongo dbSql to-mongo db
Sql to-mongo dbLouis liu
 
(DAT209) NEW LAUNCH! Introducing MariaDB on Amazon RDS
(DAT209) NEW LAUNCH! Introducing MariaDB on Amazon RDS(DAT209) NEW LAUNCH! Introducing MariaDB on Amazon RDS
(DAT209) NEW LAUNCH! Introducing MariaDB on Amazon RDSAmazon Web Services
 
What's new in MySQL Cluster 7.4 webinar charts
What's new in MySQL Cluster 7.4 webinar chartsWhat's new in MySQL Cluster 7.4 webinar charts
What's new in MySQL Cluster 7.4 webinar chartsAndrew Morgan
 

Destaque (13)

TokuDB 高科扩展性 MySQL 和 MariaDB 数据库
TokuDB 高科扩展性 MySQL 和 MariaDB 数据库TokuDB 高科扩展性 MySQL 和 MariaDB 数据库
TokuDB 高科扩展性 MySQL 和 MariaDB 数据库
 
TokuDB - What You Need to Know
TokuDB - What You Need to KnowTokuDB - What You Need to Know
TokuDB - What You Need to Know
 
MySQL Performance Tuning Variables
MySQL Performance Tuning VariablesMySQL Performance Tuning Variables
MySQL Performance Tuning Variables
 
Get More Out of MySQL with TokuDB
Get More Out of MySQL with TokuDBGet More Out of MySQL with TokuDB
Get More Out of MySQL with TokuDB
 
Infiniflash benchmark
Infiniflash benchmarkInfiniflash benchmark
Infiniflash benchmark
 
HBASE Performane Test
HBASE Performane TestHBASE Performane Test
HBASE Performane Test
 
Visualizing Data in Elasticsearch DevFest DC 2016
Visualizing Data in Elasticsearch DevFest DC 2016Visualizing Data in Elasticsearch DevFest DC 2016
Visualizing Data in Elasticsearch DevFest DC 2016
 
Storage Methods for Nonstandard Data Patterns
Storage Methods for Nonstandard Data PatternsStorage Methods for Nonstandard Data Patterns
Storage Methods for Nonstandard Data Patterns
 
Sql to-mongo db
Sql to-mongo dbSql to-mongo db
Sql to-mongo db
 
MySQL 5.5 Guide to InnoDB Status
MySQL 5.5 Guide to InnoDB StatusMySQL 5.5 Guide to InnoDB Status
MySQL 5.5 Guide to InnoDB Status
 
(DAT209) NEW LAUNCH! Introducing MariaDB on Amazon RDS
(DAT209) NEW LAUNCH! Introducing MariaDB on Amazon RDS(DAT209) NEW LAUNCH! Introducing MariaDB on Amazon RDS
(DAT209) NEW LAUNCH! Introducing MariaDB on Amazon RDS
 
What's new in MySQL Cluster 7.4 webinar charts
What's new in MySQL Cluster 7.4 webinar chartsWhat's new in MySQL Cluster 7.4 webinar charts
What's new in MySQL Cluster 7.4 webinar charts
 
Intro to column stores
Intro to column storesIntro to column stores
Intro to column stores
 

Semelhante a MySQL Tokudb engine benchmark

Compare mysql5.1.50 mysql5.5.8
Compare mysql5.1.50 mysql5.5.8Compare mysql5.1.50 mysql5.5.8
Compare mysql5.1.50 mysql5.5.8Philip Zhong
 
Optimizing MariaDB for maximum performance
Optimizing MariaDB for maximum performanceOptimizing MariaDB for maximum performance
Optimizing MariaDB for maximum performanceMariaDB plc
 
監査ログをもっと身近に!〜統合監査のすすめ〜
監査ログをもっと身近に!〜統合監査のすすめ〜監査ログをもっと身近に!〜統合監査のすすめ〜
監査ログをもっと身近に!〜統合監査のすすめ〜Michitoshi Yoshida
 
Percona Live UK 2014 Part III
Percona Live UK 2014  Part IIIPercona Live UK 2014  Part III
Percona Live UK 2014 Part IIIAlkin Tezuysal
 
Multiple instances on linux
Multiple instances on linuxMultiple instances on linux
Multiple instances on linuxVasudeva Rao
 
Applying profilers to my sql (fosdem 2017)
Applying profilers to my sql (fosdem 2017)Applying profilers to my sql (fosdem 2017)
Applying profilers to my sql (fosdem 2017)Valeriy Kravchuk
 
SequoiaDB Distributed Relational Database
SequoiaDB Distributed Relational DatabaseSequoiaDB Distributed Relational Database
SequoiaDB Distributed Relational Databasewangzhonnew
 
MySQL 5.7 in a Nutshell
MySQL 5.7 in a NutshellMySQL 5.7 in a Nutshell
MySQL 5.7 in a NutshellEmily Ikuta
 
Multiple instances second method
Multiple instances second methodMultiple instances second method
Multiple instances second methodVasudeva Rao
 
Restore MySQL database from mysqlbackup
Restore MySQL database from mysqlbackup Restore MySQL database from mysqlbackup
Restore MySQL database from mysqlbackup AllDatabaseSolutions
 
(SDD402) Amazon ElastiCache Deep Dive | AWS re:Invent 2014
(SDD402) Amazon ElastiCache Deep Dive | AWS re:Invent 2014(SDD402) Amazon ElastiCache Deep Dive | AWS re:Invent 2014
(SDD402) Amazon ElastiCache Deep Dive | AWS re:Invent 2014Amazon Web Services
 
DUG'20: 12 - DAOS in Lenovo’s HPC Innovation Center
DUG'20: 12 - DAOS in Lenovo’s HPC Innovation CenterDUG'20: 12 - DAOS in Lenovo’s HPC Innovation Center
DUG'20: 12 - DAOS in Lenovo’s HPC Innovation CenterAndrey Kudryavtsev
 
Crash_Report_Mechanism_In_Tizen
Crash_Report_Mechanism_In_TizenCrash_Report_Mechanism_In_Tizen
Crash_Report_Mechanism_In_TizenLex Yu
 
MySQL Spider Architecture
MySQL Spider ArchitectureMySQL Spider Architecture
MySQL Spider ArchitectureI Goo Lee
 
Spider Setup with AWS/sandbox
Spider Setup with AWS/sandboxSpider Setup with AWS/sandbox
Spider Setup with AWS/sandboxI Goo Lee
 
A little systemtap
A little systemtapA little systemtap
A little systemtapyang bingwu
 
A little systemtap
A little systemtapA little systemtap
A little systemtapyang bingwu
 

Semelhante a MySQL Tokudb engine benchmark (20)

MySQLinsanity
MySQLinsanityMySQLinsanity
MySQLinsanity
 
Compare mysql5.1.50 mysql5.5.8
Compare mysql5.1.50 mysql5.5.8Compare mysql5.1.50 mysql5.5.8
Compare mysql5.1.50 mysql5.5.8
 
Optimizing MariaDB for maximum performance
Optimizing MariaDB for maximum performanceOptimizing MariaDB for maximum performance
Optimizing MariaDB for maximum performance
 
監査ログをもっと身近に!〜統合監査のすすめ〜
監査ログをもっと身近に!〜統合監査のすすめ〜監査ログをもっと身近に!〜統合監査のすすめ〜
監査ログをもっと身近に!〜統合監査のすすめ〜
 
Percona Live UK 2014 Part III
Percona Live UK 2014  Part IIIPercona Live UK 2014  Part III
Percona Live UK 2014 Part III
 
Javantura v2 - Replication with MongoDB - what could go wrong... - Philipp Krenn
Javantura v2 - Replication with MongoDB - what could go wrong... - Philipp KrennJavantura v2 - Replication with MongoDB - what could go wrong... - Philipp Krenn
Javantura v2 - Replication with MongoDB - what could go wrong... - Philipp Krenn
 
Multiple instances on linux
Multiple instances on linuxMultiple instances on linux
Multiple instances on linux
 
Applying profilers to my sql (fosdem 2017)
Applying profilers to my sql (fosdem 2017)Applying profilers to my sql (fosdem 2017)
Applying profilers to my sql (fosdem 2017)
 
SequoiaDB Distributed Relational Database
SequoiaDB Distributed Relational DatabaseSequoiaDB Distributed Relational Database
SequoiaDB Distributed Relational Database
 
MySQL 5.7 in a Nutshell
MySQL 5.7 in a NutshellMySQL 5.7 in a Nutshell
MySQL 5.7 in a Nutshell
 
Multiple instances second method
Multiple instances second methodMultiple instances second method
Multiple instances second method
 
Restore MySQL database from mysqlbackup
Restore MySQL database from mysqlbackup Restore MySQL database from mysqlbackup
Restore MySQL database from mysqlbackup
 
Operation outbreak
Operation outbreakOperation outbreak
Operation outbreak
 
(SDD402) Amazon ElastiCache Deep Dive | AWS re:Invent 2014
(SDD402) Amazon ElastiCache Deep Dive | AWS re:Invent 2014(SDD402) Amazon ElastiCache Deep Dive | AWS re:Invent 2014
(SDD402) Amazon ElastiCache Deep Dive | AWS re:Invent 2014
 
DUG'20: 12 - DAOS in Lenovo’s HPC Innovation Center
DUG'20: 12 - DAOS in Lenovo’s HPC Innovation CenterDUG'20: 12 - DAOS in Lenovo’s HPC Innovation Center
DUG'20: 12 - DAOS in Lenovo’s HPC Innovation Center
 
Crash_Report_Mechanism_In_Tizen
Crash_Report_Mechanism_In_TizenCrash_Report_Mechanism_In_Tizen
Crash_Report_Mechanism_In_Tizen
 
MySQL Spider Architecture
MySQL Spider ArchitectureMySQL Spider Architecture
MySQL Spider Architecture
 
Spider Setup with AWS/sandbox
Spider Setup with AWS/sandboxSpider Setup with AWS/sandbox
Spider Setup with AWS/sandbox
 
A little systemtap
A little systemtapA little systemtap
A little systemtap
 
A little systemtap
A little systemtapA little systemtap
A little systemtap
 

Mais de Louis liu

Tcpcopy benchmark
Tcpcopy benchmarkTcpcopy benchmark
Tcpcopy benchmarkLouis liu
 
JK Log-Center architect
JK Log-Center architectJK Log-Center architect
JK Log-Center architectLouis liu
 
JKDB BACKUP Introduction
JKDB BACKUP IntroductionJKDB BACKUP Introduction
JKDB BACKUP IntroductionLouis liu
 
MySQL 5.7 milestone
MySQL 5.7 milestoneMySQL 5.7 milestone
MySQL 5.7 milestoneLouis liu
 
MySQL Oslayer performace optimization
MySQL  Oslayer performace optimizationMySQL  Oslayer performace optimization
MySQL Oslayer performace optimizationLouis liu
 
Jkcn MySQLDB 架构
Jkcn MySQLDB 架构Jkcn MySQLDB 架构
Jkcn MySQLDB 架构Louis liu
 
基于Mongodb的压力评测工具 ycsb的一些概括
基于Mongodb的压力评测工具 ycsb的一些概括基于Mongodb的压力评测工具 ycsb的一些概括
基于Mongodb的压力评测工具 ycsb的一些概括Louis liu
 
NetApp ef540 SSD Storage Test
NetApp ef540 SSD Storage TestNetApp ef540 SSD Storage Test
NetApp ef540 SSD Storage TestLouis liu
 
Exadata best practice on E-commerce area
Exadata best practice on E-commerce area Exadata best practice on E-commerce area
Exadata best practice on E-commerce area Louis liu
 
MySQL 5.5&5.6 new features summary
MySQL 5.5&5.6 new features summaryMySQL 5.5&5.6 new features summary
MySQL 5.5&5.6 new features summaryLouis liu
 
Ssd gc review
Ssd gc reviewSsd gc review
Ssd gc reviewLouis liu
 
1号店数据库架构
1号店数据库架构1号店数据库架构
1号店数据库架构Louis liu
 
Architecture of YHD
Architecture of YHDArchitecture of YHD
Architecture of YHDLouis liu
 
Think of oracle and mysql bind value
Think of oracle and mysql bind value Think of oracle and mysql bind value
Think of oracle and mysql bind value Louis liu
 
ION performance brief hp dl980-8b
ION performance brief   hp dl980-8bION performance brief   hp dl980-8b
ION performance brief hp dl980-8bLouis liu
 
How to study oracle by louis liu
How to study oracle by louis liu How to study oracle by louis liu
How to study oracle by louis liu Louis liu
 
Advanced tips of dbms statas
Advanced tips of dbms statasAdvanced tips of dbms statas
Advanced tips of dbms statasLouis liu
 
Optimizer in oracle 11g by wwf from ebay COC
Optimizer in oracle 11g by wwf from ebay COCOptimizer in oracle 11g by wwf from ebay COC
Optimizer in oracle 11g by wwf from ebay COCLouis liu
 

Mais de Louis liu (20)

Tcpcopy benchmark
Tcpcopy benchmarkTcpcopy benchmark
Tcpcopy benchmark
 
JK Log-Center architect
JK Log-Center architectJK Log-Center architect
JK Log-Center architect
 
Wdt Test
Wdt TestWdt Test
Wdt Test
 
JKDB BACKUP Introduction
JKDB BACKUP IntroductionJKDB BACKUP Introduction
JKDB BACKUP Introduction
 
MySQL 5.7 milestone
MySQL 5.7 milestoneMySQL 5.7 milestone
MySQL 5.7 milestone
 
MySQL Oslayer performace optimization
MySQL  Oslayer performace optimizationMySQL  Oslayer performace optimization
MySQL Oslayer performace optimization
 
Jkcn MySQLDB 架构
Jkcn MySQLDB 架构Jkcn MySQLDB 架构
Jkcn MySQLDB 架构
 
基于Mongodb的压力评测工具 ycsb的一些概括
基于Mongodb的压力评测工具 ycsb的一些概括基于Mongodb的压力评测工具 ycsb的一些概括
基于Mongodb的压力评测工具 ycsb的一些概括
 
NetApp ef540 SSD Storage Test
NetApp ef540 SSD Storage TestNetApp ef540 SSD Storage Test
NetApp ef540 SSD Storage Test
 
Exadata best practice on E-commerce area
Exadata best practice on E-commerce area Exadata best practice on E-commerce area
Exadata best practice on E-commerce area
 
MySQL 5.5&5.6 new features summary
MySQL 5.5&5.6 new features summaryMySQL 5.5&5.6 new features summary
MySQL 5.5&5.6 new features summary
 
Ssd gc review
Ssd gc reviewSsd gc review
Ssd gc review
 
1号店数据库架构
1号店数据库架构1号店数据库架构
1号店数据库架构
 
Architecture of YHD
Architecture of YHDArchitecture of YHD
Architecture of YHD
 
Oracle dgha
Oracle dghaOracle dgha
Oracle dgha
 
Think of oracle and mysql bind value
Think of oracle and mysql bind value Think of oracle and mysql bind value
Think of oracle and mysql bind value
 
ION performance brief hp dl980-8b
ION performance brief   hp dl980-8bION performance brief   hp dl980-8b
ION performance brief hp dl980-8b
 
How to study oracle by louis liu
How to study oracle by louis liu How to study oracle by louis liu
How to study oracle by louis liu
 
Advanced tips of dbms statas
Advanced tips of dbms statasAdvanced tips of dbms statas
Advanced tips of dbms statas
 
Optimizer in oracle 11g by wwf from ebay COC
Optimizer in oracle 11g by wwf from ebay COCOptimizer in oracle 11g by wwf from ebay COC
Optimizer in oracle 11g by wwf from ebay COC
 

Último

Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024SynarionITSolutions
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdflior mazor
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...apidays
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 

Último (20)

Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 

MySQL Tokudb engine benchmark

  • 1. MySQL TokuDB Engine performance benchmark on FusionIO Environment: Machine DELL PowerEdge R720 * 2 CPU Intel(R) Xeon(R) CPU E5-2630 v2 @ 2.60GHz * 24 memory 128GB OS CentOS release 6.5 (Final) Kernel 2.6.32-431.el6.x86_64 #1 SMP DB version 10.0.21-MariaDB-log MariaDB Server raid Internal Raid File system Ext4 with options disk FusionIO SX300 1.6TB
  • 2. Database configuration: InnoDB: [client] port = 3306 socket = /storage/fioa/mysql3306/data/mysql.sock [mysqld] port = 3306 socket = /storage/fioa/mysql3306/data/mysql.sock server-id = 100011 replicate_ignore_db = test skip-name-resolve lower_case_table_names = 1 character-set-server = utf8 replicate_wild_ignore_table = dbmon.%,sys.%,zabbix.%,mysql.%,test.%,bbs.%,slow_query_log.% tmpdir = /storage/fioa/mysql3306/mysql-tmpdir key_buffer_size = 64M sort_buffer_size = 8M read_buffer_size = 8M read_rnd_buffer_size = 8M query_cache_type = 0 max_allowed_packet = 628M myisam_sort_buffer_size = 128M tmp_table_size = 1024M
  • 3. join_buffer_size = 16M back_log = 500 open_files_limit = 6000 innodb_open_files = 4096 table_open_cache = 768 thread_cache_size = 12 max_connections = 6000 thread_concurrency = 48 datadir = /storage/fioa/mysql3306/data tmpdir = /storage/fioa/mysql3306/mysql-tmpdir slow_query_log = 1 long_query_time = 1 slow_query_log_file = /storage/fioa/mysql3306/mysql-slow.log log-error = /storage/fioa/mysql3306/mysql-error.log log-warnings sysdate-is-now ###replication setting log-slave-updates sync_binlog = 0 binlog_format = row log_bin_trust_function_creators = 1 log-bin = /storage/fioa/mysql3306/binlog/mysql-bin log-slave-updates relay_log_purge = 0 relay-log = /storage/fioa/mysql3306/binlog/mysql-relay-bin relay-log-index = /storage/fioa/mysql3306/binlog/mysql-relay-bin.index
  • 4. relay_log_info_file = /storage/fioa/mysql3306/binlog/relay.info master-info-file = /storage/fioa/mysql3306/binlog/master.info #innodb setting innodb_data_home_dir = /storage/fioa/mysql3306/data innodb_data_file_path = ibdata0:1024M;ibdata1:1024M;ibdata2:1024M;ibdata3:1024M:autoextend innodb_log_group_home_dir = /storage/fioa/mysql3306/data innodb_log_files_in_group = 2 innodb_log_file_size = 512M innodb_buffer_pool_size = 65536M innodb_log_buffer_size = 128M innodb_flush_log_at_trx_commit = 2 innodb_flush_method = O_DIRECT innodb_thread_concurrency = 6 innodb_file_per_table = 1 transaction-isolation = READ-COMMITTED [mysqldump] quick max_allowed_packet = 128M [myisamchk] key_buffer_size = 256M sort_buffer_size = 256M read_buffer = 4M write_buffer = 4M [mysql] max_allowed_packet = 128M default-character-set = utf8
  • 5. no_auto_rehash prompt = "R:m:s d> " pager = "more" TokuDB : [client] port = 3306 socket = /storage/fioa/mysql3306/data/mysql.sock [mysqld] port = 3306 socket = /storage/fioa/mysql3306/data/mysql.sock server-id = 100011 replicate_ignore_db = test skip-name-resolve lower_case_table_names = 1 character-set-server = utf8 plugin-load=ha_tokudb tokudb_cache_size =64G tokudb_directio=1 tokudb_commit_sync = 0 replicate_wild_ignore_table = dbmon.%,sys.%,zabbix.%,mysql.%,test.%,bbs.%,slow_query_log.% plugin-load=ha_tokudb tmpdir = /storage/fioa/mysql3306/mysql-tmpdir
  • 6. key_buffer_size = 64M sort_buffer_size = 8M read_buffer_size = 8M read_rnd_buffer_size = 8M query_cache_type = 0 max_allowed_packet = 628M myisam_sort_buffer_size = 128M tmp_table_size = 1024M join_buffer_size = 16M back_log = 500 open_files_limit = 6000 innodb_open_files = 4096 table_open_cache = 768 thread_cache_size = 12 max_connections = 6000 thread_concurrency = 48 datadir = /storage/fioa/mysql3306/data tmpdir = /storage/fioa/mysql3306/mysql-tmpdir slow_query_log = 1 long_query_time = 1 slow_query_log_file = /storage/fioa/mysql3306/mysql-slow.log log-error = /storage/fioa/mysql3306/mysql-error.log log-warnings sysdate-is-now ###replication setting log-slave-updates
  • 7. sync_binlog = 0 binlog_format = row log_bin_trust_function_creators = 1 log-bin = /storage/fioa/mysql3306/binlog/mysql-bin log-slave-updates relay_log_purge = 0 relay-log = /storage/fioa/mysql3306/binlog/mysql-relay-bin relay-log-index = /storage/fioa/mysql3306/binlog/mysql-relay-bin.index relay_log_info_file = /storage/fioa/mysql3306/binlog/relay.info master-info-file = /storage/fioa/mysql3306/binlog/master.info #innodb setting innodb_data_home_dir = /storage/fioa/mysql3306/data innodb_data_file_path = ibdata0:1024M;ibdata1:1024M;ibdata2:1024M;ibdata3:1024M:autoextend innodb_log_group_home_dir = /storage/fioa/mysql3306/data innodb_log_files_in_group = 2 innodb_log_file_size = 512M innodb_flush_method = O_DIRECT innodb_buffer_pool_size = 65536M innodb_log_buffer_size = 128M innodb_flush_log_at_trx_commit = 2 innodb_thread_concurrency = 6 innodb_file_per_table = 1 transaction-isolation = READ-COMMITTED [mysqldump] quick max_allowed_packet = 128M
  • 8. [myisamchk] key_buffer_size = 256M sort_buffer_size = 256M read_buffer = 4M write_buffer = 4M [mysql] max_allowed_packet = 128M default-character-set = utf8 no_auto_rehash prompt = "R:m:s d> " pager = "more" We create 1000 DWs first to test on both InnoDB and TokuDB engine –separate test from 32 threads to 512 threads
  • 9. TpmC result on different threads InnoDB Threads 32 64 128 256 512 1024 TpmC 46376.699 48921.6 47090.801 41429.398 39957.102 33683.102 TokuDB Threads 32 64 128 256 512 1024 TpmC 41694.898 30663.7 22092 13243.9 N/A N/A TokuDB does not support foreign keys, so we add indexes for queries, even so in a heavy-load environment TokuDB still has too many system locks that result in a low TpmC. In this test, TokuDB engine got a poor performance (TpmC decreases rapidly, many connections timeout appear due to system locks in MySQL when threads up to 512).
  • 10. Look at total size of these two engines: InnoDB tpcc1000 DB: TokuDB tpcc1000 DB:
  • 11. Simple test table mytest10 size:
  • 12. Compression ratio of these two engines is nearly 2:1
  • 13. Mydbtest performance in different threads We create four tables for this test on four modes (100% insert, 50%insert+50%select, 50%insert+50%update, mix) mode threads 256 512 insert(innodb) Summary: exec=23768/s, qtps=47669/s Summary: exec=13319/s, qtps=54116/s insert(tokudb) Summary: exec=23640/s, qtps=47415/s Summary: exec=12818/s, qtps=51969/s 50insert+50sel(innodb) Summary: exec=16606/s, qtps=66803/s Summary: exec=16418/s, qtps=66461/s 50insert+50sel(tokudb) Summary: exec=15324/s, qtps=61667/s Summary: exec=15317/s, qtps=61979/s 50insert+50upd(innodb) Summary: exec=10078/s, qtps=40657/s Summary: exec=10016/s, qtps=40842/s 50insert+50upd(tokudb) Summary: exec=9890/s, qtps=39890/s Summary: exec=9843/s, qtps=40155/s mix mode(innodb) Summary: exec=7573/s, qtps=61504/s Summary: exec=7728/s, qtps=63939/s mix mode(tokudb) Summary: exec=6788/s, qtps=55262/s Summary: exec=6833/s, qtps=56753/s InnoDB still has a better performance than TokuDB when use simple queries to avoid MySQL locks.
  • 14. option user xxxxx/xxxx@10.128.6.35:3306:tpcc1000 name tpcc1000 time 10m log toku_insert100%_512_parallel__%p.log declare a int 1 200000000 b int 40000 6000000000 c CHAR 1 20 d CHAR 1 50 e char 1 4 f CHAR 1 5 g char 1 6 h char 3 15 j int 35 555555555 h char 3 15 k date -90 -60 l int 1 49999999 begin insert into mytest10 values(:a,:b,:c,:d,:e,:f,:g,:h,:j); --- /*insert into mytest values (:a,:c,:d);*/ --- /*select * from mytest where a=:a;*/ --- /*insert into mytest2 values (:a,:b,:k,:h);*/ --- /*update mytest set a=a-1 where a=:a;*/ --- /*select * from mytest2 where k=:k;*/ end
  • 15. Conclusion: Reference:https://www.percona.com/blog/2015/07/24/innodb-vs-tokudb-in-linkbench-benchmark/ Though, it worth remembering, that:  On a fast expensive storage, TokuDB provides a better compression, which allows to store more data in limited capacity  TokuDB still writes two time less than InnoDB, that mean twice longer lifetime for SSD (still expensive). Also looking at the results, I can make the conclusion that InnoDB compression is inefficient in its implementation, as it is not able to get benefits: first, from doing less reads (well, it helps to get better than uncompressed InnoDB, but not much); and, second, from a fast storage.
  • 16. In this picture, TokuDB has a better performance on IO slow storage like SATA SAS disk (Author uses M500 SSD disk for this test) For us data quality is more important than storage cost. We have already used SSD&PCIe cards for all database system. TokuDB has big advantage for its high compression ratio. I thinks it’s more suitable for log system rather than core system.