Showing entries 31 to 40 of 43
« 10 Newer Entries | 3 Older Entries »
Displaying posts with tag: compression (reset)
Are You Forcing MySQL to Do Twice as Many JOINs as Necessary?
.
Baron Schwartz
This guest post is from our friends at Percona. They’re hosting Percona Live London from October 24-25, 2011. Percona Live is a two day summit with 100% technical sessions led by some of the most established speakers in the MySQL field.

In the London area and interested in attending? We are giving away two free passes in the next few days. Watch our @tokutek twitter feed for a chance to win.

Did you know that the following query actually performs a JOIN? You can’t see it, but it’s there:

SELECT the_day, COUNT(*), SUM(clicks), SUM(cost)
FROM ad_clicks_by_day
WHERE the_day >= …
[Read more]
Compression Benchmarking: Size vs. Speed (I want both)

I’m creating a library of benchmarks and test suites that will run as part of a Continuous Integration (CI) process here at Tokutek. My goal is to regularly measure several aspects of our storage engine over time: performance, correctness, memory/CPU/disk utilization, etc. I’ll also be running tests against InnoDB and other databases for comparative analysis. I plan on posting a series of blog entries as my CI framework evolves, for now I have the results of my first benchmark.

Compression is an always-on feature of TokuDB. There are no server/session variables to enable compression or change the compression level (one goal of TokuDB is to have as few tuning parameters as possible). My compression benchmark uses iiBench to measure the insert performance and compression achieved by …

[Read more]
Failure to compress

My team has been evaluating the performance of InnoDB compression. One of the workloads is to reload all tables of the database using concurrent connections. This is done with production data and via the insert benchmark. We also modified InnoDB to use qpress/quicklz as an alternative to zlib compression.

 

As I wrote this I realize that this is a great advertisement for a self-tuning DBMS. Alas, MySQL and InnoDB are not self-tuning when you have extreme performance requirements. Eventually they will move in that direction and for many users today they don't require this amount of tuning. Some of the parameters listed below are only in patches for MySQL from Facebook and others. Official MySQL tends to be better about making InnoDB self-tuning.

 

The …

[Read more]
When does InnoDB compress and decompress pages?

There are two sections for rows in the page format for InnoDB compressed tables. The compressed section has one or more rows and must be decompressed to access individual rows. The modification log has uncompressed rows and rows can be accessed without decompressing. The modification log is used to avoid decompressing and then possibly recompressing the compressed section on every row change. The buffer pool also has separate uncompressed copies of some pages so that every row read does not require a page decompression.

 

I want to understand when a page must be decompressed or recompressed. This is definitely an incomplete list.

  • A page is decompressed when a row is read and the uncompressed version of the page is not in the buffer pool.
  • I think a row can be deleted from the compressed section …
[Read more]
How does InnoDB manage the LRU for compressed pages?

InnoDB uses at least two lists to manage pages in the buffer pool. The LRU is used for pages from compressed and uncompressed tables. If a table is uncompressed then it only uses the LRU. If a table is compressed then compressed pages are on the LRU and the unzip_LRU is used for pages that have an uncompressed and compressed version in the buffer pool. When a server is IO bound then InnoDB allows the unzip_LRU to be 10% the size of the LRU. SHOW INNODB STATUS displays the length of the LRU and unzip_LRU (grep it for "unzip_LRU"). Note that I use the word page in some places when frame might be appropriate.

 

The …

[Read more]
A few notes on InnoDB PRIMARY KEY

InnoDB uses an index-organized data storage technique, wherein the primary key acts as the clustered index and this clustered index holds the data. Its for this reason that understanding the basics of InnoDB primary key is very important, and hence the need for these notes.

MySQL 5.5: Improved manageability, efficiency for InnoDB

In my continuing blog series on MySQL 5.5 features (see performance/scale and replication entries) today I covering some of the new InnoDB manageability and efficiency options.  5.5, with the newly re-architected InnoDB, provides better user control over internal InnoDB settings so things like performance, scale and storage can easily be monitored, tuned and optimized for specific use cases and application loads.

Along these lines, some of the key advances and features available in MySQL 5.5 and InnoDB are:
 

  • Faster Index Creation - MySQL 5.5 can now add or drop indexes without copying the underlying data of the entire target table.  This improves the …
[Read more]
MySQL 5.5: Improved manageability, efficiency for InnoDB

In my continuing blog series on MySQL 5.5 features (see performance/scale and replication entries) today I covering some of the new InnoDB manageability and efficiency options.  5.5, with the newly re-architected InnoDB, provides better user control over internal InnoDB settings so things like performance, scale and storage can easily be monitored, tuned and optimized for specific use cases and application loads.

Along these lines, some of the key advances and features available in MySQL 5.5 and InnoDB are:
 

  • Faster Index Creation - MySQL 5.5 can now add or drop indexes without copying the underlying data of the entire target table.  This improves the efficiency and …
[Read more]
ZFS and Solaris: storage optimization for the cloud

Cloud computing has been one of the most discussed topic over the year, and the discussion is not over because what is really being discussed is the way we will access computing an storage resources in the future. Even famous French intellectuals are giving their opinion and making predictions. Future will decide on predictions's accuracy.

What is usually less discussed is the technology behind cloud-computing, though this is no secret that virtualization is playing a key role. Cloud data-centers will be loaded with virtual machines each of these machines potentially requiring in disk-space what a complete operating system (OS) requires, which can go up to many gigabytes. How much disk-space does a virtual machine image (vdi) really consum? The only good answer is: too much. Too much because the OS is part of the infrastructure as …

[Read more]
ZFS and Solaris: storage optimization for the cloud

Cloud computing has been one of the most discussed topic over the year, and the discussion is not over because what is really being discussed is the way we will access computing an storage resources in the future. Even famous French intellectuals are giving their opinion and making predictions. Future will decide on predictions's accuracy.

What is usually less discussed is the technology behind cloud-computing, though this is no secret that virtualization is playing a key role. Cloud data-centers will be loaded with virtual machines each of these machines potentially requiring in disk-space what a complete operating system (OS) requires, which can go up to many gigabytes. How much disk-space does a virtual machine image (vdi) really consum? The only good answer is: too much. Too much because the OS is part of the infrastructure as …

[Read more]
Showing entries 31 to 40 of 43
« 10 Newer Entries | 3 Older Entries »