top | item 8596900

Aurora - New MySQL-Compatible Database Engine

314 points| ak217 | 11 years ago |aws.amazon.com

131 comments

order
[+] bcantrill|11 years ago|reply
(Disclaimer: I work for an AWS competitor.)

To me, there is a very interesting contrast to be had between this announcement and Microsoft's announcement: it feels like Microsoft is discovering the business value of being open at the same time that Amazon is living in the time warp of proprietary everything. Has Microsoft internalized that open source is (or can be) a differentiator in the cloud? Amazon is clearly still oblivious to it -- and it will be very interesting to see if this service generates fear of vendor lock-in...

[+] mallipeddi|11 years ago|reply
Amazon is way ahead of everyone else in the cloud space. Their closest rivals (Microsoft & Google) are pretty much copying AWS. Most of Azure's services are equally proprietary and I doubt that will ever change.

This just leaves the other smaller players (DigitalOcean, Joyent, Rackspace, etc) who are mostly offering something akin to EC2 and then partnering with other vendors to offer the missing pieces on top (frankly what other choice do they have? They can't get into a race with Amazon/Google on who can build the most no. of services - they will never win that race).

[+] chuhnk|11 years ago|reply
I have to agree with this. Amazon sees the competitive landscape and their move is to attempt to create some form of vendor lock-in by providing the services that their customers have asked for or are probably hosting themselves. This is by no means a bad move and will result in holding on to a lot more customers as well as creating new revenue streams from those services. For someone like myself however, it completely turns me off the AWS path. I will use AWS as a compute resource, as well as any other cloud provider. They will fight a battle for profit while compute costs continue to come down allowing me to reap the benefits while building a cloud agnostic stack.
[+] loco77|11 years ago|reply
The interface is MySQL, no shortage of alternative implementations... Did Microsoft open source SQL Server?? How about the source code for ANY of their cloud services? They are ALL proprietary.
[+] applecore|11 years ago|reply
It's 100% wire-compatible with MySQL 5.6 (using the InnoDB storage engine), so I'm not sure what you consider proprietary.
[+] tracker1|11 years ago|reply
I really don't think that this is a 1:1 comparison by any stretch. The Amazon offering, by being MySQL compatible gives you a migration strategy.

By comparison, look at Azure's DocumentDB or Search services both of which obscure the interfaces to the underlying ElasticSearch ensuring lock-in.

Honest,y both have value, but this really isn't the same by any stretch.

[+] freshflowers|11 years ago|reply
Apples and oranges. Cloud services are something very different from a development stack.

Amazon puts all its SDK stuff open source on Github, and I don't see Microsoft open sourcing its tech behind Azure.

[+] digi_owl|11 years ago|reply
Look more closely. MS may be opening the client side, but that is a honey trap to get people to use their server side stuff. And that is as proprietary as always.

It is the same old play book as they used for Exchange and IIS.

[+] andr|11 years ago|reply
Reading between the lines, it sounds like they've rewritten InnoDB's storage layer and made it multi-server aware w/ consensus.
[+] jasondc|11 years ago|reply
I think the problem AWS is seeing is how they are being commoditized (e.g. you can just run your database on the cheapest hosting provider), so profits will move towards 0. They will need to add more services like this (Aurora, DynamoDB, etc.) to ensure AWS isn't a commodity (and you can't just easily switch to DigitalOcean).
[+] Cieplak|11 years ago|reply
I think that the AWS vendor lock-in won't come from single features such as databases from specific vendors, but rather the ecosystem of Route53, elastic load balancers, S3, EBS, AMIs, Glacier, RDS, CloudFormation templates, SQS, security groups, libraries like boto, auto scaling groups, and everything else besides instance provisioning. Of course you can implement most of these yourself, e.g., HAProxy for ELBs, rabbitmq for SQS, but all that requires application code changes and significantly more configuration management.
[+] AaronFriel|11 years ago|reply
Ouch. This pricing is pretty rough for SaaS sold on the premise of cloud scalability.

At $200/month for the entry level, their lowest price is many times what the cheapest geo-replicated "SQL engine as a service" from Google or Microsoft is. I'm not sure how the performance differs, but I am guessing theirs are no slouches.

Microsoft offers "SQL Database" geo-replicated for as low as $15/mo., and it scales up from there. Not sure about performance, but it would be apples to oranges (MySQL versus SQL Server) and difficult to compare. I wonder what the TPC numbers are, but apparently the TPC organization doesn't allow publishing that yet.

Google offers "Google Cloud SQL", also geo-replicated, and their cheapest pricing is between $10 and $18 dollars a month.

[+] gaadd33|11 years ago|reply
I don't think this is targeted towards those who only need to store a small amount of data and have very low performance needs. If you are are already spending $500/mo on an RDS instance, then it sounds like this would be a great solution. If you are spending $10/mo on a micro instance for your database server, I don't think this is targeted towards you.
[+] ohyesyodo|11 years ago|reply
It's not SQL Server, it's SQL Database. There are many large differences between the two.

A 50GB database with 10GB of RAM usage and 2 cores costs 700USD/Mo with SQL Database. This is replicated twice within DC. Double that price if you want georedundancy. Their entry level costs less but is also unusable for most real applications

