НАЧАЛО >> Провайдер логического объединения нескольких БД >> Назначение и состав функций📄 Скачать в DOCX
Модуль DP_raidb0 используется для логического объединения нескольких баз данных в одну виртуальную базу. В настройках провайдера задается список подчиненных БД, веса чтения и записи. При поиске модуль последовательно обращается к подчиненным базам, суммирует количество найденных записей и маркирует MFN префиксом базы. При чтении и записи составной MFN разбирается обратно на dbid и локальный mfn.
Основные параметры секции PROVIDER:
SUBDBS_COUNT - количество подчиненных баз.SUBDBSCFG_N_NAME - идентификатор подчиненной базы; имя с префиксом - исключает базу из записи.SUBDBSCFG_N_READWEIGHT - вес базы при чтении и поиске.SUBDBSCFG_N_WRITEWEIGHT - вес базы при распределении новых записей.TIMEOUT, SRCPREFIX, SRCPOSTFIX - общие параметры провайдера.Дополнительно может использоваться глобальная настройка OPTIONS['BindSearches']: она ограничивает список подчиненных БД для отдельных поисковых выражений.
Основные функции:
InitProvider, Connect, Disconnect, NoOperation, exception, CallOwnerFunction.GetDbListBySearch, ParseMfn.RecSearch, Search, GetTermList.RecRead, RecReadAndFormat, RecVirtualFormat, RecIfUpdate.RecWrite, GetMaxMfn, GetFile, SetFile, WriteToIni.Модуль не хранит записи самостоятельно; он маршрутизирует операции в реальные базы через i128f->GetDb(). Проверки Help не должны выполнять реальные поисковые или записывающие операции в подчиненных БД. Для Help-gate достаточно проверки структуры страниц, синтаксиса PHP, загрузки описаний функций и DOCX-экспорта Help/ModuleRoot&module=DP_raidb0.