Я хотел бы получить некоторое согласие сообщества на хороший дизайн, чтобы иметь возможность хранить и запрашивать частоту слов. Я создаю приложение, в котором я должен анализировать ввод текста и хранить, сколько раз слово появилось (с течением времени). Итак, учитывая следующие входные данные:
- "Убить насмешливую птицу"
- "Насмешка над пианистом"
будет хранить следующие значения:
Word Count
-------------
To 1
Kill 1
A 2
Mocking 2
Bird 1
Piano 1
Player 1
А позже можно будет быстро запросить значение счетчика для данного произвольного слова.
Мой текущий план состоит в том, чтобы просто хранить слова и счетчики в базе данных и полагаться на кэширование значений счетчиков слов ... Но я подозреваю, что у меня не будет достаточно обращений в кэш, чтобы сделать это жизнеспособным решением в долгосрочной перспективе.
Может ли кто-нибудь предложить алгоритмы или структуры данных или любую другую идею, которая может сделать это хорошо работающим решением?