AstraRegul
Релиз 2025.08.15.00
×

4.2.1.2.2.1.1.1. Размер тела записи истории значений

 
Тело записи содержит значение, качество, метку времени сервера (в 6.x серверах сохраняется опционально) и необходимую служебную информацию. Размер тела записи истории значений зависит от типа значения:
для булевского, числовых типов и метки времени – фиксированный размер;
для строк – в зависимости от размера строки.
 
В таблице ниже приведен размер элементов тела записи для различных типов данных:
Тип значения
Метка времени и необходимая служебная информация
Тело записи
Метка времени, байт
Служебная информация внутри БД, байт
Качество, байт
Дескриптор типа значения, байт
Значение, байт
bool
8
4
4
1
0
int1, uint1
1
int2, uint2
2
int4, uint4
4
int8, uint8
8
float
4
double
8
string*
4 + N
* – Для строковых значений сигналов размер тела записи зависит от длины строки. N – количество байт, занимаемых строкой.
 
Строки сохраняются в кодировке UTF-8, поэтому каждый символ занимает 1 или 2 байта:
латинские символы, цифры – 1 байт;
кириллические символы – 2 байта.
 
Соответствие размеров тела записи типам с учетом и без учета метки времени приведено в следующей таблице:
 
Тип значения
Размер тела записи без учета метки времени, байт
Размер записи с учетом метки времени, байт
bool
5
17
int1, uint1
6
18
int2, uint2
7
19
int4, uint4
9
21
int8, uint8
13
25
float
9
21
double
13
25
string*
9 + N
21 + N
* – Для строковых значений сигналов размер тела записи зависит от длины строки. N – количество байт, занимаемых строкой.