Я разрабатываю простое словарное приложение на французском языке со 150 тыс. Слов и определений.Я ищу лучший способ сделать это.
Сначала я использую sqlite bdd с 150 тыс. слов.я использую команду LIKE для поиска слов, но она очень медленная, например: SELECT * FROM words WHERE word LIKE '% avoi%' LIMIT 0,50;для поиска слова, которое содержит «avoi», например, «avoir» или «savoir».В моей таблице есть индексы столбцов слов, но LIKE не использует индекс, поэтому он очень медленный (2-5) с в 3GS.
После того, как я использую расширение fts3 от sqlite для использования команды MATCH, например: SELECT * FROMслова ГДЕ слово МАТЧ «избежать» * LIMIT 0,50;Гораздо лучше (0,1-0,15 с) в 3GS, но поиск только по слову, начинающемуся со слова «избежать», например «savoir», не дает результата.Команда MATCH не работает с синтаксисом типа ' avoi '
У вас есть идеи по оптимизации этого текстового поиска?
У меня есть очень хороший пример приложения для iphone: Диксел (Роберт Диссионнари), который делает такой поиск очень быстрым.Есть идеи для метода?
спасибо за ответы.