The thing about AMZN/Mongo

People seem to be missing a very important (but nuanced) point in this. Amazon is NOT running a 2 year old version of MongoDB. They are running their OWN document database, which may or may not be as good as the current version of Mongo (in all likelihood it is better in some ways and worse in others). We just don’t really know about its technical capabilities quite yet. But what Amazon is doing is making this new database COMPATIBLE with a 2-year old Mongo API, to make it easy for current Mongo users to switch. This implies that Amazon thinks they can make their offering attractive to customers in other ways (likely price), and they are trying to remove other impediments (migration headaches).

Here is a car analogy to help. Tesla builds a great electric car and a Supercharger network to go with it. Things are going great. Then Ford decides it wants to get into the electric car game. They design the car and have a decision to make on what to do about charging. They could spend the money to build their own charging standard and a network to go with it. But that’s expensive and the time to market will be slow as molasses. So they say, wait a sec, we’ll just make our chargers compatible with Tesla’s supercharger network! That way, our potential customer’s charging options will be as good as Tesla’s as soon as our cars hit the street. Great idea! Now, it this car example, Tesla might have patented their charger design, so Ford couldn’t actually do this. But in Mongo’s case, because of open source, their API (= charger design) is free for anyone to copy and use (or at least the 2-year old version of that design is). And that’s exactly what Amazon did. But don’t confuse the car with the charger. Amazon has it’s own document database, it’s only the API that they are mimicking to ease compatibility and migration.

16 Likes

MongoDB is becoming the standard NoSQL database. It is pulling away from the rest and is embedded in many applications as the default database as well.

Mongo has a previous database Dynamo that is a document based database that although may be easier to provision (just as Amazon states DocumentDB is) it is much harder to work with and is much less popular than MongoDB.

So in order for Amazon to attract any customers to any new NoSQL like database Amazon has to include three things (1) easy portability from MongoDB, (2) backward compatibility with Mongo, and (3) same functionality plus same scripting language.

Amazon could not just create their own BETTER database and hope to take over from Mongo, thus they are using the APIs from a 2 year old version of MongoDB. The reason being is not to really give greater functionality but to get some customers to become more locked into the infrastructure of AWS.

Legally speaking AWS is on slippery turf and that is why they will probably limit themselves to version 3.6 APIs as it gives Mongo less incentive to sue (which would be awful), and gives AWS at least a differentiated case from Oracle v. Google to defend. If AWS moves to 4.0 APIs and tries to usurp those then it will be war.

No matter what features Amazon creates on their own Amazon simply cannot create a database attractive enough without the three steps outlined above. This says a lot about how MongoDB is becoming the standard.

It says that it is worthwhile for Amazon to dance on the edge of the law (probably even crossed it, but not enough for the expense and worry of a little company suing Amazon) in order to get just a bit more of the Mongo database demand.

Those are good things. However, how well can Mongo end up monetizing this all? Atlas is what most people are looking at. And Amazon has given the indication that hosting of MDB is worth pushing the edge of the law to do, and it is only worth doing if it usurps enough Mongo functionality because doing otherwise just creates another DynamoDB.

Tinker

10 Likes

Shikotus, you are right about it being their own database and right that it might have some pluses we don’t know about, but I think there are some other things we know.

For starters, the commands for transaction scoping to control multi-document ACID transactions are unlikely to be in the 3.6 API since that work was done after that API. So, stuck with the 3.6 API, (at best, given Tinkers remarks about legality), they really have no way to support any of the changes which Mongo has made since 3.6, at least none which require explicit control.

Second, while we know that Amazon has done some things to improve performance which were perceived issues in the 3.6 version of MongoDB, we also know that Mongo has made improvements targeted on the same issues. We have no way of knowing who did the better job or even whether this might be a some of one and some of the other type of area, but it is highly unlikely that DocumentDB is simply absolutely better on these issues.

Third, one of the attractions of MongoDB is the accessory products which it also has available. The current versions of these products are almost certainly written with the current API, not 3.6. The implication is that it is unlikely that these products can be used with DocumentDB unless one uses a two year old version.

4 Likes

I think Amazon’s strategy of using its customers’ data to work them out of business will backfire. I know many of us invest in Amazon, and may look the other side, but this is predatory behavior. It reminded me of Microsoft behavior, not so long ago, and how the government had to intervene. Yes, they are picking on small MongoDB, but maybe, Oracle will buy MDB to grow their DB business and innovate again, and sue Amazon like they did with Google!

2 Likes

Second, while we know that Amazon has done some things to improve performance which were perceived issues in the 3.6 version of MongoDB, we also know that Mongo has made improvements targeted on the same issues. We have no way of knowing who did the better job or even whether this might be a some of one and some of the other type of area, but it is highly unlikely that DocumentDB is simply absolutely better on these issues.

Tamhas,

This makes sense to me. Also, for future versions of Mongo (4.2 and beyond), doesn’t the open source nature of Mongo still benefit the software? I would think the open source community would rally here.

Thanks,
Bear

1 Like

Open Source is, of course, somewhat two edged. Being open source means that there is some level of user who will use the open source version for free and not provide any revenue. On the other hand, that level of user is probably unlikely to provide much revenue anyway. Having an open source version and a premium paid for version means that the later is little different than a proprietary product … unless the open source nature of the base product means that there really are useful improvements being added to the product by the user community. This certainly was important to the growth of Linux despite proprietary flavors like Red Hat. Whether this is significant for MongoDB I don’t know. And, I suppose there are some companies who will go with Mongo in this pair exactly because they are the open source company and Amazon is the big guy who ripped it off.

3 Likes