Увлечение
Scala можно считать серьёзным - нашёл в нёй
первую ошибку (Add: и
исправил, Add2:
commit#17380). Очень приятный язык. Если 5 лет назад, когда я увлекался
Scheme (и даже написал её
компилятор в JavaScript), была возможность в одном крупном проекте использовать любые языки и средства - я всё-таки не рискнул, а сейчас в такой же ситуации
(
Read more... )
Comments 26
писать нельзя. Нужно писать
select a.*, b.y from (( (select * from a where (условие) ) as a limit q, 20) left join b on a.id = b.id)
Reply
Reply
Reply
"select a.*, b.y from (( (select * from a where (условие) limit q, 20 ) as a ) left join b on a.id = b.id)
(Ответить) (Ветвь дискуссии)
Reply
Reply
Reply
Reply
Reply
Reply
Reply
Reply
1) в MySQL-е есть табличка log (serial log_id, int time, int date, char campaign, char product, char fromsearchengine, char country) , в которую пишутся хиты по странице (там 1 insert и 1 select last_insert_id), прочая информация хранится в других таблицах, присоединяемых по log_id ( соответствие many to one).
Когда табличка опухает до 2-3 млн. записей, генерация отчётов ( к примеру, взятие всех хитов в интервале [time1;time2] и группировка по campaign) занимает какое-то совсем неприличное время ~10 cек. Более изъёбистые запросы типа (взять все хиты в промежутке, сгруппировать по campaign и fromsearchengine, после чего посчитать себестоимость по табличке engine ( char campaign, char engine, double cost) радует глаз 30-40-секундной задумчивостью. Трекинг хитов при этом тоже "умирает".
Вопрос: как переписать/переделать эту хню, чтобы не тормозило? По ТЗ, система должна ставиться на виртуальный хостинг и планируемое число кликов порядка 80 000 в день "ровным слоем", а отчёты просматривает один чел?
Reply
Reply
Reply
если самому чего-то не хватает - делаю.
если есть какая идея - всегда есть на чём попробовать.
Reply
Leave a comment