3 ms·
To the good folks at 10Gen, Antirez, the Cassandra project, LinkedIn, Google, Amazon, and everyone working to advance the state of datastores available for incr
by cscotta 16y ago
To the good folks at 10Gen, Antirez, the Cassandra project, LinkedIn, Google, Amazon, and everyone working to advance the state of datastores available for increasingly specific applications, your work is undeniably important. The team I work with has been evaluating a handful of emerging datastores for some applications and are making plans to migrate a few types of data in some of our systems from one to another. Thank God that we have choice beyond a standard RDBMS and BDB.
To the armies of bloggers parroting slogan after slogan, ricing benchmarks so far removed from real-world applications as to place themselves somewhere on the spectrum between meaningless and malicious in the name of pageviews, well, that's not helping anyone.
It's great to see people get excited about new technologies. But if tech/startup culture is one that embraces and celebrates the fail, then we damn well better also talk about the different areas where many different datastores are not appropriate choices, and where some of them downright break, risking extensive downtime or corruption, require unreasonable amounts memory for indexes, or multiple machines to provide for durability, or return inconsistent "postmodern" results, or what have you -- without it being understood as a personal attack on any one individual, company, or sector.
The productivity of this video is debatable, sure. But perhaps we can appreciate that it parodies the "magic scaling sauce" image that the "tech press" (face it, we're it) has given surprisingly young but maturing technologies. There's no magic sauce, no drop-in answer to "web scale," and certainly nothing fraught with difficulty. It's data. If you have a ton of it and it's valuable, it's worth mountains of expensive programmer time and effort to ensure its integrity, accessibility, and utility based on the storage and query requirements of an application.
- EasyCompany 16y agoTotally agree, as i am a beginner programmer, i am totally confused which database to use and when, particularly when. I have read up on so many, so many blog posts that contradict each other, i have looked into coudb, cassandra, mysql, neo4j, hbase, persevere and a few more. I have just decided to learn each one well and judge as my knowledge grows, so i have started with mysql and couchdb.
- moron4hire 16y agoPersonally, I love Postgres; I've been burned by MySQL in the past. Here's the thing, you will be infinitely more employable if you know SQL well, and you'll easily retrain from one RDBMS to another if a better SQL database comes along.
- Devilboy 16y agoYou should try a RBDMS too :P
- artsrc 16y agoThere aren't any relational databases doing any thing useful, only non relational databases, like those based on SQL.
- silentbicycle 16y agoTo clarify this comment a bit: The conventional RDBMSs people refer to as relational databases (Oracle, Postgres, MySQL, SQLite, etc.) shoot for compatibility with the SQL standard, which diverges from the relational model. For example, you can have duplicate rows in a table, which doesn't make any sense in the (set-based) relational model. SQL is not "purely" relational. If you read Chris Date's books (I recommend starting with _An Introduction to Database Systems_), he really hammers this point. There are people who hate SQL because it's too relational, and there are people who hate SQL because it's not relational enough.
- alecco 16y agoDon't forget MonetDB (performance) and SQLite (simplicity) if your project is mostly reading.