MariaDB-5.3.4 性能测试_MySQL
MariaDB
bitsCN.com上周末来自 Percona 的 Vadim 发布了一份 MariaDB 5.3.4 benchmark results. 而我做为 Monty Program 的新成员,我想补充一些我自己的测试结果。
在 Vadim 测试结果中有个评论说:拿 MariaDB 5.3.4 和 MySQL 5.5 来比较是否公平,应该是跟 MySQL 5.1 进行比较,因为 MariaDB 5.3.4 是基于 MySQL 5.1 的。我想说这问题并不大,因为 MySQL 5.5 和 MySQL 5.1 在 Sysbench 的 OLTP 性能测试结果相差不大。
因此我创建了一个跟 Vadim 类似的 Sysbench 测试环境,包括如下几个测试版本:
MariaDB-5.3.4 – Monty Program 的最新版本,包括 XtraDB 和 InnoDB 插件
Percona-Server 5.1.61 因为它也是和 MariaDB 5.3 一样基于相同的 XtraDB 版本
Percona-Server 5.5.20 – 最新的 Percona Server 版本
MySQL-5.5.20 – 最新的 MySQL 版本
下图是测试结果:
可看到 MariaDB-5.3.4 在性能上比 MySQL 5.5.20 差很多,而 Percona Server 5.1 和 5.5 之间相差也不大,但如果 MariaDB 5.3.4 使用 InnoDB 存储引擎而不是默认的 XtraDB 引擎的话,MariaDB 的性能将超过 Percona Server 5.5 很多。
因此在以后的 MariaDB 版本中我们将会一直提供 InnoDB 存储引擎支持,我们也正在研究为什么 MySQL 5.1 性能比 MariaDB 5.3 还要好,甚至它们使用的是相同的存储引擎。
另外 Sysbench 是一个综合的基准测试工具,真实环境下的负载受多方面的各种因素影响。另外此次测试使用的是固态硬盘,其达到饱和度比普通磁盘要早得多,这个可能也影响了一些测试结果。
如果我能下一个结论,那么我想说,如果你需要最高并发级别的那么请选择 MySQL 5.5 或者是等待 MariaDB 5.5.
如果你的应用包含非常复杂的查询和子查询,那你将会受益于 MariaDB 的 新的优化特性. 另外如果你需要数据库复制功能,那么 MariaDB 5.3 的 group-commit 将比任何一个版本的 MySQL 更强。
测试环境:
- sysbench OLTP multi-table.
- 16 tables with 250K rows each.
- 20G InnoDB buffer pool.
- Data and logs on SSD.
- Dual socket hexacore Xeon with HT enabled (24 logical cores).
你可以下载本次测试的脚本、配置以及测试结果:sysbench-XL-2012-02-21.tar.gz
bitsCN.com
Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics











The main role of MySQL in web applications is to store and manage data. 1.MySQL efficiently processes user information, product catalogs, transaction records and other data. 2. Through SQL query, developers can extract information from the database to generate dynamic content. 3.MySQL works based on the client-server model to ensure acceptable query speed.

InnoDB uses redologs and undologs to ensure data consistency and reliability. 1.redologs record data page modification to ensure crash recovery and transaction persistence. 2.undologs records the original data value and supports transaction rollback and MVCC.

MySQL is an open source relational database management system, mainly used to store and retrieve data quickly and reliably. Its working principle includes client requests, query resolution, execution of queries and return results. Examples of usage include creating tables, inserting and querying data, and advanced features such as JOIN operations. Common errors involve SQL syntax, data types, and permissions, and optimization suggestions include the use of indexes, optimized queries, and partitioning of tables.

MySQL's position in databases and programming is very important. It is an open source relational database management system that is widely used in various application scenarios. 1) MySQL provides efficient data storage, organization and retrieval functions, supporting Web, mobile and enterprise-level systems. 2) It uses a client-server architecture, supports multiple storage engines and index optimization. 3) Basic usages include creating tables and inserting data, and advanced usages involve multi-table JOINs and complex queries. 4) Frequently asked questions such as SQL syntax errors and performance issues can be debugged through the EXPLAIN command and slow query log. 5) Performance optimization methods include rational use of indexes, optimized query and use of caches. Best practices include using transactions and PreparedStatemen

MySQL is chosen for its performance, reliability, ease of use, and community support. 1.MySQL provides efficient data storage and retrieval functions, supporting multiple data types and advanced query operations. 2. Adopt client-server architecture and multiple storage engines to support transaction and query optimization. 3. Easy to use, supports a variety of operating systems and programming languages. 4. Have strong community support and provide rich resources and solutions.

Compared with other programming languages, MySQL is mainly used to store and manage data, while other languages such as Python, Java, and C are used for logical processing and application development. MySQL is known for its high performance, scalability and cross-platform support, suitable for data management needs, while other languages have advantages in their respective fields such as data analytics, enterprise applications, and system programming.

MySQL is suitable for small and large enterprises. 1) Small businesses can use MySQL for basic data management, such as storing customer information. 2) Large enterprises can use MySQL to process massive data and complex business logic to optimize query performance and transaction processing.

MySQL index cardinality has a significant impact on query performance: 1. High cardinality index can more effectively narrow the data range and improve query efficiency; 2. Low cardinality index may lead to full table scanning and reduce query performance; 3. In joint index, high cardinality sequences should be placed in front to optimize query.
