在研究了关系数据库、文档存储、图形数据库和面向列的数据库之后,我得出结论,像 Cassandra 这样的东西最适合我的需求。特别是,动态添加列的能力并且不需要严格的模式,这对我来说是一笔交易。这似乎很好地弥合了相当新颖的图形数据库和经过时间考验的 rdbms 之间的差距。
但我担心如何在单个节点上运行 Cassandra。像许多其他人一样,我只能从少量数据开始,所以从多个节点开始是不切实际的。基于另一个出色的 SO 问题:您为什么不像通常使用 MySQL 那样从“单一和小型”Cassandra 服务器开始?我的结论是,Cassandra 确实可以作为单节点运行,只要愿意放弃多节点设置带来的可用性等好处。
似乎也有一些方法可以在 RDBMS 中实现动态添加字段,例如这里讨论的 SO:How to design a database for User Defined Fields?在某种程度上,这将模仿无模式。
所以我现在想了解 Cassandra 和 MySQL 在单节点设置上如何比较特性和性能?在我的情况下,您会给某人什么建议 - 从一个简单的 RDBMS 开始,并计划/打算稍后切换到 Cassandra?还是从 Cassandra 开始?