Виктор Гольцман - MySQL 5.0. Библиотека программиста

Здесь есть возможность читать онлайн «Виктор Гольцман - MySQL 5.0. Библиотека программиста» — ознакомительный отрывок электронной книги совершенно бесплатно, а после прочтения отрывка купить полную версию. В некоторых случаях можно слушать аудио, скачать через торрент в формате fb2 и присутствует краткое содержание. Жанр: Программирование, на русском языке. Описание произведения, (предисловие) а так же отзывы посетителей доступны на портале библиотеки ЛибКат.

MySQL 5.0. Библиотека программиста: краткое содержание, описание и аннотация

Предлагаем к чтению аннотацию, описание, краткое содержание или предисловие (зависит от того, что написал сам автор книги «MySQL 5.0. Библиотека программиста»). Если вы не нашли необходимую информацию о книге — напишите в комментариях, мы постараемся отыскать её.

Эта книга предназначена для всех, кто желает освоить СУБД MySQL. Для ее чтения вам не нужны никакие специальные знания – достаточно быть пользователем Windows. Вы узнаете, как установить и запустить MySQL, как создать собственную базу данных, как работать с данными при помощи команд SQL, как администрировать базу данных и оптимизировать ее работу. Разработчики веб-приложений на языках PHP, Perl и Java найдут в этой книге полезные сведения по использованию базы данных MySQL в соответствующих приложениях. Для всех операций, которые вам предстоит выполнить, приводятся подробные пошаговые инструкции, все основные действия поясняются на примере учебной базы данных.

MySQL 5.0. Библиотека программиста — читать онлайн ознакомительный отрывок

Ниже представлен текст книги, разбитый по страницам. Система сохранения места последней прочитанной страницы, позволяет с удобством читать онлайн бесплатно книгу «MySQL 5.0. Библиотека программиста», без необходимости каждый раз заново искать на чём Вы остановились. Поставьте закладку, и сможете в любой момент перейти на страницу, на которой закончили чтение.

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

Интервал:

Закладка:

Сделать

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

• Хранение мультимедийных данных (изображений, аудио– и видеозаписей) не в базе данных, а в файловой системе.

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

• Подбор типов столбцов с наименьшим размером.

Например, если значения в целочисленном столбце не могут превышать 10 000, целесообразно объявить его как SMALLINT, а не INT или MEDIUMINT. Определить диапазон возможных значений столбца вы можете с помощью запроса

SELECT <���Список столбцов> FROM <���Имя таблицы> PROCEDURE ANALYSE();

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

• Указание свойства NOT NULL для всех столбцов, для которых это возможно.

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

Исключением из правила минимизации объема данных является использование статического формата таблиц. Другими словами, если в таблице с типом MyISAM отсутствуют символьные столбцы, допускающие значения переменной длины (такие как VARCHAR, TEXT, BLOB и т. п.), то такая таблица по умолчанию сохраняется в статическом формате; если же в таблице есть столбцы с переменной длиной значений, то по умолчанию применяется динамический формат. Как правило, динамические таблицы занимают значительно меньше места, чем статические, однако статические таблицы работают намного быстрее.
...

Примечание

Вы также можете явно указать формат таблицы MyISAM с помощью опционального параметра ROW_FORMAT. Описание этого параметра приведено в конце данного раздела.

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

OPTIMIZE TABLE <���Имя таблицы>;

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

Для максимально эффективного использования индексов необходимо учитывать следующие факты.

• Индекс замедляет добавление и обновление строк таблицы. Поэтому рекомендуется создавать только те индексы, которые будут использоваться в часто выполняемых запросах.

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

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

INDEX (date,product_id,customer_id)

то он ускорит выполнение запросов

SELECT * FROM Orders WHERE date=CURDATE();

SELECT * FROM Orders

WHERE date=CURDATE() AND product_id=3;

но будет бесполезен при выполнении запросов

SELECT * FROM Orders WHERE product_id=3;

SELECT * FROM Orders

WHERE product_id=3 AND customer_id=533;

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

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

Интервал:

Закладка:

Сделать

Похожие книги на «MySQL 5.0. Библиотека программиста»

Представляем Вашему вниманию похожие книги на «MySQL 5.0. Библиотека программиста» списком для выбора. Мы отобрали схожую по названию и смыслу литературу в надежде предоставить читателям больше вариантов отыскать новые, интересные, ещё непрочитанные произведения.


Отзывы о книге «MySQL 5.0. Библиотека программиста»

Обсуждение, отзывы о книге «MySQL 5.0. Библиотека программиста» и просто собственные мнения читателей. Оставьте ваши комментарии, напишите, что Вы думаете о произведении, его смысле или главных героях. Укажите что конкретно понравилось, а что нет, и почему Вы так считаете.

x