如何设计具有不同唯一 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:
实例(ID、用户、正在运行)
数据点(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、时间戳)唯一
数据库应该包含有关不同虚拟机实例的信息。每个 VM 都有一个唯一的 ID、一个用户和一个 "is running" 标签。此外,对于每个 ID,都有过去一小时内 CPU 利用率的数据点列表。
我正在考虑创建两个 table:
实例(ID、用户、正在运行)
数据点(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、时间戳)唯一