AstraRegul
Релиз 2025.08.15.00
×

4.2.1.2.1.1.4. Блок кластеризации

 
Блок кластеризации читает подтверждённые записи (сохранённые на диск) из журнала в последовательности их добавления и выполняет их обработку:
Распределяет по секциям по ключам элементов
Внутри каждой секции добавляет в накопительный InMem-фрагмент (InMem - In-Memory, в оперативной памяти) и выполняет индексацию
По мере накопления InMem-фрагменты сохраняются в хранилище - во фрагменты данных
 
Размер секции ключей элементов - 32768 ключа (т.е. максимум 32768 временных ряда на секцию). Ключи элементов выделяются последовательно при их регистрации в реестре объектов, соответственно, в базе данных по мере накопления элементов могут содержаться такие секции ключей: [1, 32768], [32769, 65536], [65537, 98304], ...
InMem-фрагмент для каждой отедльной секции ключей содержит индекс, секционированный по суткам.
 
Секции с такими же параметрами (32768 ключей и 1 сутки) порождаются при сохранении InMem-фрагментов в хранилище.
 
Данные, сохранённые в InMem-фрагменты, становятся доступными для чтения сразу после индексации.
 
Отдельным образом обрабатываются записи о блокировках удаления регионов данных (сохраняются клиентами также) через журнал транзакций). Эти записи хранятся особым образом и сразу сохраняются в соответствующий раздел.
 
Работа блока кластеризации регулируется параметрами раздела data/write в настройках работы базы данных.