У меня есть модель Activity и модель ActivityOccurrence, где Activity has_many :activity_occurrences
Activity
: Эта модель будет иметь все метаданные, необходимые для ActivityOccurrence
.
AcitvityOccurrence
: attrs - вхождение (дата-время), завершено.
Теперь у нас есть новое требование, согласно которому мы должны показывать все случаи активности в результатах поиска, когда пользователь ищет действия в определенном диапазоне.
Раньше мы показывали только одну запись в случае повторяющихся действий.
Поэтому в соответствии с новым требованием мы решили переместить поиск с Activity
на ActivityOccurrence
.
Теперь я не хочу индексировать метаинформацию Activity
в каждом моем ActivityOccurrence, поскольку моя активность имеет на 10 полей больше, чем ActivityOccurrence
,
например: если у меня есть Activity
с 1000 AcitivityOccurrence
, тогда я буду индексировать всю информацию о своей деятельности в 1000 AcitivityOccurrence
записей.
Это займет огромное место по мере роста приложения, если мы будем индексировать таким образом.
Следовательно, меня больше всего беспокоит объем индексации, которую я должен выполнить.
Поэтому я думаю избегать индексов активности в ActivityOccurrence
.
Итак, есть ли способ сначала искать Activity на основе его фильтров, а затем искать ActivityOccurrence
в диапазоне на основе результатов действий?
Примечание. Также у нас есть бесконечные вхождения.
Любые идеи?
Заранее спасибо.