9.3. Структура таблиц базы данных

Полная структура таблиц базы данных, используемых DataparkSearch, описана в sql-скрптах создания структуры базы данных, находящихся в соответстувующих директориях поддиректории create.

Таблица 9-1. Структура таблицы server

rec_idУникальный идентификатор записи.
enabledФлаг включения записи для загрузки при старте indexer.
urlURL или его фрагмент или шаблон, указываемый в соответствующей команде.
tagЗначение тэга для этого ресурса.
categoryСсылка на запись в наблице categories, соответсвующей категории для данного ресурса.
command

=S - тип записи сервер

=F - типа записи фильтр

ordreКлюч сортировки, задающий порядок загрузки записей таблицы server при запуске indexer.
parentЕсли значение не ноль, запись содержит в поле url имя сервера, добавленного автоматически при индексировании. Значение этого поля равно url_id записи этой таблицы, на основании которой дабавлена эта запись.
weightВес данной записи при подсчёте рейтинга популярности документов.
pop_weightВес одной ссылки со страниц данного русурса. Рассчитывается автоматически. Изменнеие значения вручную никакого влияния не оказывает.

Остальные параметры серверов хранятся в таблице srvinfo, аналогичной по структуре таблице urlinfo. Значения некоторых параметров приведены в таблице ниже.

Таблица 9-2. Значения некоторых параметров серверов в таблице srvinfo

Значение snameВозможные значения sval.
AliasАлиас для указанного в поле server.url.
PeriodИнтервал между повторными индексированиями этого ресурса, задаваемый в секундах.
DeleteOlderЗадаёт сколько времени хранить проиндексированные документы в базе.
RemoteCharsetЗначение кодировки документа по умолчанию для данного ресурса.
DefaultLangЗначение языка документа по умолчанию для данного русурса.
Request.AuthorizationУчётные данные, используемые для доступа с использованием авторизации.
Request.ProxyИмя прокси-сервера, используемое при доступе через прокси-сервер.
Request.Proxy-AuthorizationАвторизация на прокси-сервере.
MaxHopsМаксимальная глубина перехода по ссылкам от корневого индеска.
IndexФлаг, указывающий индексировать или нет документы данного ресурса.
Follow

=0, "page"

=1, "path"

=2, "site"

=3, "world"

RobotsФлаг указывающий использование robots.txt для данного ресурса.
DetectClonesФлаг включения механизма определения "клонов".
MaxNetErrorsМаксимальное число ошибок сети для этой записи. Аналог команды MaxNetError в indexer.conf.
NetDelayTimeВремя задержки индексирования сети при обнаружении ошибки сети при его пролучении.
ReadTimeoutТаймаут ожидания получения документа с этого ресурса.
match_type

=0, DPS_MATCH_FULL - полное совпадение.

=1, DPS_MATCH_BEGIN - совпадает начало.

=2, DPS_MATCH_SUBSTR - шаблон является подстрокой проверяемой ссылки.

=3, DPS_MATCH_END - совпадает конец.

=4, DPS_MATCH_REGEX - шаблон является регулярным выражением, на соответствие которому проверяются ссылки.

=5, DPS_MATCH_WILD - используется шаблон файловой системы.

=6, DPS_MATCH_SUBNET - < пока нереализовано >.

case_sense

=1, - сравнивать без учёта регистра.

=0, - сравнивать с учётом регистра.

nomatch

=1, - соответствующими данной записи считаются URL, не совпадающие с указаным шаблоном.

=0, - соответствующими данной записи считаются ссылки, совпадающие с шаблоном.

Method

Задаёт действие, которое будет произведено с документами.

=Allow, - документы будут индексироваться, а также сканироваться на наличие новых ссылок.

=Disallow, - документы индекироваться и добавляться в базу не будут, если они уже находятся в базе, то они будут удалены.

=HrefOnly, - документы не будут индексироваться, а будут только просканированы на наличие новых ссылок.

=CheckOnly, - документы будут запрашиваться методом HTTP HEAD, а не HTTP GET, т.е. будет запрошено не содержимое документа, а только краткая информация о нем: размер, дата модификации, Content-Type.

=Skip, - документы будут пропущены при очередной индексации.

=CheckMP3, - документы будут проверяться на наличие тэгов MP3 несмотря на наличие Content-Type, отличного от audio/mpeg.

=CheckMP3Only, - аналогично CheckMP3, однако при отсутствии тэгов MP3 indexer не будет запускать внутренний или внешний парсер, предусмотренный для полученного Content-Type.

=TagIf, - документы будут помечены заданым тэгом.

=CategoryIf, - документы будут помечены заданой категорией.

=IndexIf, - документы будут проиндексированы, если указаная секция подпадает под заданый шаблон.

=NoIndexIf, - документы индексироваться и добавляться в базу не будут, если указаная секция подпадает под заданый шаблон.

Section

Имя секции, используемой для сравнения с шаблоном для методов IndexIf и NoIndexIf.