Вторичный индекс - Большая Энциклопедия Нефти и Газа, статья, страница 4
Мода - это форма уродства столь невыносимого, что нам приходится менять ее каждые шесть месяцев. Законы Мерфи (еще...)

Вторичный индекс

Cтраница 4


Как уже отмечалось, сегменты БЛОК и БОЛЬНИЦА расположены ниже сегмента ПАЦИЕНТ в иерархии, созданной вторичным индексом, так что если доступ к сегментам БЛОК и БОЛЬНИЦА осуществляется через вторичный индекс, SSA должны быть заданы в новой последовательности. На рис. 9.18 показан вызов, с помощью которого вы можете произвести выборку сегментов БЛОК и БОЛЬНИЦА, используя вторичный индекс. Это позволяет выяснить, в каком БЛОКЕ какой БОЛЬНИЦЫ находится определенный пациент, без выполнения поиска во всей базе данных.  [46]

Любое поле ( элемент данных) или группа из нескольких полей ( не более пяти), не обязательно смежных, могут быть объявлены вторичным ключом или базой для операций с вторичными индексами.  [47]

48 Реструктурированная иерархия. [48]

В том случае, когда вы применяете вторичную упорядоченность для выборки сегментов ПАЦИЕНТ посредством вызовов Get-Next, ваша программа строится фактически так же, как если бы физическая база данных была структурирована, как показано на рис. 9.16. В этом смысле использование вторичного индекса действительно прозрачно для вашей программы. Все, что вам следует знать, чтобы написать программу - это порядок предложений SENSEG в PSB. Однако вторичный индекс в определенных ситуациях выборки может оказать неблагоприятное воздействие на производительность вашей программы.  [49]

Вторичный индекс SLJRGINDX ( ИНДЕКС ОПЕРАЦИИ) может служить иллюстрацией другого средства вторичного индексирования, называемого разреженным индексированием. Вторичный индекс не обязательно должен содержать сегмент-указатель для каждого экземпляра сегмента-источника. Например, вторичный индекс SURGINDX может не содержать сегмент индексного указателя для каждого экземпляра сегмента НАЗНАЧЕНИЕ, особенно в тех случаях, когда сегмент НАЗНАЧЕНИЕ не специфицирует в качестве назначения операцию.  [50]

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

52 Системы инвертированных файлов. [52]

В отличие от систем первого типа первичный индекс отсутствует. Вторичные индексы применяются для прямой адресации записей, что существенно облегчает включение в файл новых записей, так как допускается их размещение в любом свободном участке файла. При включении записей осуществляется модификация индексов.  [53]

По существу, вторичный индекс - это маленькая, замкнутая база данных, хранящая совокупность индексных сегментов, которые указывают на сегменты в индексируемой базе данных. Вторичный индекс позволяет обрабатывать сегменты в порядке, отличном от ключевой последовательности. Каждый вторичный индекс имеет свое собственное DBD. Связь базы данных вторичных индексов с основной базой данных определяется специальными параметрами DBDGEN. Вопросы спецификации DBDGEN здесь не рассматриваются.  [54]

Аргумент первичного индекса или справочника связей обычно является первичным ключом записи. Аргумент вторичного индекса, как правило, является вторичным ключом.  [55]

В этой ситуации нужна вторая попытка с индексом, вполне определенным образом получаемым из того же заданного ключа. Существует несколько методов формирования вторичного индекса. Элементы получающегося списка могут либо помещаться в основную таблицу, либо нет; в этом случае память, где они размещаются обычно называется областью переполнения. Недостаток такого приема в том, что нужно следить за такими вторичными списками и в каждой строке отводить место для ссылки ( или индекса) на соответствующий список конфликтующих элементов.  [56]

57 Простой пример индексного файла. [57]

Возможно индексирование отношения с использованием атрибутов, отличных от первичного ключа. Данный тип индекса называется вторичным индексом и применяется в целях уменьшения времени доступа при нахождении данных в отношении. Простой пример индексного файла приведен на рис. 1.5. Обратите внимание, что если само отношение не упорядочено каким-либо образом и в нем могут присутствовать строки, оставшиеся после удаления некоторых кортежей, то индексный файл, напротив, отсортирован. Структура индексного файла может быть разной, но обычно используется некоторый вариант древовидной структуры, обеспечивающей быстрый поиск. Для пояснения выбрана структура индексного файла, показанного на рис. 1.5, но ее не следует воспринимать как образец практического проектирования.  [58]

При создании вторичных индексов имеет место компромисс между временем включения / удаления и временем поиска. Допустим, что используется S вторичных индексов и предполагаемое время поиска записи составляет 3 - s с, а время включения удаления - 0 1 ( s - - 1) с. Если в среднем производится 100 поисков на каждое включение или удаление, то при каком значении s мы получим минимальное вероятное время выполнения операции.  [59]

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



Страницы:      1    2    3    4    5