Разработка OLAP engine
От: Jo Kruger  
Дата: 11.05.05 07:05
Оценка:
Ктонить сабжем занимался?
Re: Разработка OLAP engine
От: wildwind Россия  
Дата: 11.05.05 07:26
Оценка:
Здравствуйте, Jo Kruger, Вы писали:

Не надо кросспостить.
Re: Разработка OLAP engine
От: _d_m_  
Дата: 12.05.05 01:10
Оценка:
Здравствуйте, Jo Kruger, Вы писали:

JK>Ктонить сабжем занимался?


Microsoft
Re[2]: Разработка OLAP engine
От: Jo Kruger  
Дата: 12.05.05 05:53
Оценка:
Здравствуйте, _d_m_, Вы писали:

___>Здравствуйте, Jo Kruger, Вы писали:


JK>>Ктонить сабжем занимался?


___>Microsoft


аааабалденно полезный ответ

А здесь ктонить разрабатывал OLAP движек? Поделиться опытом может?
Re: Разработка OLAP engine
От: Аноним  
Дата: 12.05.05 07:45
Оценка:
Здравствуйте, Jo Kruger, Вы писали:

JK>Ктонить сабжем занимался?


Занимался.
Не сильно конструктивно, но каков вопрос — таков ответ.
Re[2]: Разработка OLAP engine
От: Yuri Burger  
Дата: 12.05.05 08:42
Оценка: :)
Здравствуйте, Аноним, Вы писали:

JK>>Ктонить сабжем занимался?

А>Занимался.
А>Не сильно конструктивно, но каков вопрос — таков ответ.

Собсно интерисует любая информация по созданию движка:

— где можно нарыть документации (на olap.ru не отсылать, там только общие вопросы, либо описание как построить клиента, а мне нужно движек сервака!)
— как удобней/оптимальней хранить данные — форматы, содержимое....
— как реализовать (оптимальней) group by (т.к. это наиболее используемая функция)..
— как работать с данными не вмещающимися в памяти...
Re[3]: Разработка OLAP engine
От: _Umka  
Дата: 12.05.05 09:27
Оценка:
YB>- где можно нарыть документации (на olap.ru не отсылать, там только общие вопросы, либо описание как построить клиента, а мне нужно движек сервака!)
YB>- как удобней/оптимальней хранить данные — форматы, содержимое....
YB>- как реализовать (оптимальней) group by (т.к. это наиболее используемая функция)..
YB>- как работать с данными не вмещающимися в памяти...

1. Для начала читаем "Wiley & Sons — Building The Data Warehouse" потом задаем вопросы.
2. Хранить на сервере баз данных и читаем "Microsoft SQL Server 2000 Database Design and Implementation"
3. Далее берем Кнута...
4. Читаем использование виртуальной памяти и проецирование файлов в память (для Windows)
--
То, что вы уникальны еще не значит, что от вас есть толк
Re[4]: Разработка OLAP engine
От: Yuri Burger  
Дата: 12.05.05 10:30
Оценка:
Здравствуйте, _Umka, Вы писали:

YB>>- где можно нарыть документации (на olap.ru не отсылать, там только общие вопросы, либо описание как построить клиента, а мне нужно движек сервака!)

YB>>- как удобней/оптимальней хранить данные — форматы, содержимое....
YB>>- как реализовать (оптимальней) group by (т.к. это наиболее используемая функция)..
YB>>- как работать с данными не вмещающимися в памяти...
_U>1. Для начала читаем "Wiley & Sons — Building The Data Warehouse" потом задаем вопросы.
_U>2. Хранить на сервере баз данных и читаем "Microsoft SQL Server 2000 Database Design and Implementation"
_U>3. Далее берем Кнута...
_U>4. Читаем использование виртуальной памяти и проецирование файлов в память (для Windows)

Умный, да?

1. Линк бы дал, чтоли. Всё что я видел в инете рассматривает как ИСПОЛЬЗОВАТЬ ГОТОВЫЕ решения, основанные в основном на MS/Oracle: "как использовать готовое решение"; либо "как собрать из готовых продуктов собственное решение"; либо "как сделать клиента к решениям MS, Oracle, etc".
Мне нужно — построение движка с нуля, вещь в себе, без использования готовых решений, вплоть до самостоятельной реализации операций БД. Потому и спрашиваю здесь, а не у мелкософта

