Додайте свій проєкт безкоштовно й почніть отримувати пропозиції від фрілансерів-виконавців вже за лічені хвилини після публікації!

Консультация по поводу оптимизации fuzzy search запроса в базе с милли



Замовник не бажає робити передплату? Оплату через Сейф допоможе уникнути можливого шахрайства.
  • Александр Ганский
    14 липня о 20:30 |

    elasticsearch ?

  • Good Job
    14 липня о 20:31 |

    или может sphinx

  • Александр Ганский
    14 липня о 20:35 |

    sphinx не знаю

    Но в целом тут только почасовка, т.к. внедрить такое в работающий проект, проиндексировать все правильно, поправить все баги от предыдущего разработчика. Плюс еще сделать все на фронте. Сложно даже предположить сумму.

  • Good Job
    14 липня о 20:54 |

     файлике вытянуты имена актеров из бд. Примерно 600 000 человек

    Нужно сделать fuzzy search, но на mysql/mongo это практически нереализуемо, а на node этот файл фильтруется больше секунды. Необходимый результат в районе 250мс самой сортировки

    Подскажите какую базу данных для этого стоит использовать?

    На node я использовал levenstein distance
    Или же возможно сможете подсказать нужный алгоритм, более щадящий

  • Илья Лебедь
    14 липня о 20:54 |

    Тут задача не в этом. Есть файл txt с 600 000 строк имен (Леонардо Дикаприо, Дмитрий Глуховский и тд...). Нужно импортировать у себя, поставить индексы, сделать запрос, и продемонстрировать скорость. Это нужно для того, что бы нам не тратить время на изучение новой технологии и тестирование до того, как будем уверенны что она решит проблему. Ничего интегрировать или работать с чужим кодом не нужно.

  • Спасет - MSSQL  + full text search.

     здесь немного описания - 

    https://info-comp.ru/sisadminst/486-full-text-search-ms-sql-server.html

  • Версия MSSQL 2017 Express edition (Express Advanced - сам движок БД + полнотекстовый поиск + сервис отчетов) бесплатно, инсталяция около 800 мб.

  • Oleh T.
    16 липня о 22:26 |

    Самое лучшее решение для Вас будет ClickHouse OpenSource (Тут еще и аналитику круто собирать. Для примера Yandex Метрика на ней работает) или Elasticsearch