AstraRegul
Релиз 2024.08.31.00
×

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

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