我正在构建一个站点,该站点实现了 David Allen 的“完成任务”,该站点可以接收您的电子邮件、Facebook 新闻源、您在 Twitter 上关注的人的推文,并且计划提供更多服务。问题是我不是 DBA,我不确定如何设计数据库,以便在向站点添加功能时,我不必为了存储它而人为地破坏人们的原始数据(例如,我想在将来的某个时候添加获取 RSS 提要的功能,但我不确定如何做到这一点而不会弄得一团糟)。
我已经使用 DBDesigner 4 记下了我的初步想法,下面是图表和 SQL。
一些注释有助于澄清事情。
有人可以指出我正确的方向吗?如果建议,我也愿意考虑使用 NoSQL 数据库。感谢您的时间和考虑。
这是 SQL 创建脚本,以防万一有人想看到它。
CREATE TABLE Pop3 (
domain VARCHAR NOT NULL,
host VARCHAR NULL,
port INTEGER UNSIGNED NULL,
ssl BOOL NULL,
PRIMARY KEY(domain)
)
TYPE=InnoDB;
CREATE TABLE Imap (
domain …
Run Code Online (Sandbox Code Playgroud)