Хранение и отображение статистики - PullRequest
1 голос
/ 10 ноября 2010

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

Да, в основном это программное обеспечение для бизнес-аналитики.В моей компании есть целая команда, но, видимо, они не делают большую работу (10 минут для загрузки страницы просто не делают).

Вот что мне нужно сделать:

  • Файлы журналов - это файлы данных, в которых хранятся необработанные данные с сервера статистики, который мы настроили из нашего офиса (мы отправляем асинхронные вызовы на сервер статистики, что-то вроде Google Analytics).Он хранит данные в формате CSV.
  • написать скрипт для анализа файлов и агрегирования данных в базу данных (или я думал о redis)
  • Будут миллионы и миллионы вещейдля агрегирования, поэтому при отображении статистики это должно быть быстро

Я знаю об OLAP для БД, но если я хочу использовать redis, как вы думаете, он будет масштабироваться для больших объемов данных?Считаете ли вы, что для синтаксического анализа файлов будет достаточно сценария PHP, или я должен использовать что-то более быстрое, например C / C ++?

В принципе, я хотел бы получить некоторые интересные идеи о различных способах выполнения моей задачи.Это должно быть быстро и масштабно.

Есть идеи?

1 Ответ

1 голос
/ 10 ноября 2010

Звучит так, будто в тех масштабах, о которых вы говорите, вам нужно разделить агрегирование и отображение данных.То есть у вас должен быть какой-то процесс, работающий для получения файлов журналов, когда они генерируются, их разбора и вставки данных в базу данных;это будет долгой, сложной задачей.Затем, когда пользователь хочет отобразить график данных, он может сделать запрос к PHP-серверу, который извлечет данные из базы данных и создаст желаемое отображение.Таким образом, ваш синтаксический анализ отделен от вашего запроса на отображение (хотя он все еще зависит от последовательности, ваш анализ может начаться, когда журнальные файлы станут доступны, и, следовательно, задержка, связанная с их анализом, скрыта во время отображения).

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