Live data from Hacker News

Azure Cosmos DB: Microsoft's Cloud-Born Globally Distributed Database

muratbuffalo.blogspot.com

81–90 of 137 posts

Re: Azure Cosmos DB: Microsoft's Cloud-Born Globally Distributed Database

#81

CosmosDB does have problems but the comments here seem to mostly be about not understanding the data model. It's a JSON-based document-store that distributes data across partitions. It offers several interfaces (set at the database level) but that doesn't mean all the functionality is supported. It works well with MongoDB, Cassandra, and Table storage but you won't get relational SQL joins or fast graph search querie…

The problem is that their marketing and docs make it sounds like it is the solution for everything. Legacy Cassandra workload? Use CosmosDB Graph Database? Use CosmosDB Legacy MongoDB database? Use CosmosDB SQL Server database? Use CosmosDB When the only really valid use case is: Document Database? Use CosmosDB

Yes, I said exactly that.

Multi-model is a hard problem and only really works with similar data models. It's also confusing since people conflate SQL and relational semantics when it's really just a query language.

It does work well enough if you have an OLTP document use-case like MongoDB, Cassandra, and JSON/SQL.

Re: Azure Cosmos DB: Microsoft's Cloud-Born Globally Distributed Database

#82

Earlier quoted context omitted.

He's talking about building the underlying failover mechanism for CosmoDB. For a customer it's easy and automatic, but GCP and AWS and Azure have to build it first.

But months?

To build a globally distributed database offering as complex as Cosmos DB with multiple SLA requirements? Can you build it faster?

Re: Azure Cosmos DB: Microsoft's Cloud-Born Globally Distributed Database

#83
post #11

FTA: "say datacenter automatic failover component, in one part of the territory. Getting this component right may take months of your time. But it is OK. You are building a new street in one of the suburbs, and this adds up to the big picture." Wait, what?! Driving metaphor aside... 'MONTHS of your time' to implement failover? People, this is WHY the cloud was invented, so we didn't have to spend months re-inventing.…

This isn't about customers using the cloud. His perspective is as an engineer on the Azure team building these databases and other features for you to use.

He's "inventing" the cloud so that you don't have to reinvent, as you state.

Re: Azure Cosmos DB: Microsoft's Cloud-Born Globally Distributed Database

#84

After trying CosmosDB I put it down pretty quickly. I can't say I'd recommend it to anyone. Shockingly poor perf. Is CosmosDB really that bad or did we have it misconfigured? We're not sure, the docs didn't help us understand. Random failures when connecting. Random errors (or worse, no errors but unexpected results) when querying. Largely undocumented. Painful interop with non-azure proprietary offerings. Almost zer…

To the brave, I recommend trying to make a copy of a CosmosDb collection. The only solution that doesn't require spinning up a VM, reading all the data and writing it back again is the Azure Data Factory [0]. Which according to Azure's own benchmarks [1] manages to copy only 2MBps between two CosmosDb instances each with 100,000 RUs ("Resource Units"). That's more than half a day for a small 100GB collection. And in…

Why is using a VM not allowed? They have the Bulk Executor for large scale update/ingest: https://docs.microsoft.com/en-us/azure/cosmos-db/bulk-execut...

You can also use the changefeed system which is stored as an event-hub stream and then save it to another collection using Azure Functions.

Re: Azure Cosmos DB: Microsoft's Cloud-Born Globally Distributed Database

#85

This post is interesting but one or two MS employees did reveal some key details about CosmosDB in the original announcement thread: https://news.ycombinator.com/item?id=14308814 (edited) > There are many significant differences in capabilities, and design approaches between other systems (CockroachDB and Spanner) and Cosmos DB. At a very high level differences are at two levels - the design of the database engine an…

The TLA+ specs where eventually published [0], although I wonder how up to date they are to current state of the DB since they haven't been updated for a while.

[0] https://github.com/Azure/azure-cosmos-tla

Re: Azure Cosmos DB: Microsoft's Cloud-Born Globally Distributed Database