2. Мдя. Уже говорил — с нуля.

3. Нет у него. Там базис, общие вопросы, давно измусоленые темы. Самое интересное не рассмотрено. Первые же проблемы с которыми сталкиваешся в olap движке (повторюсь — не использующего готовые решения в виде чужих DB) — работа с массивами данных не вмещающихся в памяти; работа с массивами превышающими 2 Гб; распределенная обработка.... Например, я так и не сумел найти описание эффективного алгоритма "group by" с использованием чанков...

4. )))))))) Что там читать? Это больше вопрос удобства. И опять же проблема двух гиг.
Re[5]: Разработка OLAP engine
От: Аноним  
Дата: 12.05.05 11:31
Оценка:
Я так думаю, что вам нужно определиться какого типа OLAP хранилище вы будете строить: MOLAP, HOLAP, ROLAP.
Реальные алгоритмы реализации OLAP можно найти только в различных IEEE журналах. Я такие статьи встречал. Посмотрю дома, скину вам ссылки и что у меня есть — хотя там суровая математика.
Re[6]: Разработка OLAP engine
От: Yuri Burger  
Дата: 12.05.05 11:39
Оценка:
Здравствуйте, Аноним, Вы писали:

А>Я так думаю, что вам нужно определиться какого типа OLAP хранилище вы будете строить: MOLAP, HOLAP, ROLAP.


Чесно гововря я пока не увидел особой разницы в физической структуре перечисленных типов.. опятьже, это изза того что попавшиеся мне описания сводятся к использованию какихлибо существующих БД, и уже от самих БД и происходят названия и принципы работы перечисленных типов 8-\

А>Реальные алгоритмы реализации OLAP можно найти только в различных IEEE журналах.

A> Я такие статьи встречал. Посмотрю дома, скину вам ссылки и что у меня есть

Вот спасибочки. А то документации впринципе много, но в основном статьи касающиеся какихто деталей — оптимизация запросов, оптимизация отдельных функций, организация кэширования... но чего то объемлещего, охватывающего всё это вцелом, я пока не нашел...

A> — хотя там суровая математика.


Тож не плохо
В любом случае спасибо, а то надоело уже велосипеды изобретать
Re[7]: Разработка OLAP engine
От: Аноним  
Дата: 12.05.05 12:52
Оценка:
Здравствуйте, Yuri Burger, Вы писали:

YB>Здравствуйте, Аноним, Вы писали:


А>>Я так думаю, что вам нужно определиться какого типа OLAP хранилище вы будете строить: MOLAP, HOLAP, ROLAP.

YB>Чесно гововря я пока не увидел особой разницы в физической структуре перечисленных типов.. опятьже, это изза того что попавшиеся мне описания сводятся к использованию какихлибо существующих БД, и уже от самих БД и происходят названия и принципы работы перечисленных типов 8-\

И не только в этом нужно определиться. А вообще что нужно на выходе и какие входные данные? Т.е. движок — это очень расплывчатое понятие.
Например, я в банке строил OLAP-расширение существующей базы и движок под нее для агрегации и презентации данных.
Основной была задача: увеличить производительность в построении online-отчетов любой сложности (5 сек на выдачу готовой картинки ) и распределенная работа с данными. Но решалось куча сопутствующих задач по оптизизации и реализации. Например, был написан собственный JDBC-драйвер для DBF-талиц, т.к. существующие нейдовлетворяли по скорости и работе с файлами; построет кэш первого уровня, т.е. одинаковые запросы больше одного раза не выполняются; была реализована инкрементальная репликация данных и т.д. Весь комплекс включал и сервер базы данных и сервер приложений и различные сервера и клиентские машины. Все эти решения в сумме дали результат, но на проработку требований и возможностей ушло львиная доля времени.

А>>Реальные алгоритмы реализации OLAP можно найти только в различных IEEE журналах.

A>> Я такие статьи встречал. Посмотрю дома, скину вам ссылки и что у меня есть
Зря вы от olap.ru "нос воротите" там много нужного и полезного. Если не непосредственно на нем, то по ссылкам можно много найти. А так по инету нужно искать, но не упираться строго в OLAP, а вообще в "повышение производительности". Иногда неожиданно решения находяться. На theserverside.com зайдите.

