Jun 19, 2013 |
MySQL
Tokutek is known for its full-featured fast-indexing technology. MongoDB is known for its great document-based data model and ease of use. TokuMX, version 1.0, combines the best of both worlds. So what, exactly, is TokuMX? The simplest (but incomplete) answer is that TokuMX is MongoDB with all its storage code replaced by Tokutek’s Fractal Tree […]
Jun 11, 2013 |
MySQL
As promised, the Enterprise Edition of TokuDB®, Version 7, is ready. TokuDB Version 7, Enterprise Edition, introduces Hot Backup. You can now back up all your TokuDB tables directly from MySQL or MariaDB, with no down time. In addition, TokuDB Enterprise Edition comes with a support package. TokuDB v7 Enterprise Edition maintains all our established […]
Apr 22, 2013 |
MySQL
Every few months, I get the fun job of announcing what’s new in TokuDB®, but this time is special. With Version 7, TokuDB for MySQL and MariaDB is going open source. The free Community Edition is fully functional and fully performant. It has all the compression you’ve come to expect from TokuDB. It has hot […]
Feb 20, 2013 |
MySQL
I’ve said it before, and, as is the nature of these things, I’ll almost certainly say it again: your database performance is only as good as your indexes. That’s the grand thesis, so what does that mean? In any DB system — SQL, NoSQL, NewSQL, PostSQL, … — data gets ingested and organized. And the […]
Jan 08, 2013 |
MySQL
We are excited to announce TokuDB® v6.6, the latest version of Tokutek’s flagship storage engine for MySQL and MariaDB. This version offers three types of performance improvements: in-memory, multi-client and fast updates. Although TokuDB is optimized for large tables, which are larger than memory, many workloads consist of a mix of large and small tables. […]
Dec 06, 2012 |
MySQL
We get a lot of questions about how Fractal Tree indexes work. It’s a write-optimized index with fast queries, but which write-optimized indexing structure is it? In this ~15 minute video (which uses these slides), I give a quick overview of how they work and what they are good for.
Sep 25, 2012 |
MySQL
We are excited to announce TokuDB® v6.5, the latest version of Tokutek’s flagship storage engine for MySQL and MariaDB. This version offers optimization for Flash as well as more hot schema change operations for improved agility. We’ll be posting more details about the new features and performance, so here’s an overview of what’s in store. […]
Jun 18, 2012 |
MySQL
Next week, a couple of us at Tokutek will be heading to Buenos Aires for the MySQL / MariaDB Conference & Expo LA. Gerry Narvaja actually grew up in Buenos Aires. My own family is Argentinian. I spent several years there as a child, and my childhood home in South Carolina was Argentinian in spirit: absolutely […]
Jun 06, 2012 |
MySQL
Executive Summary Fast indexing requires the leaves of a Fractal Tree® Index to be big. But some queries require the leaves to be small in order to get any reasonable performance. Basements nodes are our way to achieve these conflicting goals, and here I’ll explain how. Big Leaves On many occasions, we at Tokutek have […]
Jun 04, 2012 |
MySQL
The signal-to-noise ratio in the NoSQL world has made it hard to figure out what’s going on, or even who has something new. For all the talk of performance in the NoSQL world, much of the most exciting part of what’s new is really not about performance at all. Take for example, MongoDB, which has […]
Apr 30, 2012 |
MySQL
TokuDB v6.0 is full of great improvements, like getting rid of slave lag, better compression, improved checkpointing, and support for XA. I’m happy to announce that TokuDB v6.0 is now generally available and can be downloaded here. Sysbench Performance I wanted to take this time to talk about one more under-the-hood goody we’ve added to […]
Apr 12, 2012 |
MySQL
Checkpointing — which involves periodically writing out dirty pages from memory — is central to the design of crash recovery for both TokuDB and InnoDB. A key issue in designing a checkpointing system is how often to checkpoint, and TokuDB takes a very different approach from InnoDB. How often and how much InnoDB checkpoints is […]
Apr 11, 2012 |
MySQL
A key feature of our new TokuDB v6.0 release, which I have been blogging about this week, is compression. Compression is always on in TokuDB, and the compression we’ve achieved in the past has been quite good. See a previous post on the 18x compression achieved by TokuDB v5.0 on one benchmark. In our latest […]
Apr 10, 2012 |
MySQL
Master/slave replication is an important tool that gets used in many ways: distributing read loads among many slaves for performance, using a slave for backups so the master can handle live load, geographically distributed disaster recovery, etc. The Achilles’ Heal of slave performance is that slave workloads are single-threaded. The master can have many clients […]
Apr 09, 2012 |
MySQL
We are excited to announce TokuDB® v6.0, the latest version of Tokutek’s flagship storage engine for MySQL and MariaDB. This version offers feature and performance enhancements over previous releases, support for XA (two-phase transactional commits), better compression, and reduced performance variability associated with checkpointing. This release also brings TokuDB support up to date on MySQL […]
Jan 19, 2012 |
MySQL
TokuDB® v5.2, the latest version of Tokutek’s flagship storage engine for MySQL and MariaDB, is now available. This version offers performance enhancements over previous releases, especially for multi-client scale up and point queries, and extends the cases where ALTER TABLE is non-blocking, in particular adding Hot Column Rename. TokuDB v5.2 maintains all our established advantages: […]
Jun 29, 2011 |
MySQL
Indexes can reduce the amount of data your query touches by orders of magnitude. This results in a proportional query speedup. So what happens when you define a nice set of indexes and you don’t get the performance pop you were expecting? Consider the following example:
|
mysql> show create table t; | t | CREATE TABLE `t` ( `a` varchar(255) DEFAULT NULL, `b` bigint(20) NOT NULL DEFAULT '0', `c` bigint(20) NOT NULL DEFAULT '0', `d` bigint(20) DEFAULT NULL, `e` char(255) DEFAULT NULL, PRIMARY KEY (`b`,`c`), KEY `a` (`a`,`b`,`d`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1 |
Now we’d like to perform the following query: […]
May 27, 2011 |
MySQL
Yesterday, Percona held Percona Live NYC, which they describe as an “intensive one-day MySQL summit.” They meant it. It was like drinking from a firehose. There was too much for me to give a complete report, so I’d like to highlight two sessions that stuck out for me. Why SQL Wins Sergei Tsarev (Clustrix) gave […]
May 24, 2011 |
MySQL
OldSQL DBs based on B-trees have some well-known problems and workarounds. TokuDB is a NewSQL storage engines based on Fractal Tree indexing, so the natural question is how InnoDB practice translates into TokuDB. This post gives a quick overview. Enjoy! FAQ Q: How do I tune TokuDB? A: You don’t! TokuDB has almost no parameters […]
May 12, 2011 |
MySQL
I’ve recently been blogging about how partitioning is a poor man’s answer to covering indexes. I got the following comment from Jaimie Sirovich: “There are many environments where you could end up creating N! indices to cover queries for queries against lots of dimensions.” [Just a note: this is only one of several points he […]