Любая масштабируемая база данных OLAP (масштаб веб-приложения)? - PullRequest
10 голосов
/ 16 января 2010

У меня есть приложение, которое требует аналитики для другого уровня агрегации, и это рабочая нагрузка OLAP. Я тоже хочу обновлять свою базу данных довольно часто.

например, вот как выглядит мое обновление (схема выглядит так: время, назначение, исходный ip, браузер -> посещения)

(15:00-1-2-2010, www.stackoverflow.com, 128.19.1.1, safari) -->  105

(15:00-1-2-2010, www.stackoverflow.com, 128.19.2.1, firefox) --> 110

...

(15:00-1-5-2010, www.cnn.com, 128.19.5.1, firefox) --> 110

И затем я хочу спросить, каково общее количество посещений www.stackoverflow.com из браузера Firefox в прошлом месяце.

Я понимаю, что система Vertica может сделать это относительно дешево (с точки зрения производительности и масштабируемости, но, вероятно, не с точки зрения затрат). У меня здесь два вопроса.

1) Существует ли продукт с открытым исходным кодом, на котором я могу построить эту проблему? В частности, насколько хорошо работает система Мондриана? (масштабируемость и производительность) 2) Существует ли базовое решение HBase или Hypertable (очевидно, голый HBase / Hypertable не может этого сделать) для этого? - но если есть проект, основанный на HBase / Hypertable, масштабируемость, вероятно, не будет проблемой IMO)?

Спасибо!

Ответы [ 4 ]

2 голосов
/ 17 января 2010

Проект zohmg направлен на решение этой проблемы с использованием Hadoop и HBase.

2 голосов
/ 19 января 2010

Facebook также построил Hive поверх Hadoop.Довольно просто начать - разумный API запросов.

http://mirror.facebook.net/facebook/hive/

2 голосов
/ 16 января 2010

Вы можете скачать бесплатную версию (издание с одним узлом) базы данных greenplum. Я сам не пробовал, но думаю / думаю, это сильный зверь. Читайте здесь: http://www.dbms2.com/2009/10/19/greenplum-free-single-node-edition/

Другой вариант - MongoDB, он быстрый и бесплатный, и вы можете писать функции MapReduce с помощью JavaScript для аналитики.

Моя репутация здесь низкая, чтобы добавить гиперссылку на mongodb, так что вы должны зайти в Google. Я могу добавить только одну гиперссылку на пост.

0 голосов
/ 27 января 2010

Является ли ваша модель данных более сложной, чем эта? Если это не так, вы можете просто написать собственный код для него. Тогда вы действительно можете настроить его на свои данные. Реальные продукты должны предлагать большую гибкость, требовать много сложностей для достижения этого и в результате страдают от скорости.

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

...