现在想设计一个数据库,在一些动态属性里面会有一些表。我可以选择像 MySQL 这样的传统 RDBMS 来使用 EAV 设计模型来实现它们。但现在我想尝试一些新的东西。听说NoSQL数据库可以轻松解决动态属性问题,我想在MongoDB和Cassandra之间选择一个。
以下是我要设计的数据库的一些情况:
该数据库中将有大约 200,000 个项目,并且该数据库将存储在单个服务器中。
当用户要使用这个数据库时,主要流程是:用户首先访问表A,得到表B的外键,然后访问表B,得到表C的外键。表C有很多固定的属性和一些动态属性。然后用户会从表C中得到一个元组,读取一些值然后修改这个元组的一些值,并且可以添加这个元组的一些动态值。
我会将几乎所有这些元组从 Excel 电子表格导入到我的 Java 数据库中。那么哪一个对Java的支持更好呢?
在我导入这些数据后,就不会再有任何插入或删除操作了。几乎所有外部用户的操作都是读取和更新。那么哪个数据库更适合这种情况。
我知道在这个小项目中没有必要使用 NoSQL 数据库,但我最近很想尝试学习一个。所以感谢您的回答,如果您对我有其他选择,那就太好了。