我试图找出 SQL 或非 SQL 解决方案是否更适合创建事件数据库。我正在创建一个票务系统,类似于票务主。我知道对于任何一种数据库类型的存储都是简单的部分。决定因素是以下查询的性能:
事件基本上有 ID、NAME、LOCATION、VENUE、START DATE、END DATE
在关系模式中,我会有一个 EVENTS 表,一个用于单独存储日期的 DATES 表,因为事件可以发生在多个日期并且它们是可重复的,以及一个 VENUES 表,可以从中获取事件位置(国家、城市等)交叉引用。
我没有使用 no-SQL 数据库的经验,因此如果您投票支持 no-SQL,请建议您如何看待“架构”的组织方式以及哪个特定的数据库。
我希望这个问题足够具体。查询性能是决定性因素。
经过进一步考虑,我意识到这个问题更适合提炼出日期/时间函数的可用性,这些函数可以促进快速日期范围查询。我知道 MySQL 和 PostgreSQL 有这样的功能。在这一点上,PostgreSQL 在语法方面甚至看起来更好一些。我不知道 NoSQL 解决方案必须为此提供什么。
我知道系统当然可以在关系数据库中轻松建模。我也知道每个 no-sql 解决方案都是不同的。我想知道是否有人对特定的 no-sql 数据库有任何特定知识,可以引用为什么该特定数据库对解决方案有好处。