YB>Тож не плохо

YB>В любом случае спасибо, а то надоело уже велосипеды изобретать
Все равно прийдется, т.к. готовых решений нет У каждого своя специфика и работы и данных.
Re[8]: Разработка OLAP engine
От: Yuri Burger  
Дата: 12.05.05 14:02
Оценка:
А>А вообще что нужно на выходе и какие входные данные?

Для начала хотяб простейший вариант:

на входе:

полотно данных (одна таблица с дофигищем колонок) размера скажем порядка 100 милионов записей.

описания измерений/иерархий , перечисление фактов (measures) — в идеале тут формулы агрегации, но пока хотяб просто сумма..
+ вся дополнительная метаинформация связывающая измерения с полотном и т.д.

после предобработки поидее получаю некое внутреннее OLAP хранилище (таблици фактов, измерений, чанки, кэши, ХЗ шо там еще)

дальше собсно запросы/ответы

Вроде как сложного пока ничего нет... но.. Сразу же предвидятся проблемы обработки больших объемов данных, тобишь прийдется бить на чанки.. вот тут первый камень. Наиболее используемая операция будет из серии "group by". Для начала не могу найти даже хоть какогото описания реализации group_by на чанках


А>Например, я в банке строил OLAP-расширение существующей базы и движок под нее для агрегации и презентации данных.


это в конечном итого "посредник между клиентом и сужествующим сервером БД"?

А>Зря вы от olap.ru "нос воротите" там много нужного и полезного.


Основное уже перерыл. Канечно ресурс полезный.. для общего понимания OLAP (оно кстати не всегда однозначно)... Но мне былиб больше полезны технические детали. Алгоритмы, структуры... Вобщим, таки "математика"
Re[9]: Разработка OLAP engine
От: Аноним  
Дата: 12.05.05 18:20
Оценка: 11 (1)
Нашел дома пару статей (pdf-никb).
1. Constructing OLAP Cubes Based on Queries 1.2Мб
2. High Performance Multidimensional Analysis of Large Datasets 900Кб (Кажется ее содержимое близко вам по теме)
3. A Multidimensional Modeling Approach for OLAP within the Framework of the Relational Model based on Quotient Relations 650Кб
4. Dynamic Maintenance of Multidimensional FI.ange Data Partitioning for Parallel Data Processing 1.1Мб
5. A Multidimensional and Multiversion Structure for OLAP Applications 350Кб

На sql.ru есть форум по OLAP. На нем присутствует mosha — один из разработчиков MSAS. Он как-то указывал номера патентов, по которым можно понять суть работы некоторых алгоритмов в AS. Поищите еще там. В любом случае, я бы глянул на uspto.gov патенты по OLAP — благо они все бесплатно доступны.

