Оптимизация автозаполнения для больших наборов данных

Я работаю над большим проектом, в котором я должен предоставить пользователю эффективный способ ввода данных в форму.

Для трех полей этой формы требуется значение из подмножества общего источника данных (таблица SQL). Я использовал JQuery и JQuery UI для создания автозаполнения, который отправляет в общий HttpHandler.

Внутренне обработчик использует Linq-to-sql для захвата данных, требуемых из этой конкретной таблицы. В таблице около 10 различных столбцов, и выражение linq использует SqlMethods.Like () для сопоставления единственного условия поиска в каждом из этих 10 полей.

Проблема в том, что эта таблица содержит около 20 КБ строк. Автозаполнение работает безупречно, примите к сведению, что огромный объем данных приводит к удалению примерно за 6 секунд (при отладке на моем локальном компьютере), прежде чем он появится.

Автозаполнение JQueryUI имеет задержку 0, запросы по ключу 3 , а результат публикации оформляется в многострочном стиле Facebook с возможностью выбора. (Мне почти пришлось переписать плагин автозаполнения ...)

Итак, проблема в данных и скорости. Есть мысли о том, как это ускорить? У меня были только две мысли: кэшировать данные (как / где?); или использовать прямую программу чтения данных sql для доступа к данным?

Мы будем благодарны за любые идеи! Спасибо,

<bleepzter/>
7
задан bleepzter 7 January 2011 в 16:56
поделиться