Индекс на база данни IRBIS
Материал от Wikipedia
Индексна базата данни IRBIS е специална структура, която е част от базата данни, която осигурява бързо търсене.
Терминътречникстана широко разпространен и всъщност се превърна в един вид заместител на понятиетоиндексв общността на IRBIS (вижте подразделРечник на бази данни).
Базите данни IRBIS използватинвертиран индекс, който обикновено се наричаинвертиран файл(използва се и терминътинвертиран файл).
Индекссе създава за всяка база данни на ИРБИС.
Езикът за заявки IRBIS се използва за формулиране на заявки, с помощта на които се извършва бързо търсене.
Съдържание
Речник на база данни
Честоречниксе използва като синоним на база даннииндекс. Въпреки че, строго погледнато,речникъте само част отиндекса, заедно съссписъка с връзки към индекса(вижте подразделСтруктура на индекса на базата данни IRBIS).
Забележка: потребителите са запознати с речника, представен директно в графичния интерфейс в редица работни станции на ИРБИС; Може би затова терминът "речник" е широко разпространен и всъщност се е превърнал в своеобразен заместител на понятието "индекс" в общността на ИРБИС.
Дефиницияиндексна базата данни IRBIS
Изграждането наиндекс(и поддържането му актуален) изисква дефинирането му. Дефинициите са:RTP за обърнат файлиактуализираща таблица.
TVP за обърнат файл
RTP за инвертирания файл– TRT, който определя правилата за избор на елементи за инвертирания индекс на базата данни IRBIS.
Файловата структура на всяка база данни предоставя единTTP за обърнатия файл. За подробности вжподразделRTP за обърнат файлна статияIRBIS файлове.
Типичните бази данни (база данни на електронен каталог, база данни с пълен текст и т.н.) съдържат съответните типичниTVPs за обърнатия файл.
Структураиндексна базата данни IRBIS
Индексе комбинация от две структури:речник на термините за търсенев двоична дървовидна структура исписък с връзки към индекса, съответстващ на всеки термин.
Речник на термините за търсене
Елементите, създадени отRTP за обърнатия файлсъставляват речник на термините за търсене в базата данни.
Списък с връзки към индекса
Системата свързва с всекитермин за търсенесписък синдексни връзки, които осигуряват необходимата връзка към записите. Всеки термин има толковаиндексни връзки, колкото се среща в базата данни.
Структура на връзката към индекса
Поддръжка на индекса
Инвертираният индекс в ИРБИС не е напълно автоматизиран и в определени ситуации може да се наложи намесата на администратора на базата данни на ИРБИС.
Могат да възникнат следните ситуации, които изискват поддръжка на индекса:
- Новите записи, въведени във файла с документа, не са достъпни при търсенето.
- Записите, които са били променени, могат да се търсят, но под старите инструменти за достъп.
- Изтритите записи все още се регистрират под своите членове за достъп, но самите записи не се показват.
- TWP за обърнат файле променен (резултатите от търсенето остават същите).
Има две операции в системата IRBIS, които актуализират индекса на базата данни, съответстващ наRTP за обърнатия файлисъдържание на база данни: това са операциисъздаване на речникиактуализиране на речник. Разликата им е в алгоритъма и характеристиките на приложението.
Флаг за актуализация
Флагът за актуализиране позволява всеки запис в базата данни да бъде маркиран катоактуализиранилинеактуализиран, което означава, че:
- записактуализиран– това означава, че обърнатият индекс отразява съдържанието му;
- записнеактуализиранозначава, че обърнатият индекс НЕ отразява съдържанието му.
Благодарение на използването на този флаг в системата IRBIS е възможно:
- установява наличието нанеактуализиранизаписи и съответно прави заключение за необходимостта от актуализиране наинвертирания индекс;
- изчислете съотношението наактуализираниинеактуализиранизаписи, според което да решите дали да актуализиратеобърнатия индексчрезсъздаване на речникилиактуализиране.
Създаване на речник
Създаването на речник е създаването на обърнат индекс с помощта наRTIs за обърнат файлвъз основа на всичкизаписи(документи) в базата данни.
Типични примери за ситуации, в които се извършва създаване на речник са:
- има значителен брой неактуализирани записи в сравнение с общия брой записи в базата данни;
- значителен брой текстове са добавени към пълнотекстовата база данни;
- TWP за обърнатия файле променен.
Алгоритъмът за създаване на речник включва три стъпки, които могат да се изпълняват отделно:
Актуализация на речника
Типични примериситуации, в които се извършва създаване на речник:
- броят на неактуализираните записи е малък в сравнение с общия брой записи в базата данни.
За описание на механизма за актуализиране на обърнат файл във връзка с промяна в единичен запис вижте статията Механизъм за актуализиране на запис.
Реорганизация на речника
Реорганизацията на речника е структурно преустройство наинвертиран файлс цел намаляване на размера на файла и увеличаване на скоростта на работа с него.
Възникването на необходимостта от реорганизиране на речника се дължи на факта, че в резултат на актуализирането на речника структурата на обърнатия файл може да се усложни и да се появят „празнини“, които реорганизацията елиминира.
Файловеиндексна базата данни на ИРБИС
Индексътна базата данни IRBIS се съхранява във файловата система под формата на три файла:речник на термините за търсеневъв файлове .n01 и .l01; списък синдексни връзкив .ifp файла.
В двоично дърво файлът .n01 съдържа възлите на дървото, а файлът .l01 съдържа листата. Листовите записи сочат към .ifp файла за връзка.
Структурата на записа е една и съща за .n01 и .l01 файлове. Размерът (дължината) на записа зависи от изпълнението (512, 1024, 2048, 4096). По този начин максималният размер на файловете .l01 и .n01 се определя като 2 GB * размер на записа. В тази реализация рекордният размер е 2048.
Основният адрес на запис на .n01 файла се съхранява като първи номер на запис.
Отместването при запис в .ifp файла се съхранява във файла .l01 и е с дължина 64 байта (само ниската дума на това отместване се използва в тази реализация).
.n01 и .l01 файлов формат
Файловете се състоят от записи (блокове) с постоянна дължина. Записите се състоят от три части: лидер,директория и ключове с променлива дължина.