После указания определений полей и всех модификаторов, MySQL позволяет задать тип с помощью необязательного атрибута TYPE. Рассмотрим пример.
В распоряжении разработчика баз данных имеется множество различных типов, каждый из которых имеет определенные преимущества. Детальнее различные типы таблиц обсуждаются в следующих разделах.
Таблицы MylSAM
Формат таблиц MyISAM (TYPE = MYISAM) является доработанным и улучшенным вариантом изначального типа ISAM. Сейчас он является стандартным типом таблиц MySQL. Таблицы MyISAM оптимизированы по степени сжатия и скорости работы и переносимы между различными типами операционных систем и платформ (например, одна и та же таблица MyISAM может использоваться как в ОС Windows, так и в ОС UNIX). Формат MyISAM поддерживает таблицы больших размеров (более 4 Гбайт) и позволяет индексировать по столбцам типа BLOB и ТЕХТ. Для экономии дискового пространства таблицы и индексы могут сжиматься - совсем не лишняя возможность при хранении больших полей типа BLOB или ТЕХТ. Поля типа VARCHAR имеют фиксированную или регулируемую динамически длину в зависимости от хранящихся в них данных. Кроме того, этот формат позволяет производить выборку как по префиксу ключа, так и по всему ключу.
Таблицы MyISAM оптимизированы для работы с MySQL и могут иметь фиксированную или динамически изменяющуюся длину. MySQL автоматически проверяет повреждение таблиц MyISAM во время запуска и может восстанавливать их в случае обнаружения ошибок. Файлы таблиц и табличных индексов могут храниться в различных местах (или даже в различных файловых системах). А дефрагментация обеспечивает повышенный коэффициент производительности даже для таблиц с большим числом добавлений, обновлений и удалений.
Обеспечивая совместимость
В MySQL предусмотрен дескриптор таблиц ISAM, необходимый прежде всего для обеспечения совместимости с устаревшими таблицами. Но на практике следует избегать создания таблиц, использующих этот формат, т.к. новые форматы MyISAM и InnoDB уже значительно улучшены почти по всем характеристикам.
Таблицы ISAM
Таблицы ISAM (ТУРЕ = ISAM) аналогичны таблицам MyISAM, хотя в них значительно меньше доработок, улучшающих рабочие характеристики. Так как индексы таблиц ISAM не сжимаются, они используют меньше системных ресурсов, чем их "собратья" MyISAM. Для индексов ISAM требуется больше дискового пространства, что может вызывать проблемы при работе в маломощных операционных средах.
Подобно таблицам типа MyISAM, ISAM-таблицы могут иметь столбцы фиксированной или переменной длины, но максимальная длина ключа в случае применения формата ISAM меньше. Этот формат не работает с таблицами, длина которых превышает 4 Гбайт, и таблицы данного формата непереносимы между различными платформами. Кроме того, формат ISAM более подвержен фрагментации, снижающей скорость обработки запросов, и характеризуется ограниченной поддержкой компрессии индексов/данных.
Таблицы HEAP
Таблицы HEAP (TYPE = HEAP) - это таблицы, которые размещаются в оперативной памяти с использованием хешированных индексов, благодаря которым повышается скорость работы (независимые оценки свидетельствуют о том, что при обработке запросов INSERT они работают на 30% быстрее, чем аналогичные таблицы типа MyISAM). Работать с ними можно так же, как и с обычными таблицами типа MyISAM или ISAM. Однако хранящиеся в них данные доступны только во время работы сервера MySQL и пропадают при остановке этого сервера. Несмотря на то, что таблицы HEAP дают несомненный выигрыш в производительности, на практике они используются довольно редко вследствие их функциональных ограничений.
Недостаток оперативной памяти
Вследствие того, что объем таблиц типа HEAP ограничен только объемом оперативной памяти, MySQL снабжен встроенной защитой от непреднамеренного использования таблицами этого типа всей имеющейся в системе оперативной памяти. Таблицы HEAP не поддерживают столбцы типа BLOB и ТЕХТ, и размеры этих таблиц не могут превышать заданных переменной max_heap_table_size. Размер таблицы НЕАР может также быть задан путем добавления свойства MAXROWS в оператор CREATE TABLE:
CREATE TABLE heapexample (id INT(4), title VARCHAR(24)) TYPE=HEAP MAX_ROWS=10;
ТОП-10 популярных
Для работы с вещественными числами в MySQL предусмотрено три типа данных - это типы FLOAT, DOUBLE, DECIMAL. Числовой тип FLOAT...
БОЛЬШЕ БОЛЬШИХ LCD-мониторов
Процесс вытеснения с рынка мониторов с электронно-лучевой трубкой (CRT) продолжается. О смещении акцентов в пользу LCD-мониторов теперь заявляют даже те...
Процесс вытеснения с рынка мониторов с электронно-лучевой трубкой (CRT) продолжается. О смещении акцентов в пользу LCD-мониторов теперь заявляют даже те...
Больше больших LCD-мониторов
Процесс вытеснения с рынка мониторов с электронно-лучевой трубкой (CRT) продолжается. О смещении акцентов в пользу LCD-мониторов теперь заявляют даже те...
Процесс вытеснения с рынка мониторов с электронно-лучевой трубкой (CRT) продолжается. О смещении акцентов в пользу LCD-мониторов теперь заявляют даже те...
НОУТБУК с блестящим экраном
Eсли выпустившая ноутбук фирма предлагает его в качестве «замены настольному ПК», то это должно подразумевать под собой нечто большее, чем...
Eсли выпустившая ноутбук фирма предлагает его в качестве «замены настольному ПК», то это должно подразумевать под собой нечто большее, чем...
Иди и пиши. TravelMate C100
Планшетный компьютер платформы Tablet PC обязан в первую очередь быть легким, способным достаточно долго работать без подзарядки батарей. Эти требования...
Планшетный компьютер платформы Tablet PC обязан в первую очередь быть легким, способным достаточно долго работать без подзарядки батарей. Эти требования...
Магнито-оптический дисковод DynaMO
Cейчас, когда традиционные флоппи-дисководы на долгие годы замерли в своем развитии, поиск альтернативных носителей продолжается, и ситуация, казалось бы, разрешилась...
Cейчас, когда традиционные флоппи-дисководы на долгие годы замерли в своем развитии, поиск альтернативных носителей продолжается, и ситуация, казалось бы, разрешилась...
Компьютер для гурманов.«Эксимер ДМ»
Российская компания «Эксимер ДМ», известная как производитель настольных компьютеров, рабочих станций, серверов и ноутбуков, выступила техническим спонсором проведения торжеств, посвященных...
Российская компания «Эксимер ДМ», известная как производитель настольных компьютеров, рабочих станций, серверов и ноутбуков, выступила техническим спонсором проведения торжеств, посвященных...
Для длинных строк, т.е. строк длиннее 255 символов, в MySQL предусмотрены типы BLOB (Binary Large Object, большой двоичный объект) и...
В дополнение к календарным типам, предназначенным для хранения даты и времени отдельно, MySQL также поддерживает гибридные типы данных DATETIME и...
Вообще, к изменению настроек сервера прибегают очень редко. В MySQL программа заранее настроена так, чтобы соответствовать самым распространенным и основным...
Все о MySQL. Типы таблиц
28-12-2009
<< Предыдущая статья | Следующая статья >> |
Все о MySQL. Сообщение об ошибке. Продолжение. | Все о MySQL. Таблицы BerkeleyDB |