Search icon CANCEL
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Conferences
Free Learning
Arrow right icon
Arrow up icon
GO TO TOP
MariaDB High Performance

You're reading from   MariaDB High Performance Familiarize yourself with the MariaDB system and build high-performance applications

Arrow left icon
Product type Paperback
Published in Sep 2014
Publisher
ISBN-13 9781783981601
Length 298 pages
Edition 1st Edition
Languages
Tools
Arrow right icon
Author (1):
Arrow left icon
Pierre Mavro Pierre Mavro
Author Profile Icon Pierre Mavro
Pierre Mavro
Arrow right icon
View More author details
Toc

Table of Contents (13) Chapters Close

Preface 1. Performance Introduction FREE CHAPTER 2. Performance Analysis 3. Performance Optimizations 4. MariaDB Replication 5. WAN Slave Architectures 6. Building a Dual Master Replication 7. MariaDB Multimaster Slaves 8. Galera Cluster – Multimaster Replication 9. Spider – Sharding Your Data 10. Monitoring 11. Backups Index

Introduction to MariaDB engines

When you use MariaDB, you may not know all of the engines, what they can do, which one is more efficient, and in which situation, and so on.

Comparing all the available engines of MariaDB could take a whole book. So, we're going to cover them here, but just an introduction with some additional information to help you to choose some of them for testing.

The classic engines that can also be found on MySQL are as follows:

Engine

Description

MyISAM

This is a light and nontransactional engine. It has good performance and a small data footprint. MyISAM has good performances for small database access.

InnoDB

InnoDB gets very high performance when the database size is less or equal to the RAM size to be used as cache. It's unfortunately not as efficient as MyISAM if there is not enough RAM memory.

BLACKHOLE

The BLACKHOLE engines accept data but they are immediately dropped and a zero result is returned by the engine. This engine is generally used for complex replication filtering on very high load databases.

CSV

The CVS engine is able to read and write CSV (comma-separated-values) format files.

MEMORY

The MEMORY engine stores data in memory to perform very fast queries. Generally used for read-only cache or temporary access, it's the fastest engine but with some limitations, such as no support for blob or text columns. As a result, it's a nonpersistent engine because all data is in the RAM.

ARCHIVE

The ARCHIVE engine is a good solution for minimal disk space occupation with small footprint. It compresses rows with the zlib algorithm. It's one of the slowest solutions (no index + compression) but it's perfect to store a huge amount of data without specific performance requirements.

MERGE

The MERGE engine is a collection of identical MyISAM tables that can be used as one table.

MariaDB introduces several new engines and is still adding some more for different usages and performances:

Engine

Available version

Description

Aria

>= 5.1

This engine is a crash-safe alternative to MyISAM. It's able to be a transactional and nontransactional storage.

XtraDB

>= 5.1

The Percona XtraDB engine is a drop-in replacement for InnoDB. It's more scalable with many cores and also gets highest performances and more metrics.

PBXT

< 5.5

The PrimeBase XT (PBXT) engine is designed for a high concurrency environment. It's unfortunately not maintained anymore.

FederatedX

>= 5.1

This engine is a drop-in replacement of the FEDERATED engine. It uses libmysql to talk to an RDBMS. The idea is to use other RDBMS as data sources.

SphinxSE

>= 5.2

The Sphinx Search Engine (SphinxSE) is a built-in client to talk directly to the searchd daemon and run search queries. It doesn't store data at all.

IBMDB2I

< 5.5

This engine is able to store its data in a DB2 table running on IBM.

TokuDB

>= 5.5

This is a highly scalable engine with indexing-based query acceleration, no slave lag performance, unparalleled compression, and hot schema modification. It has better performances compared to XtraDB, when you do not have enough RAM. In that case, performances are quite similar to MyISAM.

Cassandra

>= 10

This engine allows direct access to a Cassandra cluster from MariaDB.

Connect

>= 10

This engine permits access to local or remote data when defining tables based on different data types.

Sequence

>= 10

This engine permits the creation of ascending or descending number sequences using a starting and ending value and increment.

Spider

>= 10

This is a built-in sharding features engine that supports xa transactions, partitioning, and allows table links to the table on a remote server.

HandlerSocket

>=5.3

This is a NoSQL plugin. It doesn't support SQL queries but supports CRUD (Create/Update/Delete) operations on tables. It accepts direct TCP connections.

In the future, more and more NoSQL engines will be integrated.

You have been reading a chapter from
MariaDB High Performance
Published in: Sep 2014
Publisher:
ISBN-13: 9781783981601
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at R$50/month. Cancel anytime