我是数据库设计的新手,在尝试设计数据库时遇到了问题。这是我的系统:有 3 个不同的软件(SW_A、SW_B、SW_C)和 500-600 个用户。每个用户都可以使用任何软件并做一些工作。每件作品大约会被发送到数据库。每分钟 6 次。(用户和软件随机)我想要一个数据库来保存与软件相关的所有用户操作以进行存档,并且还想跟踪与这些软件相关的所有用户的即时操作。(仅针对每个软件的不同用户的最新操作)
所以我设计了某事。像那样:
表:SW_X_DATA_ARCHIVE
列 :
- 用户身份
- 数据_日期
- SW_A_ActionID
表:SW_X_INSTANT_DATA
列:
- 用户身份
- 数据_日期
- SW_X_ActionID
当新数据到来时,如果该 UserID 存在,它会更新 INSTANT_DATA 表的相关行,如果不存在则插入带有 UserID 和数据的新行。然后将相同的数据插入到 DATA_ARCHIVE 表中。
问题是:这种工作有更好的方法吗?意见也许? (我读过一些关于物化视图的文章,但不知道如何在这里使用它。) 谢谢