Формат файла IFP

Navigation:  TCP/IP Сервер БД ИРБИС64 > Структура файлов БД ИРБИС64 > Структура инверсного файла и форматы записей >

Формат файла IFP

Previous pageReturn to chapter overviewNext page

В этом разделе:

Обыкновенный формат записи IFP

Специальный формат записи IFP

Модификация записей файла IFP

 

Файл IFP содержит список ссылок для каждого термина словаря.

Список ссылок может быть представлен в 2-х различных форматах. Выбор формата размещения ссылок осуществляется при загрузке словаря из файла Lk1 (этот файл формируется после отбора и сортировки терминов) в зависимости от общего числа ссылок для данного термина. Обыкновенный формат – это заголовок блока и набор упорядоченных ссылок. По превышении определенного числа ссылок (MIN_POSTINGS_IN_BLOCK - в данной реализации 256) формат включает специальный блок и набор блоков обыкновенного формата размер которых определяется по следующей схеме:

блоки 4,8,16,32 Kb для общего числа ссылок соответственно 256-32000 ; 32000-64000 ; 64000-128000 ; 128000 и более.

Такая схема оптимизирует работу с диском в процессе инвертирования записи в базах данных, характеризующихся большим количеством ссылок на термин.

 

Обыкновенный формат записи IFP

Запись состоит из заголовка и упорядоченного набора ссылок.

 

Ссылка

имеет следующий формат:

Число бит        Параметр

1PMFN – номер записи;

32PTAG – идентификатор поля назначенный при отборе терминов в словарь;
32POCC – номер повторения;

32        PCNT – номер термина в поле.

 

Заголовок

имеет следующий формат:

Число бит        Параметр

2LOW – младшее слово смещения на следующую запись(если нет  0);

32        HIGH – старшее слово смещения на следующую запись(если нет  0);

3TOTP – общее число ссылок для данного термина(только в первой записи) ;число ссылок в данном блоке(в следующих записях);

32SEGP - число ссылок в данном блоке;
32SEGC – вместимость записи в ссылках.

Признак последнего блока – LOW=HIGH= -1

 

Специальный формат записи IFP

В этом случае первой записью является специальный блок, который представляет собой заголовок (обыкновенного формата), в котором смещения имеют специальные значения = -1001, и набор входов следующего формата:

Число бит        Параметр

4POSTING – 1-я ссылка из записи обыкновенного формата;

5LOW – младшее слово смещения на следующую запись(если нет  0);

32        HIGH– младшее слово смещения на следующую запись(если нет  0);

Число входов кратно 4. Записи, на которые ссылается специальный блок связаны между собой как описано выше. Причем общее количество ссылок для данного термина сохраняется только в специальном блоке.

 

Модификация записей файла IFP

При выполнении актуализации инверсного файла могут создаваться новые дополнительные записи при добавлении новых ссылок. В этом случае создается новая запись размером  равным общему количеству ссылок, если нет специального блока, и размером, равным количеству ссылок в данной записи, если есть. Новая запись создается таким образом, чтобы не нарушалась возрастающая последовательность следования ссылок. Новая запись связывается с существующими через поле NXT_, ссылки распределяются равномерно между старой и новой записью.

 


См. также:

Структура инверсного файла и форматы записей