#86
post #73

Earlier quoted context omitted.

That's impressive, considering that this CosmosDB development only started in 2014! You are talking about Cosmos which is still around but is now used as the basis of Azure Data lake [0]. However, I think the closest MS has to Dremel is actually Kusto [1] which has a custom query language but works pretty well. [0] https://azure.microsoft.com/en-ca/solutions/data-lake/ [1] https://docs.microsoft.com/en-us/azure/kusto…

You're probably right. However, having worked at MS for nearly a decade in the past, I'd be stunned if Cosmos did not serve, at least in part, as the foundation, and CosmosDB did not inherit a good chunk of the team. Dremel now uses standard SQL and unlike Kusto it supports multiway joins and a bunch of other things expected of a more "general purpose" analytical DB. Ultimately MS efforts will be stymied by the fact…

Cosmos and CosmosDB have next-to-nothing in common and were not built by the same people.

Re: Azure Cosmos DB: Microsoft's Cloud-Born Globally Distributed Database

#87

Earlier quoted context omitted.

It sounds like you're describing the internal big data platform "Cosmos", something which has been made publicly-available as "Azure Data Lake Analytics" and which has no relationship to "CosmosDB" other than a similar name.

Sounds like a branding mishap, Microsoft created the same type of hard to understand mess with the Microsoft Dynamics branding.

Like he said, the public product is called Azure Data Lake, and internal product names aren't brands (that's kind of the whole point of them).

Re: Azure Cosmos DB: Microsoft's Cloud-Born Globally Distributed Database

#88
post #54

After trying CosmosDB I put it down pretty quickly. I can't say I'd recommend it to anyone. Shockingly poor perf. Is CosmosDB really that bad or did we have it misconfigured? We're not sure, the docs didn't help us understand. Random failures when connecting. Random errors (or worse, no errors but unexpected results) when querying. Largely undocumented. Painful interop with non-azure proprietary offerings. Almost zer…

I've used it briefly internally at Microsoft 2009, I had almost the same experience. Super slow, takes a while to even start the query, non-standard query language. For internal users there were even more hurdles: you had to get approval and quota before you were able to use it at all, and the default answer to both requests was "no", you really had to justify it. As an aside, at MS "no" was the answer to any request…

You're conflating CosmosDB and Cosmos (which has been publicly released as Azure Data lake Analytics and botched imo).

Re: Azure Cosmos DB: Microsoft's Cloud-Born Globally Distributed Database

#89
post #73

Earlier quoted context omitted.

That's impressive, considering that this CosmosDB development only started in 2014! You are talking about Cosmos which is still around but is now used as the basis of Azure Data lake [0]. However, I think the closest MS has to Dremel is actually Kusto [1] which has a custom query language but works pretty well. [0] https://azure.microsoft.com/en-ca/solutions/data-lake/ [1] https://docs.microsoft.com/en-us/azure/kusto…

You're probably right. However, having worked at MS for nearly a decade in the past, I'd be stunned if Cosmos did not serve, at least in part, as the foundation, and CosmosDB did not inherit a good chunk of the team. Dremel now uses standard SQL and unlike Kusto it supports multiway joins and a bunch of other things expected of a more "general purpose" analytical DB. Ultimately MS efforts will be stymied by the fact…

Why would you be stunned? They are completely separate systems.

It's like saying BigQuery and BigTable share something because they both have "Big" in their name.

Re: Azure Cosmos DB: Microsoft's Cloud-Born Globally Distributed Database

#90

Earlier quoted context omitted.

I can say this exact thing about most Azure services. Nothing really works as documented and everything is more expensive than it should be. I always feel like I’m missing something.

Cmon this is an extremely exaggerated opinion. I have used Azure and AWS and I find Azure to be much easier and user friendly. Maybe at very large scale AWS shines through, but I would choose Azure over AWS any day.

you're literally the mythical unicorn, I don't know a single person that has appreciated using Azure.

I'd personally trade my first born with no second thoughts to use AWS instead.

Post reply on HN