Что является альтернативой Haystack для фреймворка Django? - PullRequest
0 голосов
/ 11 декабря 2018

Краткое описание

Вместе со своей командой я создаю поисковую систему для нашего проекта, которая содержит много данных (я говорю о миллионах).Мы используем Django Framework & ElasticSearch, потому что использование поисковой системы nosql очень быстро приводит к результатам.Мы используем Haystack, потому что он предоставляет простую модульную систему поиска для Django.

Поисковая система и более подробные данные

Наша поисковая система содержит два поля ввода.Оба могут быть использованы, но одного достаточно.Каждый элемент в наших данных определил, в каком месте он должен быть найден.Таким образом, пользователь ищет элемент в одном или нескольких местах, а поисковая система ищет каждый элемент из миллиона и ищет, имеет ли этот элемент это местоположение.

Наша проблема и вопрос

ОднакоПоскольку у нас много данных, и у нашей поисковой системы будет метод ранжирования и система глубоких фильтров, мы сомневаемся, подходит ли нам Haystack.Мы не можем добавлять КАЖДЫЙ контент элемента в один .json.Есть ли лучшая альтернатива, которая может обрабатывать более сложные результаты поиска?Если мы хотим использовать поисковую систему nosql, но иметь сложную структуру данных, как мы можем сделать это с помощью упругого поиска?Например: используя поисковую систему на основе SQL, мы будем искать все соединения внутри таблиц.

1 Ответ

0 голосов
/ 12 декабря 2018

Если существует множество связей между элементами в ваших данных, вам следует рассмотреть возможность интеграции графической технологии в ваши настройки.Сериализуйте данные вашего приложения в граф, чтобы потом можно было получать их из узлов, а не из таблиц SQL.

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

Вы можете рассмотреть возможность работы с GraphQL или ArangoDB.

Эти ссылки могут быть полезны:

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...