С общим массивом затем работать средствами PHP, т.е. форичем перебирать и в title смотреть вхождение подстроки поиска из запрашиваемых 3-х символов, например функцией stripos?Тут сразу не скажешь, только тестировать, т.к. зависит от кучи параметров, проще один раз запустить и померить что быстрее - выборка или перебор.
Так как поиск у меня только по названиям компаний, товаров, категорий, подкатегорий и товарных групп, может не искать в каждой таблице при помощи %LIKE% вхождение подстроки из 3-х символов, а вытащить все названия по очереди, положить в один массив и закешировать при помощи Мемкешед.можно, даже более того - проще сделать это на клиенте - сделали запрос по 3 буквам - у вас уже 100% будет конечный результат набора юзера(за исключением случая "юзер стирает 3й символ и набирает другой) и дальше яваскрипт тупо хайдит ячейки с невходящим словом, работает очень быстро и вообще сервер только 1 запрос выполнит.
все одно и тоже, различие только в подходах.Повод задуматься )
и последний комментарий сбил с толку.имелось в виду открывать именно нарезанные файлики. Принцип - ищем начало блока читая построчно, если за 2-3 мегабайта данных не нашли - записали прочитанное в файл, ищем дальше. Нашли - ищем конец блока, пишем блок в файл, повторяем. Файлики с нужным блоком можно пометить отдельно и потом только их обработать.
Если мы получаем всё содержимое файла, то у нас память забивается.
в целях экономии памяти можно разбить файл на n файлов, каждый из которых обрабатывать отдельно, а затем склеить.Вы вообще читаете ответы?
Только я даже не уверен, удалось ли получение...
по шагам проверяются значения и результат работы.