Хелен Борри - Firebird РУКОВОДСТВО РАЗРАБОТЧИКА БАЗ ДАННЫХ

Здесь есть возможность читать онлайн «Хелен Борри - Firebird РУКОВОДСТВО РАЗРАБОТЧИКА БАЗ ДАННЫХ» весь текст электронной книги совершенно бесплатно (целиком полную версию без сокращений). В некоторых случаях можно слушать аудио, скачать через торрент в формате fb2 и присутствует краткое содержание. Город: Санкт-Петербург, Год выпуска: 2006, ISBN: 2006, Издательство: БХВ-Петербург, Жанр: Базы данных, Программирование, на русском языке. Описание произведения, (предисловие) а так же отзывы посетителей доступны на портале библиотеки ЛибКат.

Firebird РУКОВОДСТВО РАЗРАБОТЧИКА БАЗ ДАННЫХ: краткое содержание, описание и аннотация

Предлагаем к чтению аннотацию, описание, краткое содержание или предисловие (зависит от того, что написал сам автор книги «Firebird РУКОВОДСТВО РАЗРАБОТЧИКА БАЗ ДАННЫХ»). Если вы не нашли необходимую информацию о книге — напишите в комментариях, мы постараемся отыскать её.

Рассмотрены вопросы, необходимые разработчику для создания клиент-серверных приложений с использованием СУБД Firebird, явившейся развитием СУБД Borland Interbase 6. Содержится обзор концепций и моделей архитектуры клиент/сервер, а также практические рекомендации по работе с клиентскими библиотеками Firebird. Детально описаны особенности типов данных SQL, язык манипулирования данными (Data Manipulation Language, DML), а также синтаксис и операторы языка определения данных ( Data Definition Language, DDL). Большое внимание уделено описанию транзакций и приведены советы по их использованию при разработке приложений. Описано программирование на стороне клиента и сервера написание триггеров и хранимых процедур, создание и использование событий базы данных, обработка ошибок в коде на сервере и многое другое. Материал сопровождается многочисленными примерами, советами и практическими рекомендациями.
Для разработчиков баз данных

Firebird РУКОВОДСТВО РАЗРАБОТЧИКА БАЗ ДАННЫХ — читать онлайн бесплатно полную книгу (весь текст) целиком

Ниже представлен текст книги, разбитый по страницам. Система сохранения места последней прочитанной страницы, позволяет с удобством читать онлайн бесплатно книгу «Firebird РУКОВОДСТВО РАЗРАБОТЧИКА БАЗ ДАННЫХ», без необходимости каждый раз заново искать на чём Вы остановились. Поставьте закладку, и сможете в любой момент перейти на страницу, на которой закончили чтение.

Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать
Почему низкая селективность наносит ущерб

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

Рис 182 иллюстрирует этот двоичный механизм в простейшей форме Когда - фото 26

Рис. 18.2 иллюстрирует этот двоичный механизм в простейшей форме

Когда появляются дублирующие значения, они помещаются в первый узел в начало "цепи" других дубликатов - это то, что происходит со значением ghi на нашей диаграмме. Такая структура называется цепочкой дубликатов.

Цепочки дубликатов [58] В этом месте разговор идет со слов Ann Harrison, "матери InterBase".

Цепочка дубликатов сама по себе является замечательной - все неуникальные индексы имеют ее. Изменение сегмента значения или удаление строки является дорого- стоящим, если цепочка дубликатов очень длинная. Одно из самого плохого, что вы можете сделать в базе данных Firebird - определить таблицу с миллионом строк, каждая из которых имеет одно и то же значение ключа для вторичного индекса, а затем удалить все эти строки. Последний сохраненный дубликат появляется в начале списка, а первый сохраненный дубликат - в конце. Обычно удаление начинается с первой сохраненной строки, затем удаляется вторая и т.д. Код обработки индекса будет проходить через всю цепь дубликатов для каждого удаления, всегда отыскивая нужную запись в самой последней позиции. Цитата Ann Harrison: "Это перемешивает кэш так, как вы никогда не видели".

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

Инструментарий для индекса

Стандартная поставка Firebird содержит множество инструментов и приемов для получения состояния индексов и поддержания их в хорошей форме.

* Для получения значения селективности и других значимых характеристик индексов используйте анализатор статистики данных gstat. Позже в этой главе мы рассмотрим, как gstat может рассказать вам о ваших индексах.

* Инструментом для пересчета селективности индекса является оператор SET STATISTICS (обсуждаемый в следующем разделе), SET STATISTICS не пересоздает индекс.

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

Использование SET STATISTICS

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

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

Оператор SET STATISTICS заново вычисляет селективность индекса. Этот оператор может быть выполнен в интерактивной сессии isql или запущен в приложении ESQL. Для выполнения оператора SET STATISTICS вы должны быть соединены с базой данных как пользователь, создавший индекс, как пользователь SYSDBA или (в POSIX) как пользователь с привилегиями операционной системы root.

Синтаксис:

SET STATISTICS INDEX ИМЯ;

Следующий оператор заново вычисляет селективность индекса в базе данных employee.gdb:

SET STATISTICS INDEX MINSALX;

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

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Похожие книги на «Firebird РУКОВОДСТВО РАЗРАБОТЧИКА БАЗ ДАННЫХ»

Представляем Вашему вниманию похожие книги на «Firebird РУКОВОДСТВО РАЗРАБОТЧИКА БАЗ ДАННЫХ» списком для выбора. Мы отобрали схожую по названию и смыслу литературу в надежде предоставить читателям больше вариантов отыскать новые, интересные, ещё непрочитанные произведения.


Отзывы о книге «Firebird РУКОВОДСТВО РАЗРАБОТЧИКА БАЗ ДАННЫХ»

Обсуждение, отзывы о книге «Firebird РУКОВОДСТВО РАЗРАБОТЧИКА БАЗ ДАННЫХ» и просто собственные мнения читателей. Оставьте ваши комментарии, напишите, что Вы думаете о произведении, его смысле или главных героях. Укажите что конкретно понравилось, а что нет, и почему Вы так считаете.

x