I was reading a post [0] by Brian Cantrill that predicted this would be the result of licences like the SSPL. I instinctively disagreed with him, but it turns out he was right: "The cloud services providers are currently reproprietarizing all of computing — they are making their own CPUs for crying out loud! — reimplementing the bits of your software that they need in the name of the service that their customers want (and will pay for!) won’t even move the needle in terms of their effort."
[0] http://dtrace.org/blogs/bmc/2018/12/14/open-source-confronts...
Now I kinda hope Oracle decides to buy out MongoDB and integrate it into their own cloud. Then Oracle can decide to pull the same bullshit that they did with Google over the Java APIs with the MongoDB APIs but now against their current enemy Amazon (and Microsoft, too).
Then a combined Google + Amazon + Microsoft may finally be able to reverse the API Copyright insanity that is hovering ominously over the tech industry, and Oracle can continue to be a shining city upon a hill of shitty technologies you should never allow your business to adopt.
I don't understand why people are reacting to it so aggressively. That's basically how AWS works, they did the same to Apach Kafka with Kinesis, Prestodb with Athena, PostgreSQL and MySQL with Aurora, Redis with ElastiCache and many others over the last 4 years so it's not new.
It took too long for the open-source community to figure out that the cloud providers are killing them, now it's too late. Well played, AWS.
If I'm reading the pricing page correctly, DocumentDB would run a _minimum_ of $200/month. That's for the smallest instance and no storage or I/O. Kind of steep if you ask me.
Finally an AWS service where the name makes sense and describes what it is. I hope this is the start of a trend.
Looking through the supported APIs (https://docs.aws.amazon.com/documentdb/latest/developerguide...), it appears DocumentDB has no support for Mongo's oplog (https://docs.mongodb.com/manual/core/replica-set-oplog/), or change streams (https://docs.mongodb.com/manual/changeStreams), which I guess is no surprise because change streams were introduced in Mongo 4, whereas DocumentDB copied the 3.6 API. So DocumentDB seems much less useful as a reactive data store than MongoDB.
In other words, DocumentDB is only a drop-in replacement for MongoDB if you weren't using any of the features Amazon decided not to support.
Happy to be corrected if I'm misreading the documentation!
Weird question: Could Microsoft sue Amazon here for infringing on the DocumentDB name? I mean Microsoft's DocumentDB was among the first to even have such a MongoDB layer also) and that was like 3 years ago.
Given that current Amazon leaders actually came from Microsoft's data platform group this leaves a bit of a bad taste behind.
I'm not working for either company.
Sounds like this runs on the same storage service as Aurora.
I'm pretty sure this is going to kill Mongo as a company dead. With this in existence there's literally no reason to use Atlas.
If they wanted to twist the knife they should get to work implementing a pass through migration option.
Dj from MongoDB here. We have, obviously, been keeping up with this and other threads, but we've also been busy testing out Amazon DocumentDB's correctness and performance. While we're getting that together to bring you an official response in a few days, complete with test results and methodology, I'd like to pick up on a couple of points and some inaccuracies that have been repeated in various threads:
This move shows MongoDB’s approach to document databases is compelling. We’ve thought so for a long time.
A cloud-hosted, truly global and managed MongoDB, MongoDB Atlas, has existed for the last two and a half years and has been serving more and more satisfied users every day with some massive workloads.
MongoDB Atlas runs the full implementation of MongoDB in the cloud.
Many features of MongoDB are documented as not being implemented by DocumentDB: these include change streams, many aggregation operators including $lookup and $graphlookup. But beyond that, well let’s just say we’ve been staggered by how many tests DocumentDB has failed (no spoilers!).
The MongoDB API is not under an Apache license.
MongoDB drivers are still under the Apache license. The MongoDB server used to be licensed under AGPL and is now licensed under SSPL. The source code is open to all, as it has always been, at https://github.com/mongodb/mongo
DocumentDB is not cheaper than MongoDB Atlas. Preliminary estimates show this to only be the case with very large collections and very, very high read/write workloads.
There’ll be more next week over on the MongoDB blogs.
Dj
The current biggest threat to Free and Open Source software is cloud computing. Plain and simple.[0]
I know this is a blunt and harsh statement to make, but when you sell a service, you have zero native incentives to Open Source the way your system works. It just opens up Competition. This is not unique to AWS/Amazon. But their success gives them the power to have wide OSS damage.
This is, to me, the biggest reason why cloud portability should be something that every customer of a cloud service should have in their plans. Amazon as a company has shown no timidness in both "embracing, extending, extinguishing" their competition.
OSS literally built the internet and opened up the wold wild communication age, let's not be so short sighted that we don't see proliferation of cloud services ( specifically one having so much dominance), for what it really is.
[0] http://dtrace.org/blogs/bmc/2018/12/14/open-source-confronts...
Why is it so expensive? Not only is the entry point $200/m, the instances are twice the price of their EC2 equivalents. (At first I thought perhaps the price included multi-AZ, but it doesn't.)
Seems like this is likely to be the real result of licenses like the SSPL. Not even a terrible outcome if the different implementations remain relatively compatible.
So now AWS DocumentDB, Azure CosmosDB, and even Apple's FoundationDB have a MongoDB compatible API. I expect other multimodal databases to offer the same soon enough.
Strange turn of events for MongoDB but I guess that's what happens when the interface is open and anyone can build a backend to it, especially a relatively simple document-store.
I really wish this were priced more along the lines of https://www.compose.com/pricing - a $200/m floor is a tough dB cost to absorb on smaller yet important projects. Suppose an app has a few mb of data and maybe one day hits 100mb of awesomeness I really have to pay $200/m here?
I get it, I love Aws, just wish this was priced differently.
seems an obvious response to https://www.mongodb.com/press/mongodb-issues-new-server-side...
I really wish this was serverless. Azure CosmosDB offers SQL and MariaDB interface against a serverless, pay for what you use database and DynamoDB is the only product of that class Amazon has. Even Aurora "serverless" appears to be little more than autoscale, and it requires an elastic IP which slows launch of lambdas since they have to connect to VPC.
This looks great for teams getting started in AWS, being able to reuse idioms, libraries and knowledge in managed services to remove some of the operational load.
A note this is also nothing new, Azure Cosmos DB has had this for a while.
Serious question: is there any real reason to use Mongo over Elasticsearch?
There is a serious amount of weasel words in that statement. Implementing the Apache 2.0 API I think is just weasel words for "Works more or less with the MongoDB drivers" which is the only thing Apache 2.0 licensed that I know off and is obviously not the API which is the combination of the MongoDB wireprotocol and the commands supported by the MongoDB server.
Looks good. I used to use both MongoDB and CouchDB (for very different use cases) a lot but haven’t touched them in a long while.
Jeff Bezos continues his quest to eat all open lunch boxes.
While we are on the topic, are there cloud providers out there that provide "hosted FoundationDB as a service"?
And if you are curious, no I don't have any special need or use case for it, just wondering.
AWS lacked something like this before, which is why I used MongoDB Atlas (MongoDB's own managed mongo service). How is this different than DynamoDB (other than the obvious API differences)?
I am pretty frustrated that DB services like Aurora, and now DocumentDB are still limited to last-gen instance types like r4 instead of the latest instances like r5 and t3 which have marked improvements in terms of CPU and networking performance.
I wonder if it is that they just have a so much r4 inventory left that they are forcing us to use it or if they haven't fully integrated/validated the latest instance types with their custom storage backend.
How is it better than buying a MongoDb subscription from the AWS marketplace? https://aws.amazon.com/marketplace/search/results?x=0&y=0&se...
Wasn't DocumentDB the old name of Azure Cosmos DB? just marketing wise this seems like a bad choice for a name.
I hope AWS realises that harming OSS authors, even indirectly, is counterproductive to AWS' interests.
If Mongo dies, so does its userbase, and so does DocumentDB.
How to fix it classily? Contribute back with code maintenance or whatever customizations were developed in-house.
Also you get to save face - you are not perceived as a leech anymore.
I hope MongoDB's users are really keen on on-prem otherwise this might be a challenging moment for them.
Is it really THAT hard to to run on prem/cloud because of the "complexity that comes with setting up and managing MongoDB clusters at scale"?
The documentation is strong, it was built with horizontal scalability in mind. I don't see the struggle.
I would actually like to thank AWS for focusing on supporting Open APIs. Let the community design the standards and operations and let the vendors compete to implement them, open source included.
Atlas is $0.03 per server hour, Amazon starts at $0.277
Do I have that right?
Shame there isn’t a free tier equivalent. I’d like to try some projects using mongo but $200 a month minimum does not work for Indy projects.
Can someone do a comparison on pricing vs Atlas and vs DynamoDB and Amazon's managed postgresql?
> Text Index: No
as MS Cosmo DB prior, the compatibility list leaves quite a bit out.
Of all possible names they managed to choose already obsolete name for a similar product from Azure?
Azure in 2017: forget DocumentDB, Cosmos DB is the new thing now!
AWS in 2019: We just released DocumentDB!
Are they so geniuses or so idiots?
Is this serverless?
Pricing?
I cant use this crap locally?
How the heck was this approved by legal? AWS is linking to MongoDB's own documentation.
https://docs.aws.amazon.com/documentdb/latest/developerguide...
Go to any operation, it links to docs.mongodb.com !
My bet is that it is built on top of Aurora PostgreSQL. By looking at the "Limits" section (https://docs.aws.amazon.com/documentdb/latest/developerguide...), identifiers are limited to 63 characters and the same characters that PostgreSQL limits identifiers to; and a collection size limit of 32TB, coincidentally maximum PostgreSQL table size.
Edit: I can confirm: does not allow the UTF-8 null character in strings: https://docs.aws.amazon.com/documentdb/latest/developerguide... ... It is written on top of PostgreSQL.