Posted on 07/07/2011 8:55:49 PM PDT by TenthAmendmentChampion
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.
Not that its necessarily Facebooks fault, though. Stonebraker says the social networks predicament is all too common among web startups that start small and grow to epic proportions.
During an interview this week, Stonebraker explained to me that Facebook has split its MySQL database into 4,000 shards in order to handle the sites massive data volume, and is running 9,000 instances of memcached in order to keep up with the number of transactions the database must serve. Im checking with Facebook to verify the accuracy of those numbers, but Facebooks history with MySQL is no mystery.
The oft-quoted statistic from 2008 is that the site had 1,800 servers dedicated to MySQL and 805 servers dedicated to memcached, although multiple MySQL shards and memcached instances can run on a single server. Facebook even maintains a MySQL at Facebook page dedicated to updating readers on the progress of its extensive work to make the database scale along with the site...
(Excerpt) Read more at gigaom.com ...
Oracle can scale like you wouldn’t believe.
Oracle would be nothing without the original DB designers from Digital Equipment Corporation.
Oracle the best?
Yeah, the best salesmen!
What???!! Guess the little boy-geniuses were not so smart after all?
Ack! That takes me back to newsgroup flamewars back before anything but dialup existed, and the web was just a spark waiting to become an RFC. FTP, gopher, talk... The slow old days.
/johnny
Not new to people who have been around SQL and database design.
What people forget about SQL relational databases is that they were a replacement for how data was organized in the 70’s on mainframes: indexed files.
Because most kiddies today have never seen an ISAM or VSAM file, and wouldn’t know one if it it were to leap up and bit them in their pampered buttocks, they have no perspective on what SQL relational databases were designed to do.
The brutal truth is pretty low-tech for most of today’s kids: SQL and RDBMS were to fill an organized file with data in a way that enabled the programmer generating fast reports with queries for keyed and non-keyed fields - in other words, doing the grunt work of the business world that had outgrown such platforms as the System 34 and 36 and languages like RPG-II and RPG-III.
That’s it. As SQL progressed, transactions were added, as were some pretty powerful constructs for joins, etc. Pretty cool stuff if you’re crunching reams of nice tabular data. Let’s say you want to write up a database of auto registrations, medical records etc - RDBMS do that pretty well.
But applications like social networks..... they don’t have the nice, orderly data in columns, marching down the greenbar fanfold paper. There’s all these networks, circularities, odd bits of data with bizarre relationships that don’t fit the relational database models - not even remotely. Oracle won’t solve this problem; it will merely move the wall out a tad before they hit it.
Kids need to crack open some books, read a bunch of code and learn some things from people who have been there, done that. But the current dot-bomb VC/startup system doesn’t think about rewarding people who do their homework and get things right. It rewards people who are the first with the crappiest. These problems aren’t new. The reason why outfits like Facebook use MySQL or any SQL-based relational DB is because they don’t know any better, they haven’t got the brains to think through the problem they have and are trying to solve. They just grab some “free” software off a FTP site and use a big enough hammer until their square peg gets broached into the round hole.
And why don’t they know any better? Because these snot-nosed twerps wasted their years in colleges fooling around with rubbish like C++, arguably the worst language to come along since.... well, since forever. I can’t think of a worse programming language, actually. Add to this that schools like Harvard waste undergrad time on such nonsense as “intelligent machines” and “privacy and technology,” both of which are simply graduate level subject areas. As far as I can see, things like databases, database schema, grunt-work business data processing... are all too mundane to receive any treatment in the CS department at Harvard, Zuckerberg’s school.
So Facebook has a DB problem. Eh, OK. Gives me another reason to drop my account. Zuckerberg’s perverted security models were my first biggest reason.
The problem with SQL, whatever the server, is that the implementations, i.e. the schemas of the tables are rarely relational, due to (1) the skills of the Indian programmers, (2) the limitations of the relational theory.
Been there, done that. Irrelational databases.
Informix, wow, didn’t even know it still existed. I did some Informix projects back in the mid 80’s. Worked great.
Bingo.
>>And it’s ess-que-ell not sequel.<<
I was a DB2 programmer back in the day and EVERYONE called it ess-que-ell. Then I was at a job interview at Microsoft about 6 years ago and one of the guys that interviewed me used both pronunciations, but for specific things. When we talked of mainframes and DB2, he pronounced it the old way. When dealing with Microsoft software, he called it Sequel. Who owns Microsoft ess-que-ell server? :-)
All that for ten people? Wow.
I worked at a pharmacy benefits company with a comprehensive system that managed cardholders, drugs, plans, prior authorizations, etc. I wrote the data dictionary for the system which consisted of about 200-250 tables for various purposes. Some of the logic was kludgey, some of it was pretty ingenious. It was created in Oracle and scalability never seemed to be a problem. I would guess they managed about a million cardholders all told.
The solution is IBM’s DB2...
This is actually a very interesting thread.
I know a little SQL, learned it on MySQL and Windows SQL 2000. Hell, I can barely pass a basic SQL course at the local Community College. But I passed.
Rock on you guys, you are my heroes. Fags ;) Y’all are so far over my head I bet you have nose bleeds.
+1, you win the interwebs.
Oops, sorry my reply was meant for Kingu’s post number 10.
Disclaimer: Opinions posted on Free Republic are those of the individual posters and do not necessarily represent the opinion of Free Republic or its management. All materials posted herein are protected by copyright law and the exemption for fair use of copyrighted works.