а Manticore полностью поддерживает SphinxQL? Или есть у движка, скажем так, свой диалект, отличающийся от родительского?
Вроде бы совместимость не ломали относительно Sphinx 2.3.2. Нового конечно много очень, чего в сфинксе нет. Ну а относительно неоупэнсурсного sphinx 3 есть отличия небольшие.
Везде, где используется сырой SQL, есть такая опасность. Не просто так в PDO есть параметры и настоятельно рекомендуется их использовать. Нужно либо очень тщательно следить за тем, что втыкается в запрос, либо использовать запросы с параметрами
Всё верно, но здесь речь именно о мулти., где ежели оставить всё в естественном виде, то стоит только добавит к запросу …delete tab…; итд, и дело сделано со всеми проверками… Потому, как мне кажется, то нужно еще и ограничивать число запросов или валидации запросов, то ест, некрторые правила, допустим, разрешено только select…итд
Так же, как мне кажется, то PDO осуществляет множество проверок в отличие от mysqli, что негативно влияет на скорость. Так же, об этом нужно ‘парится’ у кого rt index с мултиквери…
Послай некоторых испытаний пришол к выводу, что блин, треш какой-то получается… Чтобы извлечь time и total мне нужно множество foreach…
if(id= manticore->multiQwery(Select id from myindex where match(‘x’) …; show meta.;)){
foreach($data[0] as $key=>$items){
//Получаем ид…
}
foreach($data[1] as $key=>$items){
foreach($items as $item){
foreach($item as $value){
$n++;
//print_r(“ $n, $value”);
if($n==4){
$total=$value;
}
if($n==8){
$time=$value;
}
}
}
}
}
Что то шыпко дино… Вы не нанодите?
Подскажите как укратить эту штуковину?
Логично. Поразительно, но у меня пока что эти цифры совпадают в каждом запросе. Может в фильтрх поиска дело!
А по поводу(‘бесконечного цыкла’) foreach у Вас нету предположений?
К примеру как быстро и легко вытащить данные из мулти масива, который возвращает выше упомянутый ManticoreConect:: multiQwery ?
как быстро и легко вытащить данные из мулти масива
Ну как вы сделали, так и норм, я думаю. Вы замеряли перф, чтоб проверить насколько значительно это увеличивает response time вашего приложения? Сколько %% это даёт?
Про “легко” - ну запихайте эту логику куда-нибудь подальше с глаз и переиспользуйте.
HTTP JSON или клиент для вашего ЯП попробуйте, там не надо делать SHOW META, то получить кол-во найденных результатов. Там это сразу выводится.
@Sergey Чисто на глаз чутка шустрее, чем двойной запрос.
Вот сейчас разделил запрос по функции( убрал с глаз долой длинущий код ) и стала примерно на 0, 013секунд еще шустрее, но при условии, что LIMIT не больше 5к. Знаете, где массив огромный(примерно 60к), там конечно в обоих случаях запросы виснет на секунд 3-5. Причём не факт, что из за manticore. Я думаю, что у меня ху…, извините, плохо работает генератор страниц на больших подсчетах.
Кажись, было бы прекрасно, ежели можно было в перёд как-то вытягивать только результат конкретной страницы а не весь массив по данному ключу запроса, то есть, как-то производить запрос через генератор страниц. Это бы позволило снять любые ограничения на результаты.
Вот реально ли это, тут стоит подумать .