日历应用程序的数据库架构

时间:2013-07-24 00:30:40

标签: database database-design architecture calendar

我正在创建一个日历应用程序,其中每个日期都有3种状态之一:可用,可用和不可用。试图找出适合这种情况的最佳架构。

一种想法可能是拥有一个带有字段state的UserDate模型。这样做的问题是数据库每年会有#-of-users- x 365行 - 对于一个规模适中的应用来说,它似乎会增长得太快。

另一个想法可能是拥有默认状态,并且只有当用户表示他们在该日期的可用性与默认值不同时才创建UserDate对象。这看起来很复杂。

之前有没有人处理过这种情况?有关最佳方法的任何建议吗?

1 个答案:

答案 0 :(得分:0)

创建新用户时,您不希望在接下来的50年中插入记录。只有在存在非默认值时才创建UserDate对象。

如果您可能有很多具有相同状态的连续日期,则可以考虑为用户存储一系列日期。例如,如果它们在整个12月都不可用,那么这可以表示为单行。

考虑要从数据库中提取的信息类型,以及每种可能的设计有多难。