|
|
ru.unix.bsd- RU.UNIX.BSD ------------------------------------------------------------------ From : Serge V.Panchenko 2:5054/28.1 31 Dec 2002 19:07:05 To : Victor Sudakov Subject : Учет тpаффика -------------------------------------------------------------------------------- 21 Dec 02 17:45, Victor Sudakov wrote to Ivan Voytas: VS> Кроме того, я утверждаю, что awk быстрее СУБД не вообще, а на VS> определенном классе задач. Достаточно типичных при подсчете трафика, VS> логов диалапа и пр. VS> Возьмем к примеру такую таблицу: ... VS> Так вот скрипт на awk вида VS> awk '{total[$2]+=$6} END {while (i in total) print i, total[i]}' < VS> table VS> будет почти всегда быстрее, чем VS> select sum(octets) from table group by dstIP; VS> в силу того, что awk проедет по таблице ровно один раз и накопит все VS> результаты в массиве total, тогда как СУБД будет елозить по таблице VS> многократно (скорее всего понадобится один проход на каждое значение VS> dstIP). Смею тебя заверить, что любой _нормальный_ SQL-сервер сделает максимум _один_ table scan по этой таблице и накидает результат в WorkTable, которую и сплюнет клиенту. Более того, номальный SQL-сервер поделит задачу сканирования таблицы на параллельные подзапросы и разпределит их по процессорам. А еще можно навесить триггер на эту таблицу, который будет при вставке каждой записи апдейтить статистическую таблицу... А еще... Hу, короче, ты понял, да? ;-)) VS> По крайней мере PostgreSQL и MySQL вели себя именно так и VS> проигрывали. Значит это - ненормальные SQL-сервера. С уважением, Сережка В. Панченко... e-mail: svp220569@mail.ru http://www.uralexpress.ru --- GoldED+/W32 1.1.5-20020105 * Origin: Длинная веревка в пиве. (2:5054/28.1) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.unix.bsd/27643e1197b7.html, оценка из 5, голосов 10
|