Форум сайта python.su
гуру питона, подскажите пожалуйста.
У меня есть файл, в котором 25 миллионов предложений.
Есть список заданных фраз и мне надо делать выборку по условию,
все слова из заданной фразы встречаются в предложении.
До недавнего времени объемы заданных фраз были маленькие и я делал просто методом перебора строчек файла.
При заданном количестве фраз от 5 до 20 обработка проходила за 5-10 минут и меня устраивало.
Но сейчас объемы поиска могут значительно возрасти, и такой подход уже не годится.
В оперативку весь файл не помещается.
MySQL будет очень медленно на таком объеме работать.
Подскажите что можно попробовать?
Офлайн
я для этих целей использовал mongoDB (выборка по нескольким тегам), база около 5М “предложений”, искалось в течении секунды.
Офлайн
o7412369815963а искалось по точному вхождению?
я для этих целей использовал mongoDB (выборка по нескольким тегам), база около 5М “предложений”, искалось в течении секунды.
Офлайн
vlad0405в монго можно искать регексами: народн** сказк* ( народн{2}\s+сказ.)o7412369815963а искалось по точному вхождению?
я для этих целей использовал mongoDB (выборка по нескольким тегам), база около 5М “предложений”, искалось в течении секунды.
Мне надо что-то типа LIKE в MySQL.
Например надо найти
народные сказки
народная сказка
народных сказок
и так далее
я ввожу “народ сказ” и пошел поиск
MONGO такое может?
Отредактировано (Окт. 11, 2011 20:44:45)
Офлайн
Огромное спасибо за наводку!
Буду читать инфо по этим продуктам.
Офлайн