P.S.
Везет же людям. Мне OLAP пока не светит. (
Re[9]: Разработка OLAP engine
От: vdshat  
Дата: 12.05.05 19:56
Оценка:
Здравствуйте, Yuri Burger, Вы писали:

А>>А вообще что нужно на выходе и какие входные данные?

YB>Для начала хотяб простейший вариант: на входе:
YB> полотно данных (одна таблица с дофигищем колонок) размера скажем порядка 100 милионов записей.
YB> описания измерений/иерархий , перечисление фактов (measures) — в идеале тут формулы агрегации, но пока хотяб просто сумма..
YB> + вся дополнительная метаинформация связывающая измерения с полотном и т.д.
YB>после предобработки поидее получаю некое внутреннее OLAP хранилище (таблици фактов, измерений, чанки, кэши, ХЗ шо там еще)
YB>дальше собсно запросы/ответы
YB>Вроде как сложного пока ничего нет... но.. Сразу же предвидятся проблемы обработки больших объемов данных, тобишь прийдется бить на чанки.. вот тут первый камень. Наиболее используемая операция будет из серии "group by". Для начала не могу найти даже хоть какогото описания реализации group_by на чанках
Я делал на tree map, мне скорости хватало, т.к. промежуточную агрегацию я делал заранее при накоплении стандартными средствами. Например, накопленная сумма по счетам набираем в текущем месяце по дням, в месяце по неделям, а в году по месяцам. Поэтому в конечном итоге приходится обрабатывать не 100 млн записей, десятки тысяч максимум на запрос. Но при больших объемах данных нужно вводить и парралельные вычисления. Вообще, примеры реализации агрегации можно посмотреть на открытых проектах баз данных.

А>>Например, я в банке строил OLAP-расширение существующей базы и движок под нее для агрегации и презентации данных.

YB>это в конечном итого "посредник между клиентом и сужествующим сервером БД"?
Скорей сервер БД является одним из звеньев — хранилища данных. Например, выбираем по измерению Дата все документы средствами БД, а потом на сервере приложений формируем кэш и агрегацию.

А>>Зря вы от olap.ru "нос воротите" там много нужного и полезного.

YB>Основное уже перерыл. Канечно ресурс полезный.. для общего понимания OLAP (оно кстати не всегда однозначно)... Но мне былиб больше полезны технические детали. Алгоритмы, структуры... Вобщим, таки "математика"
Да, с техническими ноу-хау, конечно, проблема. Приходится и самому доходить и изобретать тоже
Re[10]: Разработка OLAP engine
От: Yuri Burger  
Дата: 13.05.05 06:52
Оценка:
Здравствуйте, Аноним, Вы писали:

А>Нашел дома пару статей (pdf-никb).

А>2. High Performance Multidimensional Analysis of Large Datasets 900Кб (Кажется ее содержимое близко вам по теме)
А>3. A Multidimensional Modeling Approach for OLAP within the Framework of the Relational Model based on Quotient Relations 650Кб
А>4. Dynamic Maintenance of Multidimensional FI.ange Data Partitioning for Parallel Data Processing 1.1Мб

если не тяжко, кинь 2,3,4 на "jo_kruger на mail.ru", остальные я у гугля взял

в свою очередь могу поделиься этим:

Query Processing Notes
PARSIMONY: An Infrastructure for Parallel Multidimensional Analysis and Data Mining
OLAP OPERATIONS
Cost-Effective Parallel Computing
An Array-Based Algorithm for Simultaneous Multidimensional Aggregates
Design and Implement of a Scalable Parallel System for Multidimensional Analysis and OLAP
Data Warehousing , CPS 216 , Advanced Database Systems
Efficient Data-Reduction Methods for On-Line Association Rule Discovery
Parallelizing The Data Cube
Materialized View Selection as Constrained Evolutionary Optimization
Caching for Multi-dimensional Data Mining Queries
The Implementation and Perfomance of Compressed Databases
CUBIST: A New Approach to Speeding Up OLAP Queries in Data Cubes

А>На sql.ru есть форум по OLAP.


сенкс

А>P.S.

А>Везет же людям. Мне OLAP пока не светит. (

А ты свяжись со мной, мож и засветит — давно людей на интересные проекты ищем
Re: Разработка OLAP engine
От: GlebZ Россия  
Дата: 13.05.05 17:40
Оценка:
Здравствуйте, Jo Kruger, Вы писали:

JK>Ктонить сабжем занимался?

Siteseer рулит.http://citeseer.ist.psu.edu/281534.html. Далее по интересующим ссылкам.

С уважением, Gleb.
... << RSDN@Home 1.1.4 beta 4 rev. 358>>
Re[2]: Разработка OLAP engine
От: Yuri Burger  
Дата: 14.05.05 07:16
Оценка:
Здравствуйте, GlebZ, Вы писали:

JK>>Ктонить сабжем занимался?

GZ>Siteseer рулит.http://citeseer.ist.psu.edu/281534.html. Далее по интересующим ссылкам.

Вот спасибочки... вроде много интересного..
Re[3]: Разработка OLAP engine
От: GlebZ Россия  
Дата: 14.05.05 09:09
Оценка: 3 (1)
Здравствуйте, Yuri Burger, Вы писали:

YB>Вот спасибочки... вроде много интересного..

Не за что. Вообще, я бы сказал, если кому хочется узнать математику Баз Данных, то надо сразу на citeseer. Более полного сайта с научными работами по базам данных я не видел (если не говорить о платном ACM).

С уважением, Gleb.
... << RSDN@Home 1.1.4 beta 4 rev. 358>>
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.