Чтение онлайн

на главную - закладки

Жанры

Firebird РУКОВОДСТВО РАЗРАБОТЧИКА БАЗ ДАННЫХ

Борри Хелен

Шрифт:

CREATE DATABASE '/opt/databases/mydatabase.fdh' USER 'ADMINUSR'

PASSWORD 'yyuryyub'

PAGE_SIZE 8192

Факторы, влияющие на выбор размера страницы

Выбор размера страницы не является вопросом применения некоторого "правила". Будет неплохо начать с размера по умолчанию - 4 Кбайт. Когда придет время настраивать базу данных для улучшения производительности, вы сможете поэкспериментировать, создавая резервную копию базы данных и восстанавливая ее с другим размером страницы. Подробности см. в главе 38.

Выбранный вами

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

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

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

Набор символов по умолчанию

Строго рекомендуется, чтобы все - или почти все - ваши текстовые данные были в кодировке U.S. ANSII [35] .

35

Для "русскоязычных программ" следует использовать набор символов WIN1251.- Прим. перев.

CREATE DATABASE '/opt/databases/mydatabase.fdb'

USER 'ADMINUSR' PASSWORD 'yyuryyub'

PAGE_SIZE 8192

DEFAULT CHARACTER SET ISO8859_1;

Подробнее о наборах символов см. в главе 11. Доступные наборы символов представлены в приложении 8.

Получение информации о базе данных

После того как вы создали базу данных и подтвердили создание (commit), вы можете в isql отобразить ее детали, используя команду SHOW DATABASE:

SQL> SHOW DATABASE;

Database: /opt/databases/mydatabase.fdb

Owner: ADMINUSR

PAGE_SIZE 8192

Number of DB pages allocated = 176

Sweep interval = 20000

Forced Writes are ON

Transaction - oldest = 5

Transaction - oldest active = 6

Transaction - oldest snapshot = 6

Transaction - Next = 9

Default character set: ISO8859_1

SQL>

Интервал очистки и транзакции

Информацию о чистке базы данных и интервале очистки см. в разд. "Гигиена базы данных" далее в этой главе.

Значения старейшей ("старейшей заинтересованной"), старейшей активной и следующей

транзакций являются важными для производительности и поведения сервера. Подробности см. в части VI.

Принудительная запись

Принудительная запись (forced writes) является синонимом синхронной записи. На платформах, которые поддерживают асинхронную запись, базы данных Firebird создаются по умолчанию с принудительной записью. Фраза "отключение принудительной записи" означает переключение поведения при записи с синхронного на асинхронное.

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

* Асинхронная запись приводит к тому, что новые или измененные данные хранятся в кэше файловой системы. Когда эти данные будут записаны на диск, зависит от поведения операционной системы.

! ! !

ПРИМЕЧАНИЕ. Платформа Windows 95 не поддерживает асинхронную запись.

. ! .

Обсуждение отключения принудительной записи и инструкции по ее установке при использовании gfix см. в главе 39.

Базы данных из одного и нескольких файлов

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

быть преобразована в многофайловую в любое время при использовании ALTER DATABASE (обсуждается в этой главе) или инструмента gbak (см. главу 38).

Задание размера файла для однофайловой базы данных

Вы можете указать размер первичного файла в страницах следом за атрибутом PAGE_SIZE. Например, следующий оператор создает базу данных в файле размером 10 000 страниц:

CREATE DATABASE '/opt/databases/mydatabase.fdb'

USER 'ADMINUSR' PASSWORD 'yyuryyub'

PAGE_SIZE 8192

LENGTH 10000 PAGES

/* ключевое слово PAGES необязательно */

DEFAULT CHARACTER SET WIN1251;

Если база данных растет до размера большего, чем указанный размер файла, то Firebird расширяет первичный файл за пределы LENGTH, пока не будет достигнут предел, существующий для файловой системы, или не будет исчерпано дисковое пространство. Чтобы не допустить этого, вы можете хранить базу данных более чем в одном файле; дополнительные файлы называются вторичными файлами. Файлы могут размещаться на нескольких дисках.

Создание многофайловой базы данных

Многофайловые базы данных являются результатом старых файловых систем, где абсолютный предел размера файла 2 Гбайта (FAT32, ext2) или 4 Гбайта (система NTFS с 32-битовым вводом/выводом). Они используются для решения общей проблемы пользователей при разрушении базы данных InterBase в случае превышения лимита, когда сервер начинает перезаписывать данные файла с самого начала. Такая же проблема появляется, когда база данных исчерпает размер вторичного файла. Firebird просто отказывается осуществлять запись, когда последний файл достигнет лимита. Следовательно, разрушение существующих данных здесь предотвращено, хотя последующие записи данных будут потеряны.

Поделиться:
Популярные книги

Камень Книга седьмая

Минин Станислав
7. Камень
Фантастика:
фэнтези
боевая фантастика
6.22
рейтинг книги
Камень Книга седьмая

Я сделаю это сама

Кальк Салма
1. Магический XVIII век
Любовные романы:
любовно-фантастические романы
5.00
рейтинг книги
Я сделаю это сама

Кровь на эполетах

Дроздов Анатолий Федорович
3. Штуцер и тесак
Фантастика:
альтернативная история
7.60
рейтинг книги
Кровь на эполетах

Сыночек в награду. Подари мне любовь

Лесневская Вероника
1. Суровые отцы
Любовные романы:
современные любовные романы
5.00
рейтинг книги
Сыночек в награду. Подари мне любовь

Кодекс Крови. Книга ХII

Борзых М.
12. РОС: Кодекс Крови
Фантастика:
боевая фантастика
попаданцы
5.00
рейтинг книги
Кодекс Крови. Книга ХII

Найди меня Шерхан

Тоцка Тала
3. Ямпольские-Демидовы
Любовные романы:
современные любовные романы
короткие любовные романы
7.70
рейтинг книги
Найди меня Шерхан

Идеальный мир для Лекаря 4

Сапфир Олег
4. Лекарь
Фантастика:
фэнтези
юмористическая фантастика
аниме
5.00
рейтинг книги
Идеальный мир для Лекаря 4

Релокант. По следам Ушедшего

Ascold Flow
3. Релокант в другой мир
Фантастика:
фэнтези
попаданцы
рпг
5.00
рейтинг книги
Релокант. По следам Ушедшего

Мир-о-творец

Ланцов Михаил Алексеевич
8. Помещик
Фантастика:
альтернативная история
5.00
рейтинг книги
Мир-о-творец

Протокол "Наследник"

Лисина Александра
1. Гибрид
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Протокол Наследник

Кодекс Охотника. Книга VII

Винокуров Юрий
7. Кодекс Охотника
Фантастика:
фэнтези
попаданцы
аниме
4.75
рейтинг книги
Кодекс Охотника. Книга VII

Попаданка в семье драконов

Свадьбина Любовь
Попаданка в академии драконов
Любовные романы:
любовно-фантастические романы
7.37
рейтинг книги
Попаданка в семье драконов

Новые горизонты

Лисина Александра
5. Гибрид
Фантастика:
попаданцы
технофэнтези
аниме
сказочная фантастика
фэнтези
5.00
рейтинг книги
Новые горизонты

Скрываясь в тени

Мазуров Дмитрий
2. Теневой путь
Фантастика:
боевая фантастика
7.84
рейтинг книги
Скрываясь в тени