Инструментальная Система Управления Базами Данных руководство пользователя

Вид материалаРуководство пользователя

Содержание


8. Индексы и индексация полей
Построение и удаление индексов
Быстрый способ выделения полей
Подобный материал:
1   ...   18   19   20   21   22   23   24   25   ...   53

7.4. Шаблоны.


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

Создать новый шаблон и отредактировать имеющиеся можно нажав на стрелку кнопки в окне ввода/коррекции, просмотра или графического представления связей, и выбрав из ниспадающего меню пункт «Шаблоны». На экране появится окно диалога «Список шаблонов» (см. Рис. 7.3).




Рис. 7.3. Окно диалога «Список шаблонов».

Если у Вас нет ни одного шаблона, то доступными являются только две кнопки: «Закрыть» и «Новый». Нажав первую, Вы вернетесь в предыдущее окно. Нажмите кнопку «Новый» для создания нового шаблона. Появится окно диалога «Настройка параметров шаблона» (см. Рис. 7.4).




Рис. 7.4. Окно диалога «Настройка параметров шаблона».

В этом окне, для каждой базы данных, отметьте те поля, которые Вы хотите видеть на схеме. В строке «Название шаблона» введите имя и нажмите на кнопку «ОК».

Если отмечено простое поле, его значение будет выводиться в качестве подписи объекта на схеме. Устанавливая флажки напротив названий баз в сложных полях, Вы тем самым будете добавлять в схему связи текущего объекта с объектами отмеченных баз.

По умолчанию, при создании нового шаблона, отмечены все сложные поля и те простые поля, которые имеют статус Информативное.

В списке шаблонов (см. Рис. 7.3) появится Ваш новый шаблон. Теперь Вы можете, с помощью соответствующих кнопок, удалить его или изменить его параметры. Выделив нужный шаблон в списке и нажав на кнопку «Выбрать», Вы откроете окно «Графическое представление связей». Схема в нем будет построена в соответствии с вашим шаблоном (см. Рис. 7.1).


Примечание: Здесь Вы можете изменять/создавать шаблоны только для текущей базы. Создать шаблоны для всех баз можно с помощью пункта меню Параметры  Связи в графическом виде. Работа со вкладкой «Шаблоны» этого окна полностью аналогична работе с окном диалога «Список шаблонов» (см. Рис. 7.3). Единственное отличие заключается в том, что здесь возможно выбрать шаблон по умолчанию, который будет вызываться по нажатию на кнопку . Чтобы сделать это, поставьте точку напротив названия нужного шаблона.

8. Индексы и индексация полей

Преимущества и недостатки индексирования


Как уже говорилось ранее (см. раздел 1.7), в ИСУБД «CronosPlus» работу с данными (поиск, сортировку и т.д.) можно заметно ускорить, создав индексы для полей. Это может потребоваться, если количество записей в Вашем банке данных достаточно велико (порядка нескольких тысяч и более). Процесс создания индексов называется индексацией.

Напомним, что такое индекс. Для системы это почти то же самое, что для человека предметный указатель в книге. Т.е. список, в котором перечислены все присутствующие в базе значения индексированного поля, где для каждого такого значения указаны записи, в которых оно фигурирует. Например, если для базы данных, накапливающей информацию о клиентах, создан индекс по полю «Фамилия», система создаст для себя некоторое подобие предметного указателя, который будет содержать примерно такую информацию: Иванов упоминается в записях №1, №94 и №1037; Петров упоминается в записях №46 и №72 и т.д. Система будет обращаться к своему «предметному указателю», при поиске информации в банке данных, точно также как человек обращается к предметному указателю в книге. Это значительно ускорит процесс получения результатов. Потому что для системы быстрее просмотреть небольшой список, в поисках требуемого значения и затем перейти к нужной записи, чем считывать и анализировать все записи в базе поочередно.

Итак, основным преимуществом построения индексов является уменьшение времени поиска записей в банке данных. Почему же система не строит индексы автоматически? Дело в том, что существуют и недостатки индексирования. Каждый построенный индекс увеличивает объем банка данных, т.е. требуется больше времени на другие операции с данными, например, на проведение оптимизации структуры банка, обмен данными между двумя банками и т.д. Кроме того, в случае повреждения индекса, поиск по соответствующему полю будет практически невозможен до того момента, пока соответствующий индекс не будет перестроен заново.

Таким образом, рекомендуется строить индексы только для тех банков, которые хранят большой объем записей и только для тех полей, поиск по которым выполняется достаточно часто. Т.е., если Вы, например, постоянно выполняете запросы по полю «Фамилия», будет целесообразно построить для этого поля индекс. А для таких полей как «Пол», по которым поиск производится значительно реже, строить индекс нет необходимости.

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

Нужно обязательно строить индексы по полям, осуществляющим связь между базами данных, созданными из внешних банков данных (подробнее см. главу 13), а также по полям, хранящим код и понятие словарной базы (см. раздел 4.5).

Построение и удаление индексов


Построить или удалить индексы (как в рамках одной базы, так и для нескольких баз одновременно) Вы можете в окне диалога «Создание/удаление индексов» (см. Рис. 8.1). Чтобы начать работу с ним, выберите АдминистраторИндексные массивы.



