如何设计具有不同唯一 ID 的数据点(值和时间戳)的关系数据库?

How to design a relational database that has data points (a value and a timestamp) for different unique IDs?

数据库应该包含有关不同虚拟机实例的信息。每个 VM 都有一个唯一的 ID、一个用户和一个 "is running" 标签。此外,对于每个 ID,都有过去一小时内 CPU 利用率的数据点列表。

我正在考虑创建两个 table:

  1. 实例(ID、用户、正在运行)

  2. 数据点(ID、值、时间戳)

table 2 看起来像这样:

+-----+-------+-----------+
| ID  | Value | Timestamp |
+-----+-------+-----------+
| ID1 |     . |         . |
| ID1 |     . |         . |
| ID1 |     . |         . |
| ID2 |     . |         . |
| ID2 |     . |         . |
| ID2 |     . |         . |
+-----+-------+-----------+

必须在 table 中针对与其关联的数据点数量重复唯一 ID。我想知道这种设计是否可行?

在您的数据点 table 中,您可能需要 4 列。 ID 将是一个外键,链接到您的实例 table.

因此您需要添加一个数据点 ID 以具有数据点的唯一标识符

Rgds

该设计将适用于以下 datapoints table 修改:

  • 将主键定义为(ID,时间戳)
  • 添加外键约束(datapoints.ID -> instances.ID)

其他选项:

  • 添加数据点项目编号,例如 item_num,因此主键将为 (ID, item_num)
  • 添加 datapoint_id 列作为主键并使(ID、时间戳)唯一