#mysql #analytics #counting #nosql
#mysql #аналитика #подсчет #nosql
Вопрос:
Итак, допустим, у меня есть сайт с appx. 40000 статей. Что я надеюсь сделать, так это записать количество посещений страницы для каждой статьи сверхурочно.
По сути, конечная цель состоит в том, чтобы иметь возможность визуализировать с помощью графика количество просмотров любой статьи за любой период времени.
Вот пример: https://books.google.com/ngrams
Я начал думать о структуре данных mysql -> но мой мозг говорит мне, что это, вероятно, не та задача для mysql. Похоже, мне нужно использовать какое-то конкретное решение для аналитики nosql.
Может кто-нибудь посоветовать, какая БД подходит для этой работы?
Ответ №1:
SQL в порядке. Он поддерживает UPDATE
инструкции, которые гарантируют правильность вашего подсчета, а не просто конечную согласованность.
Хотя большинство людей просто используют файл журнала и обрабатывают его по требованию. Если вы не масштабируете Google, это будет достаточно быстро.
Для этого существует множество инструментов, часто включая некоторые очень эффективные специализированные структуры данных, такие как RDD, которые вы не найдете ни в одной базе данных. Почему бы вам просто не использовать их?
Комментарии:
1. «SQL в порядке. Он поддерживает ОБНОВЛЕНИЕ «. Но я говорю о данных временных рядов. Я не могу просто обновить счетчик -> это дало бы мне только общее количество посещений на статью. Мне нужно иметь возможность получать количество посещений за определенный период времени, например, с марта по апрель, и иметь возможность генерировать для этого хороший график.
2. Использовать индекс в столбце времени? Серверы SQL очень хороши в выборе и агрегировании диапазонов. Или используйте RDDs.