【发布时间】:2013-03-03 04:10:30
【问题描述】:
我们有一个数据库,其中包含我们所有软件产品的各种记录。有些记录是针对特定软件的,有些记录是由不同软件共享的。
不同的团队将锁定、编辑和更新数据库。
当我们发布不同的软件时,我们只是抓住这个单一的大数据库并与软件一起发布。
问题来了:
- 数据库可能会变得更大,并且它包含一个软件的不必要信息,因为它包含所有软件产品的所有记录。
- 人们似乎很容易搞砸:您正在编辑的数据库可能不是最新的;更改可能会破坏其他软件等...
我想知道这种问题的通常解决方案是什么,以下是我能想到的解决方案:
- 保留母数据库并为不同的软件生成子数据库。
不同的团队可以使用 Web 界面将记录添加到母数据库,并在发布时运行一个任务,该任务基本上从母数据库复制必要的表并为发布创建一个新数据库。 - 不要使用母数据库。不同的软件使用不同的数据库。但是如何处理共享记录呢?
【问题讨论】:
-
这个数据库对您的客户是只读的,还是他们使用您的软件写入数据库?
-
数据库对客户是只读的。
标签: database sqlite database-design architecture