Я бегу сайт, где нужно хранить информацию, как это:Можно ли оптимизировать таблицу mysql/myisam?
table: logs
* date (date)
* server_1 (unsigned int)
* server_2 (unsigned int)
* user_id (unsigned int)
* ip (unsigned int)
* service (enum)
* traffic (unsigned bigint)
Мои запросы выглядят primarliy так:
SELECT SUM(traffic) FROM logs WHERE user_id = 8381 AND date > DATE_ADD(CURDATE(), INTERVAL -7 DAY) AND service != 'unknown'
У меня есть составной первичный ключ на всех полях, кроме трафика и индекс на user_id и услуге
Это более эффективный способ хранения трафика в качестве поплавка?
Также является MyIsam хорошим двигателем или я должен использовать innodb?
Или еще другая система баз данных?
Таблица становится довольно большой (десятки миллионов строк) и в значительной степени зависит от запросов.
что делает 'EXPLAIN ...' say? – Alnitak
Запрос имеет столбец 'hoster'. В определении вашей таблицы нет. –
oh sorry hoster = service, отредактировал его –