[+] frozenport|11 years ago|reply
Does this introduce more latency compared to running a LAMPs stack on EC2 or does it target larger databases? My database is about 300 megabytes.
[+] Xorlev|11 years ago|reply
You probably aren't the target audience if your database fits in RAM.
[+] fizx|11 years ago|reply
It must introduce a millisecond or two of latency b/c cross-AZ quorums aren't free. That will likely be trumped by whatever differences in implementation quality exist between mysql and aurora.
[+] dubcanada|11 years ago|reply
I have to agree with what others said. This is most likely targeted at the several GB + crowd.
[+] LeonD|11 years ago|reply
Is a relational workload that requires four-nines-plus availability like Amazon is touting really something an organization would be willing to run in the cloud? Especially since that category includes a lot of personally identifiable data that legally can't be trusted to a third party. Wonder what kind of use cases they're aiming for.
[+] techdebt5112|11 years ago|reply
people should be roughly as comfortable with this as with operating mysql on EC2 or using RDS, and I think that's quite common.
[+] fortpoint|11 years ago|reply
Amazon's environments meet PCI standards and there are folks with PCI Level 1 companies running their infrastructure in AWS and storing credit card data there.
[+] state_machine|11 years ago|reply
“Aurora" is already the name of a cloud infrastructure management product, an open-souce apache project no less: http://aurora.incubator.apache.org/

Using an existing name for a product in a similar space is just confusing and hurts everyone.

[+] slik33|11 years ago|reply
Why mysql? Why not postgres engine?
[+] ahachete|11 years ago|reply
No one is saying that Aurora is built on MySQL, I'd personally like to know :) It's the protocol (drivers) compatibility what has been claimed so far.

I'd agree with you from a technical perspective it would have been better to offer Postgres compatibility, rather than MySQL. But I believe the intent is to target both a bigger market (as of today) and challenge Oracle.

[+] dubcanada|11 years ago|reply
Even though PostgreSQL may be better. MySQL is still significantly more popular. That's why.
[+] gdulli|11 years ago|reply
This is likely for the people who for whatever reason just aren't willing to switch to Postgres.
[+] teej|11 years ago|reply
Postgres will probably follow. Redshift is basically Aurora for Postgres but tuned for data analysis.
[+] loco77|11 years ago|reply
4 times faster than MySQL on the same platform, how did they pull that off?
[+] sciurus|11 years ago|reply
Here is what they claim in the FAQ:

"Amazon Aurora delivers significant increases over MySQL performance by tightly integrating the database engine with an SSD-based virtualized storage layer purpose-built for database workloads, reducing writes to the storage system, minimizing lock contention and eliminating delays created by database process threads. Our tests with SysBench show that Amazon Aurora delivers over 500,000 SELECTs/sec and 100,000 updates/sec, five times higher than MySQL running the same benchmark on the same hardware."

[+] zippergz|11 years ago|reply
Has anyone been able to find specific pricing on this? All of the language I've seen about it has been vague. One of the things that's kept me from using RDS for toy projects is that it basically amounts to running another instance on top of what I already have. For a "real" project, that's a drop in the bucket, but for toys and prototypes, it can be a significant chunk of the cost (so I usually end up just running my own db on the same instance as the web server for those projects).
[+] ssharp|11 years ago|reply
I'd think for most toy projects, running more than an EC2 instance or two is overkill. At least in my experiences, running the full stack on a single server works well enough for most hobby projects.

I certainly don't want to spend $7 a day playing around with RDS for fun!

[+] patman81|11 years ago|reply
During the keynote they said that Aurora starts at $0.29 per hour (that's about $200 per month).
[+] donmaq|11 years ago|reply
I'm interested in transaction support for e-commerce. Magento users can experience significant performance issues on MySQL, and the upper tier are always interested in more RDBMS performance, eg via NewSQL solutions.

So what can Aurora do for that workload? Do the support multi-table transactions and referential integrity across all 3 Availability Zones? Similarly, they mentioned Durability targets; what's their targets for Consistency (ie ACID).

[+] i_have_to_speak|11 years ago|reply
This is beginning to feel like how it was when Intel was competing with AMD -- evolutionary improvements at first, which just kept on coming, increasing in size and impact, until AMD just faded out of the high-perf server market.
[+] dschiptsov|11 years ago|reply
So, this is a Xen VPS (Amazon uses Xen as far as I remeber) with a MySQL 5.6 database, with a custom storage engine that stores data in some Dynamo-based storage. Any code could access it via MySQL protocol (bindings to libmysqlclient.so). Fine.
[+] jakozaur|11 years ago|reply
I appreciate your technical insight, but glueing those technologies together is far from trivial. Making it easily to manage and reliable is even harder.

I trust your best intention, but even Dropbox was dismissed on HN as user-friendly rsync.

[+] skj|11 years ago|reply
oh neat, AWS following GCP instead of the other way around.
[+] loco77|11 years ago|reply
Your profile says you work at Google...
[+] himanshuy|11 years ago|reply
What is the use of a cloud relational database service? I thought everybody is going for Document Based databases.
[+] amaks|11 years ago|reply
Not every data can be modeled as key value store, there are scenarios which require ACID transactions with relational data sets:-)