Изучаю redis
Хочу посчитать ratio файлов, как соотношение трафика, что они сгенерировали к их размеру.
Есть хеши htraff и nsize, ключ — название файла, значение, соотвественно, трафик и размер. Чтобы посчитать отношение, сейчас использую такой код:
$hsize=$redis->hGetAll("hsize");
$htraff=$redis->hGetAll("hraff");
foreach ($v as $hash=>$size)
$redis->zAdd("hratio",$htraff[$date][$hash]/$size,$hash);
Чтобы потом можно было выбрать топ50 самых популярных файлов. Код работает дико медленно (последняя строчка), что неудивительно.
Как можно переписать это место эффективнее? Идеально — обработка внутри базы (aля update files set ratio=traff/size), ну или хотя-бы массовая вставка значений. Или для такой задачи редис не подходит?