|
|
|
|
|
by andrewvc
3360 days ago
|
|
Well, in your article you mentioned that you tried to use Cassandra for one task and had to jettison it because of unexpected performance problems. You had to re-approach the problem with a whole other DB. I would say contradicts the point you're making. I'm not arguing that most problems need a custom database, only a minority do. I'd say that this problem is borderline on which direction to go. Databases are very leaky abstractions as you all discovered. The nice thing about custom code is that you don't have leaky abstractions. The bad thing about custom code is that you have a large new untested surface area. In the case of your application the requirements are so minimal, a bitfield plus a log, I'd say its a wash. Programmers today forget that things like flat files exist and are useful. It's a shame, because you wind up with situations where people just assume they need a giant distributed datastore for everything. What you're doing in that case is trading architectural complexity for code complexity. Now, if its the case that all data in your org goes in one data store to keep things consistent, great, that makes sense. But for a one off app I just don't buy it. |
|