5 ms·
> It is however interesting that we used relational databases for virtually everything for decades even though SQL is suboptimal at most things You have no clu
by rantanplan 10y ago
> It is however interesting that we used relational databases for virtually everything for decades even though SQL is suboptimal at most things
You have no clue what SQL or ACIDity is. For 99% of the cases SQL/RDBMS is the right choice. You probably think you belong in that 1%, but from your comment, I suspect you do not.
> I choose to use NoSQL for virtually all my projects
That's because you have no important data to store.
When you get to store data that are important to your customers you're gonna have a big revelation.
- anonx 10y ago>> You have no clue what SQL or ACIDity is. "NOSQL" doesn't mean "no ACID". There are plenty of NOSQL DBs that are ACID compliant. And SQL is not the only way to write your queries. There are a lot more QLs.
- rantanplan 10y agoEven though what you say it's true, my comment is still correct and relevant to the OP. Also, of the NoSQL DBs that support ACID, I wouldn't touch them for any serious work or primary data at least. None of them are battle-tested in the same way Postgres is for example. And again, people who really need these type of DBs fall into the 1%, and I'm being very generous.
- brianwawok 10y agoWhy do you think NoSQL means not important data? MongoDB eats data but I am not sure every NoSQL database does. NoSQL does add certain kinds of complexity, but also simplifies certain problems. Depends where your hard problems are..
- rantanplan 10y agoBecause in the 2 decades I'm in the industry I see RDBMS make the world spin and NoSQL DBs destroying companies and families. MongoDB and CouchDB eat data for breakfast, I know that from 1st hand experience. And all the others DBs that claim that do not keep cropping up in Aphyr's blog. I ain't saying that all NoSQL dbs are useless. I'm just saying that proposing and choosing an RDBMS solution is going to be the right choice for 99% of the projects. Yes, most people think that they belong in that 1% where they have the infrastructure problems and big data of Google, FB and Twitter but.... they don't.
- threeseed 10y agoIn the last 2 decades in the industry as well I've never lost data with MongoDB, Riak or Cassandra but have with Oracle, DB2 and PostgreSQL. After all databases are just software and there will always be bugs. Some people just get tripped up by different ones. And you are woefully ignorant to think the RDBMS is the right choice for 99% of projects. Especially since you think that the 1% of remaining users are purely worried about scalability. Hint: think about the schema problems associated with storing auto generated features from deep learning models.
- rantanplan 10y ago>In the last 2 decades in the industry as well I've never lost data with MongoDB, Riak or Cassandra but have with Oracle, DB2 and PostgreSQL Yet every test proves otherwise. Also, use Google to see how people have lost data with MongoDB. Mongo is not considered a serious piece of technology by any scientist or engineer I know. Postgres though is universally considered an engineering marvel. >Hint: think about the schema problems associated with storing auto generated features from deep learning models. Hint: The problem you mentioned? Even less than 1% Calling me ignorant doesn't change reality you know.
- dominotw 10y agoIs data-loss something inherent to nosql tech or just poor implementations? If its the latter why haven't there been any reliable nosql implementations. Perhaps its well suited to non transactional, low fi data?
- rantanplan 10y agoNoSQL DBs usually target distributed environments. So... enter CAP theorem. There's no free lunch. People think we can simply throw away half a century's worth of science because JSON and schemaless are teh awesome derp derp. Implementation is surely an issue, if you take into account that the mongodb guys had to acquire another company [1] in order to overcome their abysmal write performance. And yet there were people, and benchmarks that were trying to tell us that mongo was faster than RDBMS alternatives. All this circa 2009-2012. You know what's faster than everything? Writing to /dev/null ;) Anyways, depending on your use case there might be a NoSQL out there that might fill your needs and it might actually deliver what it claims it can deliver. But it's hard to sift through all this ad-driven, buzzword-ridden informacials that gets thrown around by start-up companies in the DB domain. Also, DBs are like filesystems; even if the match/science is correct, it needs at least a decade of proven track record before you can say that it works as advertised. [1] http://www.informationweek.com/software/information-management/mongodb-buys-wiredtiger-database-move/d/d-id/1318177 http://www.informationweek.com/software/information-manageme...
- threeseed 10y agoMongoDB doesn't eat data any more than any other database. It's used by eBay, Foursquare, Adobe, Facebook etc. And NoSQL databases underpin most of the popular websites around today. It's nonsense to assume all of that data isn't valuable.
- rantanplan 10y agoFoursquare? For real? Like what's gonna happen if they have a couple of corrupt data? A minor incovenience at worst? Is anyone gonna lose millions? Nah. Anyone gonna die? Nah. Anyone gonna get sued? Naaaaaah Also Facebook uses MySQL for their primary data. Pretty sure it's the same for ebay. Don't know about Adobe, I bet it's the same deal there too. People get so excited when they hear some big company using X, but they have no clue in what capacity it's used. I can guarantee you that all the data that matters, that need to be consistent and whole are in some kind RDBMS.
- deleted 10y ago[deleted]
- threeseed 10y agoMongoDB is used in Facebook for Parse, eBay for analytics and Adobe for Experience Manager. All are pretty important parts of their business. In particular the latter which if there was data loss would cause the biggest shockwave in the web community. But no point discussing it with you since you think: Sony Playstation Network, Apple iCloud, Office 365 etc aren't important data to these companies.
- rantanplan 10y agoHave you actually used Parse? Obviously not, because you wouldn't dare mention that POC in this discusssion. Hint: search around about experiences. There's no point discussing with me, because you can't have a coherent debate. Analytics data are not critical neither primary. You really have to reread what I said.
- goldenkey 10y ago
- r2dnb 10y ago>You have no clue what SQL or ACIDity is. That's quite an attack. I trained for an Expert SQL certification from Microsoft back then, when I was writing 3000K+ long stored procedures to migrate an Access application at a fortune 40 company. So I know what it is and I know quite a good deal about RDBMS. I'm not among those who criticize what they don't know. Regarding the gist of your comment on NoSQL, I haven't been able to convince people coming from where you are with two days of meetings in a row, so I'm fairly confident I'm not going to change your mind on HN.
- rantanplan 10y agoIf you have a clue, as you say, and still believe that it's a good idea to store critical data with NoSQL then I don't know what to say. Obviously you don't care enough that almost every NoSQL solution out there has been found to make false claims about their guarantees. The billions that have been sunk in the blackhole that's called NoSQL in the last decade is unprecedented. You don't have to change my mind. I have(and still use) both. And I still maintain that people who use NoSQL for 99% of their projects are making the wrong choice.
- brianwawok 10y agoSo I think a lot of people agree with you on > Many people choose the wrong tool for the job I think that is far past database choice. I think many people build SPAs that end up hurting the product over a traditional setup. I think many people use microservices where a monolith would have much better performance and reliability. As for the basic premise > that people who use NoSQL for 99% of their projects are making the wrong choice. Is perhaps kinda right? Some people may really only touch giant data sets. So for them always using NOSQL is smart. The people that write webapps with 12 users? More questionable. Most cases you can decide if you need to leave RBMS with something like. 1) Do you need to store in the next year > 100GB of data that you need to access in realtime? 2) Do you need in the next year to store > 1TB of data that you need to access in semi-realtime? 3) Do you need in the next year to handle > 1000 writes per second? 4) Do you need in the next year to handle > 1000 reads per second? Not a perfect guide, and I am sure you can think of edge cases that can still be dealt with in a RDBMS.. but it is a decent starting place. One tricky part is that if you are optimistic, almost any app can check off #3 or #4 (Like Uber but for Baby Strollers). Knowing how to realistically estimate demand for a possibly viral startup is hard.