
How We Partitioned Airbnb’s Main Database in Two Weeks - juanrossi
http://nerds.airbnb.com/how-we-partitioned-airbnbs-main-db/
======
hbhakhra
This really shows the value of a few good engineers. I can easily see this
taking a team of engineers much longer, but in this case a few engineers
figured out the least painful solution and implemented it with minimal down
time.

------
caffeineninja
RDS wouldn't be my first choice to run in a production environment like
AirBNB...

~~~
toomuchtodo
RDS is just fine for production environments. Any tuning you need done can be
done with parameters; your only limit might be that imposed on RDS for
connections (based on instance size).

~~~
stock_toaster
In my experience (a few years ago though, to be honest), RDS was absolutely
terrible for high performance and/or latency sensitive write workloads. Due to
how (again, at the time) replication was handled -- amazon apparently did (at
the time? still does?) synchronous writes to each AZ, and only completes the
transaction when both return. When one AZ/RDS-instance was slow or dropping
packets (seemed oddly frequent at the time for cross-AZ traffic -- again about
3 years ago though), our production stack would catch fire and come to a
crashing halt. Never again!

~~~
schleyfox
Hi, one of the Airbnb engineers involved in this op here. Yeah... that does
sound a lot like 3 years ago. The situation has gotten a lot better,
especially with 5.6 and PIOPS. These days, things work pretty smoothly (even
as the volume of traffic and data has scaled massively).

~~~
stock_toaster
Ah. That is great to hear! It was a special kind of hell having to deal with
it with such regularity, at any and all hours (4am?! of course!). ;_;

------
gaius
Those who forget Oracle are doomed to reinvent it.

~~~
rcaught
Those who forget open source databases are doomed to pay per-processor
licensing fees.

