如果我必须开发一个
- 处理 CSV 文件并将输出存储在开源数据库中的核心 Java 应用程序
- 数据大小最初为 10 GB(从现有来源移植)
- 将以每月 1 GB 的速度增长
- 一个典型的事务可以获取 100,000 行
- 在给定时间可供 1000 个用户访问
并且可以选择
- MongoDB
- MySQL
- PostGresql
哪一个是数据库的最佳选择?
This compares MongoDB with MySQL
最佳答案
随着数据的增加,最好有一个易于扩展的数据库,而 SQL 不能平滑扩展,最终会中断,事实上,通常对于大数据,仅使用高可扩展的数据库。 但是您说条目可以相互关联,因此在这种情况下最好使用关系数据库,因为 NO-SQL 数据库可能会“失去”一些关联性。 就像@Craig Ringer所说,不要只考虑那些数据库,有很多不同的解决方案,它们各有优缺点(例如,redis非常非常快,但它几乎没有任何复杂的逻辑,因为它是一个简单的键值对)存储,或者 Cassandra 比 Mongo 更快,但更适合处理计划数据,Mongo 是一个文档数据库,因此可以在同一个 Collection 中存储任何类型的数据。
恕我直言,您应该尝试使用不同的数据库和用例设置一些基准测试 session ,并专注于您想要快速完成的事情,然后选择该领域中更好的。
关于mysql - MongoDB、MySQL 和 PostGreSQL 的比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29542391/