首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >数据库设计:配置数据、实际数据、日志数据

数据库设计:配置数据、实际数据、日志数据
EN

Stack Overflow用户
提问于 2011-06-02 12:22:59
回答 4查看 174关注 0票数 0

我想知道是否有任何典型的方法来区分这类数据。

我必须在db中列出设备(例如),而且每个人都有

  • 配置数据
  • 实际数据
  • 日志数据

我通常将Config/实际数据混合在同一个表中,而另一个表用于日志数据,

这似乎是一个常见的问题,所以我想知道是否有任何标准的方法来做到这一点。

编辑:

这里有一个例子

街上的信号灯:

  • Config数据=位置(街道交叉口),类型(针对乘客,车辆),etc..
  • Actual数据= colorstate=red,绿色,步行,停车。正在修复的etc..
  • Log数据=日期/时间+彩色状态+(任何其他需要记录的实际数据)

谢谢

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2011-06-02 17:46:45

您可能会这样划分它(懒惰地使用sql语法和类型):

`

signal_config

id (键)位置类型

signal_log

signal_id,时间戳(复合键) color_stat (红色,黄色,绿色) functioning_state‘

在我看来,有些东西是不会改变信号的,比如它的位置和类型,以及它的修复状态和颜色的变化。有了这个表,您就可以在特定的一天查询灯是否工作和红色的时间。

票数 1
EN

Stack Overflow用户

发布于 2011-06-02 18:32:00

我想这里的术语有点混乱。

在我看来,“配置数据”听起来像是“业务密钥”或“候选键”:一组数据(可能是不变的),它唯一地标识着实体:主街尽头只有一个交通灯。

您所称的“实际数据”似乎是实体的属性,随着时间的推移而变化。

所以我不认为把它们放在同一张桌子上有设计上的问题。

另外,将“日志数据”(审计跟踪、历史记录)记录在单独的表中也是一个非常好的主意。

票数 1
EN

Stack Overflow用户

发布于 2011-06-02 15:36:29

看起来,正确地将这些信息规范化为几个表会使您受益。

看起来你不应该把它都塞进一张桌子里。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6214441

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档