0

我做了一些初步的阅读。

配置文件与数据库表
类型用于 sql 表中的“状态”列

表:

[video]
    id
    title
    format_id (foreign key)
    language_id (foreign key)
    aspect_ratio_id (foreign key)

[formats]
    id
    name

[languages]
    id
    name

[aspect_ratios]
    id
    name

最后 3 个表(格式、语言、方面比率)不会有太大变化(如果有的话)。即当我们支持它时,我可能会添加一种新语言。

那么将这些类型的表(仅引用,几乎没有任何更新/插入)提取到独立的 yaml 文件中并具有处理视图的应用程序逻辑是否是一种好习惯?或者我应该以表连接的(小)成本将所有内容保留在数据库中以维护数据和关系完整性?

4

2 回答 2

1

如果它们很少更改并且可以在部署之前或部署时定义,我更喜欢文件,YAML 或 JSON。

于 2012-07-06T20:51:10.037 回答
1

您是否需要在这些表上强制执行参照完整性(即外键)?如果是,则将它们保存在数据库中并让 DBMS 为您强制执行。其他类型的完整性也是如此。

你打算和其他人一起加入这些表吗?如果是,请将它们保存在数据库中,让 DBMS 完成繁重的工作。

您是否需要以事务方式更新它们(尽管很少)?如果是,那么让 DBMS 为您提供ACID

您需要备份这些数据吗?如果是,就让它与常规数据库备份一起发生。

您是否需要确保所有客户端的数据都相同?如果是,那么像数据库这样的中心位置是一个明显的候选者。

等等等等……

于 2012-07-06T22:40:43.503 回答