Архитектура для аналитики базы данных

У нас есть архитектура, где мы предоставляем каждому клиенту подобные бизнес-аналитике услуги для их веб-сайта (интернет-продавец). Теперь, я должен проанализировать те данные внутренне (для алгоритмического улучшения, отслеживания производительности, и т.д....), и это потенциально довольно тяжело: у нас есть до миллионов строк / клиент / день, и я могу хотеть знать, сколько запросов мы имели в прошлом месяце, еженедельно сравненный, и т.д...., который является порядком миллиардов записей если не больше.

Путем это в настоящее время делается, довольно стандартное: ежедневные сценарии, которые сканируют базы данных и генерируют большие файлы CSV. Мне не нравится это решения по нескольким причинам:

  • как типичные с теми видами сценариев, они попадают в неперезаписываемую и never-touched-again категорию
  • отслеживание вещей в "в реальном времени" необходимо (у нас есть отдельный набор инструментов для запросов последних нескольких часов ATM).
  • это медленно и не - "гибкий"

Хотя у меня есть некоторый опыт имея дело с огромными наборами данных для научного использования, я - полный новичок насколько традиционные RDBM идут. Кажется, что использование, ориентированное на столбец на базу данных для аналитики, могло быть решением (аналитике не нужно большинство данных, которые мы имеем в базе данных приложения), но я хотел бы знать то, что другие опции доступны для этого вида проблем.

14
задан David Cournapeau 21 April 2010 в 06:52
поделиться

3 ответа

Вы захотите погуглить Звездную схему . Основная идея состоит в том, чтобы смоделировать специальное хранилище данных / экземпляр OLAP вашей существующей системы OLTP таким образом, чтобы он был оптимизирован для обеспечения описываемого вами типа агрегатов. Этот пример будет состоять из фактов и измерений.

В приведенном ниже примере «факты» продаж смоделированы для обеспечения аналитики на основе данных о клиенте, магазине, продукте, времени и других «измерениях».

alt text

Вы найдете образцы баз данных Microsoft Adventure Works поучительными, поскольку они предоставляют схемы OLTP и OLAP вместе с репрезентативными данными.

7
ответ дан 1 December 2019 в 14:21
поделиться

Каноническим справочником по хранилищам данных в стиле звездообразной схемы является «Набор инструментов хранилища данных» Рапла Кимбалла (в той же серии есть «Хранилища данных Clickstream» , но это, я думаю, датируется 2002 годом и несколько устарело, я думаю, что если есть новая версия книги Кимбалла, она может вам пригодиться. Если вы гуглите "хранилище данных веб-аналитики", есть несколько примеров схемы, доступные для скачать и изучить.

С другой стороны, большая часть того, что происходит в реальной жизни без использования sql, основывается на данных о потоках кликов, поэтому, возможно, стоит посмотреть, что такое Hadoop / Cassandra / [последняя крутая вещь] сообщество может провести тематические исследования, чтобы убедиться, что ваш вариант использования соответствует их возможностям.

3
ответ дан 1 December 2019 в 14:21
поделиться

Существуют специальные базы данных для аналитики, такие как Greenplum, Aster data, Vertica, Netezza, Infobright и другие. Вы можете прочитать об этих базах данных на этом сайте: http://www.dbms2.com/

4
ответ дан 1 December 2019 в 14:21
поделиться
Другие вопросы по тегам:

Похожие вопросы: