Tag Archives: mysql

Facebook Engineering – Building Timeline: Scaling up to hold your life story

The schedule for Timeline was very aggressive. When we sat down to build the system, one of our key priorities was eliminating technical risk by keeping the system as simple as possible and relying on internally-proven technologies. After a few discussions we decided to build on four of our core technologies: MySQL/InnoDB for storage and replication, Multifeed (the technology that powers News Feed) for ranking, Thrift for communications, and memcached for caching. We chose well-understood technologies so we could better predict capacity needs and rely on our existing monitoring and operational tool kits.

(Full Story: Facebook Engineering – Building Timeline: Scaling up to hold your life story)

Calculating number of Connection to MySQL | commandlinefu.com

$ mysql -u root -p -e”show processlist;”|awk ‘{print $3}’|awk -F”:” ‘{print $1}’|sort|uniq -c

(Full Story: Calculating number of Connection to MySQL | commandlinefu.com)

MySQL Leads Open Source DB Market Share

MySQL accounts for nearly half of the population to date, but MariaDB is coming on strong.

(Full Story: MySQL Leads Open Source DB Market Share)

Facebook trapped in MySQL ‘fate worse than death’

According to database pioneer Michael Stonebraker, Facebook is operating a huge, complex MySQL implementation equivalent to “a fate worse than death,” and the only way out is “bite the bullet and rewrite everything.”

(Full Story: Facebook trapped in MySQL ‘fate worse than death’)

Replicate MySQL to MongoDB with Tungsten Replicator

You can now replicate data from MySQL data to MongoDB using Tungsten Replicator, an open source data replication engine for MySQL. It’s sponsored by Continuent, makers of Tungsten Enterprise.

(Full Story: Replicate MySQL to MongoDB with Tungsten Replicator)

Tips for Tuning MySQL

  1. Innodb parameters – the 4 “Usual Suspects”
    1. innodb_buffer_pool_size
    2. innodb_log_buffer_siz
    3. einnodb_thread_concurrency
    4. innodb_flush_method
  2. Bonus #0 – flushing logs at transaction commit
  3. Bonus #1 – mysql logging
  4. Bonus #2 – linux ‘swappiness’
  5. Bonus #3 – my “Virtualization Rant”

(Full Story: Tips for Tuning MySQL)

Sample datasets for benchmarking and testing – MySQL Performance Blog

  1. The venerable sakila test database: small, fake database of movies.
  2. The employees test database: small, fake database of employees.
  3. The Wikipedia page-view statistics database: large, real website traffic data.
  4. The IMDB database: moderately large, real database of movies.
  5. The FlightStats database: flight on-time arrival data, easy to import into MySQL.
  6. The Bureau of Transportation Statistics: airline on-time data, downloadable in customizable ways.
  7. The airline on-time performance and causes of delays data from data.gov: ditto.
  8. The statistical review of world energy from British Petroleum: real data about our energy usage.
  9. The Amazon AWS Public Data Sets: a large variety of data such as the mapping of the Human Genome and the US Census data.
  10. The Weather Underground weather data: customize and download as CSV files.

(Full Story: Sample datasets for benchmarking and testing – MySQL Performance Blog)

Add NoSQL Capabilities to MySQL With the HandlerSocket Plugin – ReadWriteCloud

 DeNA developer Akira Higuchis’s HandlerSocket plugin adds NoSQL functionality to MySQL for handling tasks such as primary key lookups without caching. HandlerSocket runs as a daemon within MySQL mysqld process to simple CRUD operations on tables. 
(Link: Add NoSQL Capabilities to MySQL With the HandlerSocket Plugin – ReadWriteCloud)

Yoshinori Matsunobu's blog: Using MySQL as a NoSQL – A story for exceeding 750,000 qps on a commodity server

Most of high scale web applications use MySQL + memcached. Many of them use also NoSQL like TokyoCabinet/Tyrant. In some cases people have dropped MySQL and have shifted to NoSQL. One of the biggest reasons for such a movement is that it is said that NoSQL performs better than MySQL for simple access patterns such as primary key lookups. Most of queries from web applications are simple so this seems like a reasonable decision.
(Link: Yoshinori Matsunobu’s blog: Using MySQL as a NoSQL – A story for exceeding 750,000 qps on a commodity server)

MySQL Limitations Part 1: Single-Threaded Replication | MySQL Performance Blog

I decided to write a series of blog posts on MySQL’s unsolved severe limitations. I mean limitations that really hobble it for major, important needs — not in areas where it isn’t used, but in areas where it is used and thus is used very wastefully compared to its potential.
(Link: MySQL Limitations Part 1: Single-Threaded Replication | MySQL Performance Blog)

Follow

Get every new post delivered to your Inbox.