Feeds

App Engine: Google's deepest secrets as a service

The software scales. But will the Google rulebook?

Intelligent flash storage arrays

Lazy developers not allowed

The restrictions that App Engine places on third-party coders are much like those that Google places on its own developers. Or so it seems. Recently, when we sat down with Google's Sean Lynch (who has since left the company) and senior App Engine product manager Gregory D'alesandre, they fielded most questions about the ins and outs of App Engine, but they drew the line at discussing the particulars of the Google infrastructure. Like Amazon – its cloud rival – Google is typically reticent to discuss its internal operations.

But by all accounts, the App Engine rulebook mimics Google's internal rulebook. "[Google App Engine] has the same limitations that even Google engineers complain about around their internal development and deployment," says Jason Hoffman, chief technology officer of Joyent, the San Francisco-based startup that offers both infrastructure-cloud and platform-cloud services. But these limits are in place for good reason.

Two years ago, at a conference in San Francisco, Google's Vijay Gill – who oversaw the company's network and data-center infrastructure at the time – briefly described the tight restrictions placed on Google's internal app developers. "Any idiot can build atoms together and then create this vast infrastructure. The question is: how do you actually get the applications to use the infrastructure? How do you distribute it? How do you optimize it? That's the hard part. To do that, you require an insane amount of force of will," Gill said.

"We have a set of primitives, if you would, that takes those collections of atoms - those data centers, those networks - that we've built, and then they abstract that entire infrastructure out as a set of services - some of the public ones are GFS obviously, BigTable, MapReduce." GFS is the company's distributed file system, BigTable its distributed database, MapReduce its distributed number-crunching platform.

Vijay Gill

Vijay Gill

That force of will is required to ensure that developers stick to the rulebook. "People are lazy. They say 'I don't want to design my applications into this confined space.' And it is a confined space. So you need a large force of will to get people to do that," Gill said.

In building for these "confined spaces", Google ensures that applications can readily scale, but it also allows application developers to operate without worrying about the particulars of the underlying infrastructure. "If we make a minor change to, say, disk storage to get a three per cent gain, and we roll that out to the GFS library, suddenly the entire base of applications stored on GFS sees that gain," Gill said.

App Engine brings this setup to the masses. "App Engine came out of the philosophy of internal development at Google. You don't want to have to worry about scale once scale hits you, because then it's too late. At Google, it's something we always plan for. You don't rewrite your application once it starts to scale. You write it so it can scale up front," D'alesandre says.

"But also – and this is something else that came from Google internally – people hate carrying pagers. No one likes to be on call for things. You try to build on services that you know someone else it taking care for you. That's where App Engine came from. All of the people building on top of it? We're essentially carrying the pagers for them."

But, yes, if you want Google to carry your pager, you too must write for those confined spaces.

Choosing a cloud hosting partner with confidence

Next page: Er, where's MySQL?

More from The Register

next story
NSA SOURCE CODE LEAK: Information slurp tools to appear online
Now you can run your own intelligence agency
Azure TITSUP caused by INFINITE LOOP
Fat fingered geo-block kept Aussies in the dark
Yahoo! blames! MONSTER! email! OUTAGE! on! CUT! CABLE! bungle!
Weekend woe for BT as telco struggles to restore service
Cloud unicorns are extinct so DiData cloud mess was YOUR fault
Applications need to be built to handle TITSUP incidents
Stop the IoT revolution! We need to figure out packet sizes first
Researchers test 802.15.4 and find we know nuh-think! about large scale sensor network ops
Turnbull should spare us all airline-magazine-grade cloud hype
Box-hugger is not a dirty word, Minister. Box-huggers make the cloud WORK
SanDisk vows: We'll have a 16TB SSD WHOPPER by 2016
Flash WORM has a serious use for archived photos and videos
Astro-boffins start opening universe simulation data
Got a supercomputer? Want to simulate a universe? Here you go
Do you spend ages wasting time because of a bulging rack?
No more cloud-latency tea breaks for you, users! Get a load of THIS
prev story

Whitepapers

10 ways wire data helps conquer IT complexity
IT teams can automatically detect problems across the IT environment, spot data theft, select unique pieces of transaction payloads to send to a data source, and more.
A strategic approach to identity relationship management
ForgeRock commissioned Forrester to evaluate companies’ IAM practices and requirements when it comes to customer-facing scenarios versus employee-facing ones.
How to determine if cloud backup is right for your servers
Two key factors, technical feasibility and TCO economics, that backup and IT operations managers should consider when assessing cloud backup.
Reg Reader Research: SaaS based Email and Office Productivity Tools
Read this Reg reader report which provides advice and guidance for SMBs towards the use of SaaS based email and Office productivity tools.
Choosing a cloud hosting partner with confidence
Download Choosing a Cloud Hosting Provider with Confidence to learn more about cloud computing - the new opportunities and new security challenges.