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

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

Содержание


15.4. Оптимизация банка данных
15.5. Ревизия банка данных
Ревизия всего банка
Подобный материал:
1   ...   38   39   40   41   42   43   44   45   ...   53

15.4. Оптимизация банка данных


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

Для проведения оптимизации предназначено окно диалога «Оптимизация банка» (см. Рис. 15.11). Для вызова этого окна на экран, следует выбрать в Главном меню Администратор  Оптимизация  Банка данных.



Рис. 15.11. Окно диалога «Оптимизация банка».

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

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

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

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

Следует отметить, что флажки «Шифровать» и «Сжимать», при открытии окна диалога «Оптимизация банка», установлены также как они были установлены при создании банка.

Если Вы установите флажок «Большая модель», после проведения оптимизации, с банка будет снято ограничение на размер не более 4 Гб. Это ограничение связано с файловой системой FAT32, которая не поддерживает файлы большего размера. Если Вы хотите воспользоваться этой функцией, Вам потребуется перенести банк на NTFS раздел и работать с ИСУБД «CronosPlus» из систем Windows NT, 2000 или Windows XP. Данный параметр устанавливается при создании банка и может быть изменен при проведении оптимизации.

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

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

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



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

После того как оптимизация банка будет завершена, система выведет на экран сообщение о размере банка до и после оптимизации.

15.5. Ревизия банка данных

Виды ревизии


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

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

Для того чтобы начать выполнения того или иного вида ревизии, нужно подключить банк к системе, а затем выбрать в Главном меню Администратор  Ревизия  <тип ревизии>.
  • Ревизия структуры банка позволяет обнаружить такие ошибки описания структуры, как корректность установления ссылок, корректность описания словарных баз банка, наличие индексов в идентифицирующих наборах и т.д.

При выборе данного вида ревизии на экран выводится окно диалога «Ревизия структуры банка данных». В этом окне нужно указать файл для фиксирования найденных ошибок и нажать кнопку «Выполнить». При наличии ошибок, система предложит просмотреть файл отчета, в котором будут зафиксированы найденные ошибки. В противном случае на экран будет выведено сообщение «Ошибок в структуре не обнаружено».
  • Ревизия системных файлов банка оптимизирует служебные файлы crosys.dat и crosys.tad. Данный вид ревизии используется в тех случаях, когда при работе с банком данных возникают проблемы, указывающие на ошибки в системных данных. При выборе данного типа ревизии система выполняет оптимизацию служебных файлов подключенного банка и выводит на экран сообщение «Ревизия и оптимизация системных файлов завершена».
  • Ревизия внешних файлов отличается от ревизии системных файлов только тем, что система работает с системными файлами, указанными пользователем, а не файлами подключенного банка. При выборе данного типа ревизии на экран будет выведено стандартное для Windows-приложений окно диалога «Открытие файла». Вам необходимо «найти» с помощью этого окна диалога каталог, в котором содержится банк данных ИСУБД «CronosPlus». В этом каталоге следует указать один из служебных файлов банка crosys.dat или crosys.tad и нажать кнопку «Открыть». Система проведет ревизию указанного Вами файла, после чего на экран будет выведено сообщение «Ревизия и оптимизация системных файлов завершена».
  • Ревизия форм ввода и ревизия выходных форм позволяет обнаружить те формы, элементы которых ссылаются на несуществующие поля, базы, «вложенные» формы». При выборе данного вида ревизии на экран выводится окно диалога «Ревизия форм ввода»/«Ревизия выходных форм». В этом окне нужно указать файл для фиксирования найденных ошибок и нажать кнопку «Выполнить». При наличии ошибок, система предложит просмотреть файл отчета, в котором будут зафиксированы найденные ошибки. В противном случае на экран будет выведено сообщение «Ошибок в формах не обнаружено».

Ревизия всего банка


Если Вы проводите ревизию всего банка, на экране появляется окно диалога «Ревизия банка данных» (см. Рис. 15.13).



Рис. 15.13. Окно диалога «Ревизия банка данных».

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

Если же флажок «Формировать файл ошибок» не установлен, после завершения ревизии, система выведет сообщение о количестве найденных ошибок, а затем срезу предложит исправить эти ошибки (или автоматически исправит их сама).

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

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

