我需要在系统中存储项目(通过id)的投票。我估计它将有大约500万张选票。 每次投票包括:
“userdata”字段将用于在投票结束时检测作弊者。在投票过程中,所有投票都应该登记。
我需要能够检索两种信息:
投票的插入不应该是一个大问题(它大约是每秒2,所以我猜任何数据库都可以很好地处理它)
我倾向于像mongoDB这样的东西,因为迭代DB并创建过滤器需要“脚本”。但也许它可以通过SQL在存储过程中解决,或者键值(Redis?5mi票应该适合小于2 GB的RAM)DB?
答案 0 :(得分:2)
我认为图形数据库是您需要的。 我可以推荐OrientDB(http://www.orientechnologies.com/)。这是一个非常酷的全功能开源图形数据库。它是用Java编写的,但您可以使用不同的客户端驱动程序。 1.0稳定释放几乎存在(<2周)。 如果您想尝试一下,可以免费在云中使用它(http://www.nuvolabase.com/),因此您无需安装和配置它。 它是架构完整,架构混合和架构较少,支持图形,sql,集群等等,您可以根据需要灵活地建模数据。