Рис. 8.1. Окно диалога «Создание/удаление индексов».

В верхней части окна диалога расположена строка «Имя базы», значение которой выбирается из списка. В этот список включены все базы данного банка. Ниже находится «Список полей базы», в котором перечислены все простые поля выбранной базы. Причем рядом с названием каждого поля в графе «Тип» приведена иконка, обозначающая тип данного поля. Некоторые из них могут быть выделены зеленым (по этим полям индексы уже построены) или красным цветом (индексы созданы, но не построены)38. Первый неинформационный столбец (он выделен серым цветом) предназначен для пометки полей. Для перестроения индексов (например, в случае их повреждения) удобно использовать возможность быстрого выделения полей с помощью кнопки «Выделить» (подробнее см. следующий пункт данного раздела).
  • Чтобы удалить построенные ранее индексы, выберите из списка нужную базу, а затем пометьте поля, для которых будут удалены индексы. После этого нажмите кнопку «Удалить». Система запросит подтверждение «Удалить индексы для всех помеченных полей?». Выберите кнопку «ОК» если хотите, чтобы индексы были удалены, или кнопку «Отмена» для отмены операции.
  • Чтобы создать индексы по полям базы, необходимо выбрать ее название в списке «Имя базы». В таблице «Список полей базы» появятся все простые поля этой базы. С помощью левой кнопки мыши, нужно отметить те поля, по которым требуется создать индекс, а затем нажать кнопку «Создать». Система запросит подтверждение «Создать индексы для всех помеченных полей?». Если Вы нажмете кнопку «ОК», для помеченных полей будут созданы индексы, а соответствующие иконки будут выделены красным цветом. Чтобы отменить создание индексов, нажмите кнопку «Отмена». Следует отметить, что создание индексов не занимает много времени, однако работа с такими полями (поиск информации, индексация и большинство других режимов) будет невозможна. Т.е. создание индексов это промежуточная стадия, предшествующая их построению, которую Вы можете не использовать.
  • Для построения индексов по полям базы, следует, как и при их создании, выбрать из списка нужную базу и пометить те поля, для которых будут строиться индексы. Нажмите кнопку «Построить». Система запросит подтверждение «Построить индексы для всех помеченных полей?». Для продолжения выберите «ОК». На экран будет выведено специальное окно, предназначенное для контроля, за процессом построения индексов (см. Рис. 8.2), а окно диалога «Создание/удаление индексов» будет автоматически закрыто. Поэтому, если требуется построить индексы по нескольким базам, следует сначала пометить индексируемые поля в каждой базе, а затем нажать кнопку «Построить».



Рис. 8.2. Окно, предназначенное для контроля, за процессом построения индексов.

В окне предназначенном для контроля, за построением индексов Вы можете увидеть:
  • Имя базы и поля, по которому строятся в данный момент индексы;
  • Общее количество записей в базе, а также число обработанных записей этой базы;
  • Общее количество слов во всех обрабатываемых записях базы и число обработанных слов;
  • Ход построения индекса поля (прогрессию), а также общую прогрессию построения индексов по всем помеченным Вами полям.

Процесс построения индексов может быть прерван в любой момент, для этого нужно нажать кнопку «Стоп», которая находится в нижней части окна или комбинацию клавиш . Система запросит подтверждение «Прервать построение индексов? ».

В случае отрицательного ответа (нажатие кнопки «Нет»), система продолжит индексацию. Если получен положительный ответ (нажатие кнопки «Да»), система прервет процесс формирования индексов. В этом случае, индексы будут построены только для тех записей, которые система успела отобрать до прерывания, а для остальных полей индексы будут только созданы (но не построены). Иконки этих полей будут выделены в системе красным цветом. Как уже отмечалось выше, работа (поиск информации, индексация и большинство других режимов) с такими полями будет невозможна.

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

Быстрый способ выделения полей


В окне диалога «Создание/удаление индексов» Вы можете пометить поля, для которых уже созданы или построены индексы; причем не только в одной базе, но и во всем банке сразу. Для этого нажмите кнопку «Выделить». На экране появится окно диалога «Выделение полей» (см. Рис. 8.3).



Рис. 8.3. Окно диалога «Выделение полей».

Как видно на Рис. 8.3., это окно разделено на две области: «Где выделить?» и «Что выделить?». С помощью этого окна, Вы можете выполнить одно из трех действий, установив соответствующий параметр в области «Что выделить?»:
  • выделить все поля с недостроенными индексами;
  • выделить все индексные поля;
  • выделить все поля;
  • снять все выделения.

Вам также следует решить, в какой части банка будет произведено/снято выделение: во всем банке или в текущей базе. Это можно сделать с помощью группы параметров области «Где выделить?».

После того, как Вы выбрали действие и область этого действия, нажмите кнопку «Выполнить». Окно диалога «Выделение полей» будет закрыто, и, в зависимости от параметров выделения, система пометит соответствующие поля, или наоборот все пометки будут сняты. После этого, для построения/создания индексов (как и после пометки «вручную») используйте кнопку «Построить»/«Создать».