Следует отметить, что этот вид контроля является исключительным в том смысле, что он проводится отдельно. При этом исправление (построение системного списка) происходит сразу, т.е. если Вы устанавливаете соответствующий флажок, банк не должен использоваться во время проведения ревизии ни одним другим пользователем. Иначе система не сможет провести ревизию. Если же данный вид контроля не выполняется при проведении ревизии, до того момента, когда начнется исправление ошибок, банк может использоваться другими пользователями.
  • Контроль «состава записей баз» предназначен для проверки соответствия каждой записи банка определенной базе данных и восстановления верного соответствия.
  • В процессе обмена данными между банками (подробнее о проведении обмена данными см. главу 12) могут возникать ошибки, связанные с появлением фиктивных записей. Под фиктивной записью понимается запись, не прошедшая идентификацию, например из-за прерывания процесса обмена или какого-то системного сбоя. Т.е. фиктивная запись не является ошибочной, содержит значения и отличается от обычных записей только тем, что не имеет системного номера. При проведении ревизии такие записи будут обнаружены. В зависимости от того, какое значение Вы выберете в списке, соответствующем контролю «фиктивных записей», фиктивные записи могут быть восстановлены (т.е. будет проведена идентификация записей, после чего им будут присвоены системные номера) или удалены. Если Вы укажете в списке значение «Не проверять», фиктивные записи не будут восприниматься системой как ошибки и просто останутся в банке.
  • Контроль «пустых значений» предполагает просмотр системой всех множественных полей записей банка, поиск среди значений каждого поля пустых значений и их удаление.
  • Аналогичным образом осуществляется контроль «одинаковых значений», в результате проведения которого, среди значений множественных полей обнаруживаются и удаляются (кроме одного) одинаковые значения.
  • Как Вы уже знаете, не множественное поле может иметь только одно значение. При проведении контроля «значений не множественных полей», система просматривает значения всех не множественных полей записей банка и выявляет те не множественные поля, которые имеют более одного значения. При исправлении таких ошибок, все значения не множественного поля, кроме первого, удаляются.
  • Контроль «длины полей» заключается в просмотре значений полей всех записей банка и, в случаях, когда длина значения превышает длину, определенную для данного поля, «отсечении» (удалении) той части значения, которая превышает допустимую длину.
  • При контроле «типа полей», значения полей всех записей банка проверяются на соответствие типа поля. В случае, когда значение и тип поля не совпадают, значение поля удаляется.
  • Как Вам уже известно, значениями Словарных полей являются коды, которые могут быть декодированы системой в соответствующие понятия. Но при этом код сохраняется как значение поля даже при отсутствии (отключении) словаря. Контроль «кода на отсутствие в словаре» предполагает просмотр системой значений Словарных полей всех записей банка и выявление тех кодов, которые отсутствуют в словаре. Данная ошибка не исправляется системой, т.к. причиной ее возникновения может быть временное отсутствие (отключение) словаря или использование другого словаря.
  • Контроль «корректности полей типа “Файл”» предполагает проверку всех полей данного типа, значения которых были удалены. Дело в том, что значением поля типа Файл является ссылка на запись специальной служебной базы (не доступной пользователю). В этой базе хранятся сами файлы. При выполнении данного вида контроля, система просматривает все файлы, хранящиеся в специальной служебной базе, и удаляет те из них, на которые нет ссылок из полей типа Файл.
  • Контроль «ссылок на связанные базы» заключается в проверке корректности установления связей между записями. Проверяются ситуации, когда, например, запись базы «А» ссылается на запись базы «Б». Но при этом запись базы «Б» не имеет ссылки на эту запись базы «А». Для исправления подобных ошибок, Вы можете выбрать в списке, соответствующем данному виду контроля, одно из трех значений:
  • «Восстанавливать» - система записывает в сложное поле записи базы «Б» ссылку на соответствующую запись базы «А»;
  • «Не проверять» - соответствие ссылок записей друг на друга не проверяется;
  • «Удалять» - система удаляет из сложного поля записи базы «А» ссылку на запись базы «Б».

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

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

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



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

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

По окончании ревизии система запрашивает подтверждение (в соответствии с заданными параметрами ревизии) и приступает к исправлению найденных ошибок. Более подробно эти действия системы были рассмотрены выше.