19 ms·
MongoDB Is Raising Another $100M
- nobody_nowhere 12y agoSo that brings the total to $331M? That's a metric ton of cash, what do they do with it?
- mathattack 12y agoHire, Hire and Hire. I suspect their infrastructure costs are very high too. One challenge that companies find as they try to scale is they have to add a lot of Sales and Marketing costs well before they receive any revenue, so there's a cost bump despite low growth in engineering. This is compounded if there's a professional services component.
- rational-future 12y agoWhat do you mean by infrastructure costs?
- jacquesm 12y agoI'm assuming just their test farm dwarfs most regular deployments.
- ranman 12y agoThey have a huge test matrix. Sharding tests, performance tests, and large data tests probably take a long time. You can see their test matrix here: https://mci.10gen.com/ https://mci.10gen.com/ and the driver tests here: https://jenkins.mongodb.com/ https://jenkins.mongodb.com/ Also they run https://mms.mongodb.com/ https://mms.mongodb.com/ which does backup and monitoring
- MichaelGG 12y agoEven $1M buys a lot of test equipment.
- kalimoxto 12y agoThey have MongoMMS which has 2 datacenters and provides backup and monitoring services for Mongo clients
- c-rack 12y agoThey should instead fire some of their technical decision makers and use the $100M as compensation for pain and suffering for early adopters. Choosing MongoDB for a project was one of the biggest failures in my career.
- rational-future 12y agoSome part of it certainly goes into MongoDB development. It still sucks, but every new version has a ton of major improvements. I may give it another try once 2.8 is released.
- tracker1 12y agoBeen using MongoDB for searches on ClassicCars.com for about 3 years with minimal issues. Although the next generation is moving to ElasticSearch, we haven't had issues with our use of MongoDB (which is a very good use case for it).
- gfodor 12y agoIt's going to take a lot of marketing people to convince people to pay for something they can now get for free via PostgreSQL.
- apetresc 12y agoIf that were true, there would be an order of magnitude fewer commercial database systems on the market.
- x1024 12y agoIt's true, and soon there won't be.
- hnriot 12y agoan opinion that has been touted since the 90's. still just as wrong.
- hobs 12y agoWell, I might be downvoted to hell like the other poster, but from where I sit thats a possibility far out into the future. I think you are thinking there will be an objective reckoning of features/performance/reliability and somehow since OSS wins all of those they will choose it, and as far as I am concerned, thats not actually why they choose their database in the first place. A million b2b apps are developed on sql server because visual studio/microsoft makes that easy for their .net stack, and oracle sells to executives or other manager types and gets shoehorned into projects or set as a requirement before smart people get involved ALL THE TIME. A lot of it still comes down to enterprise pricing, support, integration, and name recognition.
- davidgerard 12y agoThis is true. Also, vendorware that's written to Oracle. However, I am thankful my own bosses can count, and went "WHAT" at the last Oracle bill. So we're actively seeking to move our own stuff from 'Orrible to PG, and to get rid of the vendorware depending on Oracle. We just got AppDynamics in (ridiculously versatile and useful monitoring). Speaking to the AD sales engineer, he said a lot of their Oracle-using customers are eyeing up PG similarly.
- jamesblonde 12y agoTake some database courses, learn about transactions and isolation models, maybe some do some distributed systems courses, learn about agreement protocols, failure models, recovery models....
- fiatmoney 12y agoSome may think the OP is joking. https://www.youtube.com/watch?v=nzjIP6O4kEo https://www.youtube.com/watch?v=nzjIP6O4kEo
- deleted 12y ago[deleted]
- throwawayaway 12y agoscoff all you want, that's a better explanation of threading and the dangers entailed than I got in a whole semester of my undergrad. there's an art in explaining something complex simply.
- hamburglar 12y agoI'm sorry, but that talk is depressing. It starts with a grand statement that there's no such thing as threadsafe ruby code, and as a demonstration of that, it shows multithreaded code written by someone who had apparently never heard of synchronization primitives. It then goes on to explain how to use synchronization primitives to make your code threadsafe. It's like watching someone discover error handling for the first time.
- throwawayaway 12y ago> who had apparently never heard of synchronization primitives. i think that's the nub of our difference of opinion. i saw that as a ruse, i don't genuinely believe that the presenter never heard of them.
- revelation 12y ago
- gasping 12y agoThey'll probably spend it on marketing MongoDB as a replacement to relational databases. Brainwashing isn't cheap.
- angrybits 12y agoI don't know why you're being downvoted, that seems to be their MO.
- mbesto 12y agoSales & Marketing - or as Zed Shaw likes to put it "steaks and strippers"[0] [0] - http://vimeo.com/2723800 http://vimeo.com/2723800
- nawitus 12y agoI find it unfortunate that CouchDB is pretty much a dead project even though it's fundamentals are for most projects better than MongoDB. Master-master databases are the future for most scaled architectures.
- ddorian43 12y agoThe indexing interface sucked. I remember it's storage growed too fast(mongo also). Not webscale enough like mongodb.
- tracker1 12y agoMongoDB does master-slave replication with an election protocol to automagically promote a slave on failure. The use of this in practice is pretty good. It really depends on what you need... there are situations where I would recommend MongoDB, RethinkDB, ElasticSearch or Cassandra... The farther you get from traditional RDBMS, the more you have to consider your needs and any trade offs.
- nawitus 12y agoWhat I find interesting is that every single time I bring up MongoDB's lack of master-master architecture/replication on Hacker News the response I get is related to the fact that MongoDB has a master-slave architecture. Sure, it might work for some applications well, but master-master is a better choice for typical NoSQL uses. The whole point of master-master is not dealing with failure situations or trying to scale out performance (even though master-master handles those situations naturally), the point is that it's a different philosophy. The idea is that there's no single official true state of the database. Reality happens to map that idea very well. The data doesn't exist in a centralized official place, it exists in multiple places which may not be perfectly connected in real time all the time. The data exists at multiple servers at multiple databases. It exists on your mobile device, sometimes disconnected from the server. It exists on thousands of browsers on the same time. There's no single master. The best mapping of this reality is the master-master ideology. Yes, it requires application-level merges of data, but the benefits you get from implementing this can be tremendous. And that's why I'm excited about using CouchDB. Or rather I'm excited about master-master databases. CouchDB happens to be one of those, and I hope future databases will be built around that too.
- dutchbrit 12y agoHow much are they currently valued at (and how fast do they spend $100M)?
- NDizzle 12y agoDo.... I'm trying to phrase this the right way. These are serious questions. Do people actually consider using MongoDB for new projects? Do they want to add it to existing infrastructure? Why, with only a cursory search on the limitations?!
- cmpb 12y agoWe use it for nearly everything. We use it because it's easily portable, easily configurable and extendable, and it has a very pleasant API. It's also pretty fast.
- bhouston 12y agoWe use MongoDB for https://Clara.io https://Clara.io. It is working for us fairly well.
- angrybits 12y agoAre you doing BI/analytics on it or do you unload to another stack for that?
- bhouston 12y agoWe are running a Google Docs for 3D style application on it -- you can find examples of what people are doing here: http://clara.io/library http://clara.io/library We use other hosted SAAS services for analytics (MMS, Google Analytics, a few others) because well they are cheap/free and that isn't our core strength.
- angrybits 12y agoUnless your workload is storing deeply-hierarchical-yet loosely-related-but-otherwise-independent documents, you have a relational model. Not using a relational engine doesn't change that.
- ibejoeb 12y agoIt's really hard to get this through to people nowadays. The relational model is powerful, and the storage systems, logic engines, languages, and ancillary toolsets that work under it--on the market, ready for production, today--are very advanced. When I work with people who claim that their models are not relational, I usually have to contend that they are. The argument goes like this: you may be able to model your problem as documents or hierarchies, but can you model all of the questions you want to ask about that data in the same way? The major vendors of relational systems have first-class support for hierarchical data structures, recursive data structures, graphs, KVs, and documents, and they can be used in conjunction with the basic relational features. Modern SQL is more that just SELECT...FROM...WHERE...GROUP BY; it has powerful, fast analytical functions, domain modeling, and reporting features. The top engines can partition your data and parallelize your access patterns to get the most value out of your commodity multi-core/SSD hardware. The support for such systems is ubiquitous in todays software libraries. These systems even have tailored hardware platforms to support them if your problems really lie far out on the curve. The downside is that none of the free/OSS systems are quite as capable. The commercial systems often require the top-tier editions to support all of the above. The good news is that it's really a good financial deal if you actually need it. A $40,000 license for Oracle or MS-SQL is 1/4 of the annual cost of an engineer that can coerce similar functionality out of a lesser product. Their are plenty of consultants that can help you get there on a one-and-done basis. PostgreSQL is getting there, too. Query parallelism is, for me, the biggest gap. There are some neat aftermarket solutions, but it's not quite there yet.
- lquist 12y agoMaybe I'm being stupid, but a non-ACID database sounds scary to me.
- angrybits 12y agoFor the people who don't need it, it's perfectly reasonable. That said, I suppose I haven't been fortunate enough to work on anything that doesn't need it.
- mrinterweb 12y agoThat kind of depends on your needs. Since the documents are hierarchical, and can be self-contained (depending on design), you can get a write receipt from MongoDB. I think the necessity of ACID applies more to relational databases that are updating multiple related records. If you really need an ACID like transaction in MongoDB, you have to do it in your software and check the write receipts. Of course this can fail if the database server suddenly goes down, but with MongoDB you should be using replica sets anyways.
- chris_wot 12y agoHow many people write receipt only databases?
- quizotic 12y agoNot stupid, but there are different perspectives that reduce the scariness. With are relational model, your working set needs to be joined together from pieces, so you want ACID to ensure that everyone sees a consistent set of pieces. But with a document model, you can 'pre-join' your working set into a single object that has everything you need. And that object doesn't have a fixed schema, so it can grow and evolve over time. While Mongo doesn't provide ACID across documents, it does guarantee atomicity, consistency, isolation and eventual durability for SINGLE documents. IF your application can live with a universe that consists of a single, arbitrarily complex object - then Mongo is as within epsilon of being as safe as a regular ACID transaction system.
- lovemenot 12y agoWith the new CRO appointment, what changes to their business model are now expected in order for them to try to realise these investments? I guess they cannot do much about s/w licensing remaining at zero cost, so will they be targeting just support revenues?
- lovemenot 12y agoWith the new CRO appointment, what changes to their business model are now expected in order for them to try to realise these investments? I guess they cannot do much about s/w licensing remaining at zero cost, so will they be targeting just support revenues?
- fapjacks 12y agoSo I guess we can look forward to a lot more marketing selling MongoDB as some incredible database? It would be nice if they spent that money making it less of a pain to use and less brittle.
- rdtsc 12y ago> So I guess we can look forward to a lot more marketing selling MongoDB as some incredible database? I have 2 MongoDB mugs. I could use 4 more for a nice set.
- fapjacks 12y agoHeh, that's true. Actually (ironically) I have a MongoDB mug too, which I found orphaned on a desk in a back office at my old job.
- debacle 12y agoSo if Mongo is such shit and Couch is a pain in the ass to configure with not so great documentation, what can I use as a NoSQL database? From time to time, I find myself wanting a database that is flexible with document definition but every tool I've tried has kind of sucked.
- jaz46 12y agoHave you tried RethinkDB? Disclaimer: I used to work there.
- jxf 12y agoThis sounds like heresy, but you can actually use Postgresql. It has a JSON column type that supports indexing! http://www.postgresql.org/docs/9.4/static/datatype-json.html http://www.postgresql.org/docs/9.4/static/datatype-json.html
- ahoge 12y agoPostgres also got hstore (key-value) and arrays. So, if you only need a little bit of flexibility on top, you can have that, too.
- jxf 12y ago`hstore` is good if you know for sure you'll never have nesting (because the values have to be primitive types). Otherwise, JSON is probably the safer, more reliable bet, though it's slightly slower.
- brandonb 12y agoI'm a pretty happy camper using Postgres with hstore: http://www.postgresql.org/docs/9.1/static/hstore.html http://www.postgresql.org/docs/9.1/static/hstore.html You have the flexibility to store arbitrary JSON blobs when you need to, the stability, maturity, and performance of Postgres, and the ability to migrate data to a more rigid schema once your project matures to the point where data validation is more important than raw prototyping speed. The main drawback so far is that the query interface is a little clumsy.
- 0xFFC 12y agoI dont know so much about internal architecture of database's, but I really loved how mongodb care about people with providing such great course on udacity.
- megaman821 12y agoWhat is the go to use case for a document database? Things like ElasticSearch (search database), Neo4j (graph database), and Redis (key/value store) seemed to be used along-side a traditional RDBMS, and have specific use cases that make them superior than trying to shoe-horn the functionality into a traditional RDBMS.
- smurfpandey 12y agoStorage of JSON documents. We are using MySQL as our primary database, and mongoDB for storing JSON documents.
- zachrose 12y agoWhat do you do with the documents? Join them? Search them? Filter them? Summarize/aggregate them? All of the above? Do you have schemas for them? (Just curious!)
- smurfpandey 12y agoThese documents are simply sent to our client apps. All the processing happens on MySQL. And since we are sending JSON, so instead of creating JSON on runtime, we store as a document and retrieve that and send to the client. We retrieve documents using the unique id generated in mysql table.
- proksoup 12y agoSacrifice performance for less development overhead. Add arbitrarily complex (json) structures to a table, without a database migration.
- scorpion032 12y agoI guess we can all surely expect to get a couple more of MongoDB mugs this year.