measurements
measurements generic ve düşük yoğunluklu standart ölçümler için kullanılır. Bu tablo bütün telemetry verisinin ana deposu değildir.
Sıcaklık, nem, basınç, bazı register-türevi sayısal alanlar veya ileride enerji-dışı scalar veriler için esnek bir yapı gerekir.
Bu tabloda aynı stream içinde aynı değişkenin birden fazla kez yazılması engellenir. Bu nedenle (stream_id, variable_id) birleşik alanı unique kabul edilir.
FK Davranis Notlari
| FK | ON DELETE | ON UPDATE | Not |
|---|---|---|---|
measurements.stream_id -> streams.id | CASCADE | CASCADE | Stream silinirse generic olcum cocuklari yetim kalmaz. |
Kolonlar
| Kolon | Tip | Null | Anlamı |
|---|---|---|---|
id | int | hayır | Ölçüm satırı anahtarı |
stream_id | int | hayır | Accepted stream ilişkisi |
variable_id | varchar(30) | hayır | Hangi değişken olduğu |
value | decimal(18,6) | evet | Ölçüm değeri |
calibrated | boolean | hayır | Kalibrasyon uygulanmış mı |
synthesized | boolean | hayır | Sentez kuralıyla mı üretildi |
create_time | timestamp | hayır | Oluşturma zamanı |
İndeksler
| İndeks | Amacı |
|---|---|
(stream_id, variable_id) unique | Aynı stream içinde aynı değişkenin tek kayıt olmasını sağlamak için |
(variable_id) | Değişken bazlı sorguları hızlandırmak için |
Örnek Kayıtlar
- TEMP
- HUM
{
"id": 8,
"stream_id": 2,
"variable_id": "TEMP",
"value": 24.700000,
"calibrated": false,
"synthesized": false,
"create_time": "2026-04-03T10:25:00Z"
}
Özet: Stream 2 için sıcaklık (TEMP) generic ölçüm olarak kaydedilmiş; segment tablolarında olmayan scalar alanlar bu tabloda tutulur.
{
"id": 9,
"stream_id": 2,
"variable_id": "HUM",
"value": 48.200000,
"calibrated": false,
"synthesized": false,
"create_time": "2026-04-03T10:25:00Z"
}
Özet: Aynı stream için nem (HUM) kaydı da ayrı satırda tutulur; unique kuralı sayesinde stream_id + variable_id kombinasyonu tekilleştirilir.