5 ms·
Cassandra was immature when this work was started (late 2011). The team was also much more familiar with the ins and outs of operating mysql.
by econner 11y ago
Cassandra was immature when this work was started (late 2011). The team was also much more familiar with the ins and outs of operating mysql.
- halayli 11y agoTechnical debt is not an excuse to use the wrong tool. This is how you end up having a hammer. Cassandra was mature by late 2011 and we were using it in production back then (billions of records).
- econner 11y agoThe mapping tables are used to store relationships between objects, not to define shard locations. The shard mapping is encoded in the object id. In any case, I would have a knee jerk reaction to not trust any database system that hit 1.0 a month before I wanted to start using it, especially for mission critical core data.
- acveilleux 11y agoDoubly so when everything is catching fire around you from how overloaded it all is.
- wereHamster 11y agoFor this very reason many projects nowadays jump directly from 0.x to 2.x :) 2 is the new 1.
- luckycharms810 11y agoTechnical debt doesn't necessarily arise from using the wrong (a.k.a pretty similar but with a few features less than what you need) tool. In my experience, it's more likely that technical debt arises from trying to use thew newest tool (which looks to be a silver bullet) rather than trusting your own experiences. It's surprising to me that people are willing to move to a completely different technology rather than extend and repurpose what your engineers are already familiar with.
- joantune 11y agoAlthough, by using an existing tool, as long as it fits your needs, you'll avoid reinventing the proverbial wheel, ofcourse at the expense of learning something new.. which might not be a bad thing..
- _up 11y agoBut if you also need to use MySql anyway, Cassandra would be the "wrong Tool". Because you would have to maintain two DBMS instead of one. You want to minimize complexity and this can mean implementing your own Sharding.
- richardwhiuk 11y agoThere's also no transactions in Cassandra, although that's questionable useful given that the unidirectional map may be on a different machine.
- brianwawok 11y agoCassandra has very lightweight transactions. What he lists as his transaction use case (update if unmodified) I do right now with Cassandra and an IF clause and a timestamp... i.e. update foo set x = y AND last_modified_timestamp = 456789 IF last_modified_timestamp = 12345 see http://www.datastax.com/dev/blog/lightweight-transactions-in-cassandra-2-0 http://www.datastax.com/dev/blog/lightweight-transactions-in...
- deleted 11y ago[deleted]