SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 14.09.2010 11:18:26

Shrek-Ogre
Участник
Зарегистрирован: 14.09.2010
Сообщений: 2

Myisam или InnoDB

В общем читал-читал мануалы и прочее.

В итоге.

Делал статистику в связке PHP+Mysql таблиц было 3, вполне хватало.

Смысл сейчас не в том какие были таблицы, а их типы.

Был MyIsam.
Данных в таблицах приростало примерно по 1к-3к записей в день. (статистика была у хостинг компании).
В общем через неделю мне пришлось все запросы оптимизировать в разы, добавлять индексы, смотреть как выполняются скрипты.

Интересен вопрос такой, какие же таблицы юзать при сборе такого рода статистики, когда данных реально много?
Они как записываются, так и просматриваются.

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

Но вот про производительность прочитал следующее

MyISAM
Быстрее выполняется большое количество запросов SELECT, INSERT, но при небольшом количестве запросов DELETE или UPDATE.
Также производительность падает при значительном количестве одновременных запросов на чтение/запись к таблице.

InnoDB
InnoDB предлагает кэширование данных, более высокий параллелизм, фоновую запись на диск, ухудшения производительности – более медленная запись, более медленная обработка BLOB, проблемы при работе с очень большим количеством таблиц, медленная загрузка данных и ALTER TABLE, низкая производительность COUNT(*) без WHERE, исправление данной проблемы требует модификации приложения.

Хранение данных в MyIsam в разных файлах к каждой таблице, в InnoDb в одном файле, если не настраивать. Разницы особой не вижу.


В общем нужен ответ навопрос, нужно ли статистику переводить на InnoDb или оставить MyIsam.
Чесно просто не сталкивался с тем чтобы выбирать типы таблиц. А вот сейчас приспичило. так сказать.
так чтоя переписываю статистику и хочу оптимизировать саму БД, запись и чтение из неё.

Подскажите, в правильном направлении думаю.
Заранее спасибо.

Неактивен

 

#2 14.09.2010 11:29:16

vaspet
Завсегдатай
Зарегистрирован: 11.03.2009
Сообщений: 83

Re: Myisam или InnoDB

Замечательноподходит для сбора статистики InnoDB:

InnoDB is used in production at numerous large database sites requiring high performance. The famous Internet news site Slashdot.org runs on InnoDB. Mytrix, Inc. stores more than 1TB of data in InnoDB, and another site handles an average load of 800 inserts/updates per second in InnoDB.

http://dev.mysql.com/doc/refman/5.0/en/innodb.html

- размер большой
- больше вставок чем выборок
- частые (быстрые) вставки

Неактивен

 

#3 14.09.2010 11:51:02

Shrek-Ogre
Участник
Зарегистрирован: 14.09.2010
Сообщений: 2

Re: Myisam или InnoDB

vaspet написал:

Замечательноподходит для сбора статистики InnoDB:

InnoDB is used in production at numerous large database sites requiring high performance. The famous Internet news site Slashdot.org runs on InnoDB. Mytrix, Inc. stores more than 1TB of data in InnoDB, and another site handles an average load of 800 inserts/updates per second in InnoDB.

http://dev.mysql.com/doc/refman/5.0/en/innodb.html

- размер большой
- больше вставок чем выборок
- частые (быстрые) вставки

Шпасибо smile

Собсна вот такой ответ и нужен был, хотя если кто-то чем то дополнит было бы неплохо.

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson