devchaos Опубликовано: 28 червня, 2008 Опубликовано: 28 червня, 2008 Немного конечно не по теме форума но может кто поможет. Собсно есть таблица с такими столбцами day, ipsrc, srcport, ipdst, dstport, proto, packets, bytes Занисей в ней пару миллионов в день. В записях повторяются day, ipsrc, srcport, ipdst, dstport, proto с разным значением packets, bytes Нужно сделать выборку sum(packets), sum(bytes) для каждых порторяющихся значений day, ipsrc, srcport, ipdst, dstport, proto Для чего? Чтобы не хранить за каждый день миллионы записей а только те за день, где уникальные ipsrc, srcport, ipdst, dstport, proto Пишу так select day, ipsrc, srcport, ipdst, dstport, proto, sum(packets), sum(bytes) FROM `db` GROUP BY day, ipsrc, srcport, ipdst, dstport, proto В результате глючит не могу понять толи неправильно запрос сформулировал толи от количества записей в БД ее плющит. Как лучше сделать в таком случае выборку?
devchaos Опубліковано: 29 червня, 2008 Автор Опубліковано: 29 червня, 2008 Да все было правильно ) Вот только БД тормозит отнюдь не слабый сервер при работе с миллионами записей.
deep_admin Опубліковано: 29 червня, 2008 Опубліковано: 29 червня, 2008 делайте эту выборку например раз в час, добавьте поле времени и индекс по этому полю
Колян Опубліковано: 30 червня, 2008 Опубліковано: 30 червня, 2008 Да все было правильно ) Вот только БД тормозит отнюдь не слабый сервер при работе с миллионами записей. Хард наверное слабоват, вот и тормозит, мускуль любит быстрые винты.
devchaos Опубліковано: 30 червня, 2008 Автор Опубліковано: 30 червня, 2008 Винт Сигейт 11 серии NS ) Не такой уж и медленный
Рекомендованные сообщения
Создайте аккаунт или войдите в него для комментирования
Вы должны быть пользователем, чтобы оставить комментарий
Создать аккаунт
Зарегистрируйтесь для получения аккаунта. Это просто!
Зарегистрировать аккаунтВхід
Уже зарегистрированы? Войдите здесь.
Войти сейчас