Ответы пользователя по тегу Администрирование баз данных
  • Быстрый поиск по большому массиву неоднородных данных, что выбрать?

    apangin
    @apangin
    Примените идею фильтра Блума:
    выберите 10-30 признаков, легко вычисляемых как для запроса, так и для содержимого, которые дают примерно одинаковое распределение true/false на вашем множестве данных. Поиск отфильтруйте по тем записям, где встречаются признаки, обнаруженные в запросе.

    Например, можно выбрать признаки вида «существует подстрока из N символов, сумма которых равна K». Очевидно, если такая подстрока присутствует в запросе, то она обязана присутствовать и в искомых записях. Ради интереса я провел эксперимент на jpg-аватарках размером в среднем 4К и подобрал такие пары N и К: (3, 97), (3 98), (3, 99), (3, 102), (3, 104), (3, 105), (4, 161), (4, 173), (4, 178), (5, 247), (5, 251), (5, 255)…
    Ответ написан
    1 комментарий