Showing entries 601 to 610 of 691
« 10 Newer Entries | 10 Older Entries »
Displaying posts with tag: Percona Software (reset)
L2 cache for MySQL

The idea to use SSD/Flash as a cache is not new, and there are different solutions for this, both OpenSource like L2ARC for ZFS and Flashcache from Facebook, and proprietary, like directCache from Fusion-io.
They all however have some limitations, that’s why I am considering to have L2 cache on a database level, as an extension to InnoDB buffer pool.
Fortunately, there is a project in progress Flash_Cache_For_InnoDB by David which implements this.
David helped us to port his work to the latest Percona Server and you can get it from our launchpad Percona Server 5.5.28

[Read more]
Announcing Percona XtraBackup 2.0.3

Percona is glad to announce the release of Percona XtraBackup 2.0.3 on October 1st, 2012. Downloads are available from our download site here and Percona Software Repositories.

This release is the current GA (Generally Available) stable release in the 2.0 series.

New Features:

  • innobackupex now supports new –move-back option that can be used instead of –copy-back in case there isn’t enough free disk space on the server to copy files. As this option removes backup files, it must be used with caution.

Bugs Fixed:

  • Symlink for innobackupex-1.5.1 binary has been broken in the previous version of XtraBackup. Bug …
[Read more]
Percona Toolkit version 2.1.4 released

The Percona Toolkit team is happy to announce the release of Percona Toolkit version 2.1.4. This is the fifth stable release in the 2.1 series, and primarily a bug-fix release; We suggest that users upgrade to the latest version of the tools.

The complete list of changes is on the Launchpad milestone for 2.1.4, but here are some highlights the release:

  • pt-table-checksum now works with Percona XtraDB Cluster
  • The “Version Check” feature, explained at length here.
  • –defaults-file is now used when connecting to discovered slaves in pt-table-checksum

All in all, a solid bug-fix release, with the addition of some new features too.

Remember that if you need …

[Read more]
Timezone and pt-table-checksum

I recently worked through an issue with a client trying to detect data drift across some servers that were located in different timezones.  Unfortunately, several of the tables had timestamp fields and were set to a default value of CURRENT_TIMESTAMP.  From the manual, here is how MySQL handles timezone locality with timestamp fields:

Values for TIMESTAMP columns are converted from the current time zone to UTC for storage, and from UTC to the current time zone for retrieval.

This can result in every row being deemed out of sync when each server is using in it’s own timezone.  Fortunately, there is a workaround for this as a result of how pt-table-checksum/pt-table-sync calculate their …

[Read more]
Percona Server tree with support of Fusion-io atomic writes and DirectFS

Not so long ago Fusion-io announced an SDK which provides direct API access to Fusion ioMemory(tm) in addition to providing a native filesystem (directFS) with a goal to avoid overhead from kernel and regular Linux filesystems: ext4 and xfs. This requires a support from application, it should use special calls for IO. With help from Fusion-io, we provide source code of Percona Server which uses direct API access. The main idea that with this functionality you can disable “innodb-doublewrite”, retain ACID compliance by using atomic writes, and in IO intensive workloads gain an additional 30-50% in throughput when compared to workloads on the same ioMemory™ device using an unmodified Percona Server. Further benchmarking results on latency variability reduction expected soon.
Percona Server 5.5.27 with Fusion-io atomic writes is available from Launchpad repository: …

[Read more]
A (prototype) lower impact slow query log

Yesterday, over at my personal blog, I blogged about the impact of the MySQL slow query log. Since we’re working on Percona Server 5.6, I did wonder if this was a good opportunity to re-examine how we could provide slow query log type functionality to our users.

The slow query log code inside the MySQL server does several things that aren’t good for concurrency on modern systems. For starters, it takes a mutex while both doing formatting of what to write and while doing the write(2) system call itself. This is, in fact, entirely unneccesary.

From the man page for the write system call:

If the file was open(2)ed with O_APPEND, the file offset is first set to the end of the file before writing. The adjustment of the file offset and the write operation are performed as an atomic step.

So we can …

[Read more]
Introducing the “Version Check” Feature in Percona Toolkit

Recently there has been a storm of bugs and problems in all variants of MySQL including MySQL, Percona Server, and MariaDB. To list a few:

[Read more]
Intel SSD 910 in tpcc-mysql benchmark

I continue my benchmarks of Intel SSD 910, the raw IO results are available in my previous experiment. Now I want to test this card under MySQL workload to see if the card is suitable to use with MySQL.

Benchmark date: Sep-2012 Benchmark goal: Test Intel SSD 910 under tpcc-mysql workload and compare with baseline Fusion-io ioDrive card Hardware specification
  • Server: Dell PowerEdge R710
  • CPU: 2x Intel(R) Xeon(R) CPU E5-2660 0 @ 2.20GHz
  • Memory: 192GB
  • Storage: Fusion-io ioDrive 640GB, Intel SSD 910 (software RAID over 2x200GB devices)
  • Filesystem: ext4
Software
  • OS: Ubuntu 12.04.1
  • MySQL Version: Percona Server 5.5.27-28.1
Benchmark specification
  • Benchmark name: tpcc-mysql
  • Scale factor: 2500W (~250GB of data)
  • Benchmark …
[Read more]
Find unused indexes

I wrote one week ago about how to find duplicate indexes. This time we’ll learn how to find unused indexes to continue improving our schema and the overall performance. There are different possibilites and we’ll explore the two most common here. User Statistics from Percona Server and pt-index-usage.

User Statistics

User Statistics is an improvement on Percona Server that adds some tables to Information Schema with useful information to understand the server activity and identify the source of the load. …

[Read more]
Find and remove duplicate indexes

Having duplicate keys in our schemas can hurt the performance of our database:

  • They make the optimizer phase slower because MySQL needs to examine more query plans.
  • The storage engine needs to maintain, calculate and update more index statistics
  • DML and even read queries can be slower because MySQL needs update fetch more data to Buffer Pool for the same load
  • Our data needs more disk space so our backups will be bigger and slower

In this post I’m going to explain the different types of duplicate indexes and how to find and remove them.


Duplicate keys on the same column

This is the easiest one. You can create multiple indexes on the same column and MySQL won’t complain. Let’s see this example:

mysql> alter table t add index(name);
mysql> alter table t add index(name);

[Read more]
Showing entries 601 to 610 of 691
« 10 Newer Entries | 10 Older Entries »