Всем спасибо. Сайт вернулся в этот день вечером. Беглым взглядом скажу, что вернулся полностью и на те же позиции. Глубоко пока не мониторил, чуть позже посмотрю по трафику. Всего сайт отсутствовал около 1,5 суток.
---- UPD
перепроверил, все-таки, процентов 10-15 позиций слетело. Они либо просели на -10 -20 либо просто отсутствуют в выдаче. Будем ждать.
Не совсем понимаю гуглологику тут. Сайт вернули, зачем же его опускать-то?
Понимаю, но как он успел так быстро тупо весь вылететь из выдачи? Вот это для меня диво
create table test1 ( id int(10) not null auto_increment, params varchar(500) default null, primary key (id) ) insert into test1 set params='{"color":"red", "height":"488", "length":"140"}'; insert into test1 set params='{"color":"red", "height":"377", "length":"289"}'; insert into test1 set params='{"color":"red", "height":"349", "length":"621"}'; insert into test1 set params='{"color":"red", "height":"625", "length":"977"}'; insert into test1 set params='{"color":"red", "height":"159", "length":"945"}'; insert into test1 set params='{"color":"red", "height":"920", "length":"537"}'; insert into test1 set params='{"color":"red", "height":"453", "length":"860"}'; insert into test1 set params='{"color":"red", "height":"671", "length":"292"}'; insert into test1 set params='{"color":"red", "height":"415", "length":"562"}'; insert into test1 set params='{"color":"red", "height":"639", "length":"215"}'; insert into test1 set params='{"color":"red", "height":"579", "length":"698"}'; insert into test1 set params='{"color":"red", "height":"232", "length":"727"}'; insert into test1 set params='{"color":"red", "height":"129", "length":"565"}'; insert into test1 set params='{"color":"red", "height":"210", "length":"899"}'; insert into test1 set params='{"color":"red", "height":"500", "length":"810"}'; insert into test1 set params='{"color":"red", "height":"884", "length":"253"}'; insert into test1 set params='{"color":"red", "height":"877", "length":"730"}'; insert into test1 set params='{"color":"red", "height":"309", "length":"563"}'; insert into test1 set params='{"color":"red", "height":"894", "length":"972"}'; insert into test1 set params='{"color":"red", "height":"599", "length":"448"}'; insert into test1 set params='{"color":"red", "height":"633", "length":"832"}'; insert into test1 set params='{"color":"red", "height":"711", "length":"782"}'; insert into test1 set params='{"color":"red", "height":"632", "length":"958"}'; insert into test1 set params='{"color":"red", "height":"955", "length":"186"}'; insert into test1 set params='{"color":"red", "height":"974", "length":"645"}'; insert into test1 set params='{"color":"red", "height":"290", "length":"432"}'; insert into test1 set params='{"color":"red", "height":"392", "length":"542"}'; insert into test1 set params='{"color":"red", "height":"826", "length":"141"}'; insert into test1 set params='{"color":"red", "height":"772", "length":"846"}'; insert into test1 set params='{"color":"red", "height":"621", "length":"187"}'; insert into test1 set params='{"color":"red", "height":"848", "length":"401"}'; insert into test1 set params='{"color":"red", "height":"886", "length":"991"}'; insert into test1 set params='{"color":"red", "height":"704", "length":"307"}'; insert into test1 set params='{"color":"red", "height":"579", "length":"724"}'; insert into test1 set params='{"color":"red", "height":"875", "length":"309"}'; insert into test1 set params='{"color":"red", "height":"912", "length":"708"}'; insert into test1 set params='{"color":"red", "height":"545", "length":"606"}'; insert into test1 set params='{"color":"red", "height":"841", "length":"915"}'; insert into test1 set params='{"color":"red", "height":"247", "length":"943"}'; insert into test1 set params='{"color":"red", "height":"676", "length":"868"}'; insert into test1 set params='{"color":"red", "height":"969", "length":"616"}'; insert into test1 set params='{"color":"red", "height":"278", "length":"537"}'; insert into test1 set params='{"color":"red", "height":"542", "length":"274"}'; insert into test1 set params='{"color":"red", "height":"857", "length":"345"}'; insert into test1 set params='{"color":"red", "height":"852", "length":"113"}'; insert into test1 set params='{"color":"red", "height":"469", "length":"264"}'; insert into test1 set params='{"color":"red", "height":"632", "length":"780"}'; insert into test1 set params='{"color":"red", "height":"326", "length":"716"}'; insert into test1 set params='{"color":"red", "height":"869", "length":"672"}'; insert into test1 set params='{"color":"red", "height":"286", "length":"772"}';
select * from (select id, params, substring(substring(params, instr(params, '"height":"')+length('"height":"')), 1, instr(substring(params, instr(params, '"height":"')+length('"height":"')), '"')-1) as _height from test1) as t where _height between 400 and 600
Жирно. Спасибо, сейчас только надо умудриться не поламать голову над этим ))
Спасибо, попробую
Думал. В том-то и причина создания топика. Я хочу решить, что доля меня рациональнее. Т.к. все-таки разобраться в движке и переделать выборку из базы - это тоже работа немалая. ЕСТЕСТВЕННО, если бы я это делал с нуля, то сделал бы по-нормальному :)
Большое спасибо за содержательный ответ. Теперь буду активно думать по этому вопросу.
Остается только единственный вопрос. Если, все-таки, сгребать всю базу из, скажем, 10 - 20 тыс. записей, потом циклом перебирать и выводить уже с помощью php то, что мне надо, будет ли это грузить сервак сильно или терпеть можно?
ПС: хотя, если изучить регулярки (http://www.mysql.ru/docs/man/Regexp.html) и функции (http://dev.mysql.com/doc/refman/5.0/en/string-functions.html#function_substring), то, думаю, можно что-то слепить
Даже комментировать не буду...
Мысль идет не о реализации, а о том, что это УЖЕ реализовано, и теперь надо доработать так, чтобы можно было бы не вытягивать все из базы, а потом обрабатывать массивом, а как-то "умнее". Иначе, прийдется уже тогда вытягивать все.
Дело не в json. Даже, если бы поле содержало бы запись "color=red, height=545, length=110" то история была бы, думаю, той же..
Можно, но это решение "в лоб". Представьте, что записей (товаров) в таблице 100000. При каждом обращении будет в оперативе образовываться такая громадина?..
И вместо массива, скажем, из 10-15-20 товаров я буду КАЖДЫЙ раз получать и обрабатывать массив из ста тысяч. А вообще, насколько сильно такая реализация будет грузить сервак? Может, я преувеличиваю?
Спасибо за идею. Надо об этом подумать. Пока самый вразумительный ответ.
В общем, как я понял в mysql нет такого синтаксиса, чтобы на лету выбрал из базы так, как я хочу. Надо извращаться только подобным образом?
Да, рута у меня нет. Но на самом деле нужен мне даже не прокси, а просто выход с другого IP (для хрумака). Как бы проще это дело сделать? Пробовал tunneler, все подключается, но чистая веб-страница. Не грузит ничего (((
Если юзаете firefox, попробуйте firebug. Просто в коде вставьте вместо какого-то сайта нужные вам строки вашего сайта. Посмотрите на получившуюся страницу и будет Вам чудо 🚬