Thursday, October 20, 2011

Facebook should launch FBCloud and compete directly with Amazon, Google and others


Another Facebook should do post by someone outside of Facebook; but it’s a moneymaker that Facebook has not tried and probably has the best chance of succeeding at (not like deals har har - jab, jab). Some of the best DEV Ops work at Facebook. Facebook knows scale. Facebook knows system management. Facebook built the most advance data-center on the planet. This stuff is great it shows that they can do it, but what’s the motivation for the app developer to deploy in a Facebook Cloud? Simply put Latency. This is the real issue, for me, really a selfish desire to have my app move as fast as Facebook's Apps while using Facebook Data; a seamless integration if you will.  For Facebook, it’s good because they can help me make my users happier while making tons of Cash. If my app is in the same data-center as the center of data, my app can move faster thus giving my users a better experience.

Here is an example. When doing a graph call for Facebook friends, the backend systems can do it in ms time yet the JSON reaches the caller in the 100ms time frame over the WAN from my servers in EC2-west1c to Facebook Servers in Oregon. If I'm in the data-center that holds the data (Oregon) my app speeds up 10 times, since that 100ms R(t) turns to 5-10ms.

Additionally Facebook houses some of the most advance tech that lots of people around the web use. Such as MEMCACHE. Facebook could manage that for you. In fact they have PETA BYTES of memory for their own app with automatic key management between DCs (wow). Offer Facebook Hosted MySQL with Flash Cache for High density IOPS. Each Facebook DB server has Solid State Disks, use that to buffer IOPS for subscribed developers to FBCloud. With their tools to automatically migrate data to another server, building new Instances would be a snap without having to use a SAN. Although you could use SSDs to buffer SAN writes/reads for easier management with great R(t). Facebook stats on HBASE, Facebook Varnish, a fast CDN-everything that they do as commercial product. I've seen their tools, its better then enterprise quality and nearly all of them have an API. Facebook Culture is platform focused. I assume if you don't build an API for your tool your mocked.

How would Facebook make money? Charge on CPU resources just like Amazon. Charge on IOPS, charge on managed Memcache size, charge on Data size. Charge for BCP. With this adding to Facebook's platform, Facebook could make money on the Front End from Ads, on currency and finally on the API indirectly while giving the End User an entire platform guaranteed to be fast and redundant in multiple data-centers.

I have an entire vision that would make a ton of cash, but really would make my users and me as a developer happier.

PS This post went out to fast, with grammar and spelling mistakes. Should be fixed now, my apologies.

No comments: