Привет, я разрабатываю систему, которая принимает ссылки на статьи из API, сортирует статьи по категориям, а затем отправляет список рекомендуемых ссылок на статьи пользователям на основе заданных пользователем параметров фильтрации.
Первоначальный подход, который я запланировал, заключается в использовании SQL баз данных для хранения отсортированных статей, а также информации о пользователях. Затем каждый день я буду запускать SQL запрос к базе данных статей для каждого пользователя, чтобы получить соответствующие ссылки на статьи. Одна вещь, которую мне нужно выяснить, - это обработка повторяющихся статей / пользователей, но даже если предположить, что существуют уникальные экземпляры, этот подход кажется довольно неэффективным.
Мне было интересно, есть ли лучший способ спроектировать систему для масштабирования, т. Е. Должна ли система обрабатывать миллионы статей и миллионы пользователей?
Может ли быть полезным группирование пользователей на основе одинаковых параметров фильтрации статей (поэтому потенциально нужно выполнять меньше запросов, если два или более пользователей запрашивают одну и ту же базу данных статей)? Или это усилие было бы слишком сложным и бесполезным?