База данных объектов, бизнес-аналитика и складское хранение

Извините, если этот вопрос показался мне новичком, но я новичок в мире хранилищ данных и бизнес-аналитики.

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

Вопрос в том, нужны ли нам одни и те же концепции (многомерная база данных - хранилище данных и т. Д.), Когда мы говорим о бизнес-аналитике для объектной базы данных? Базы данных объектов не имеют объединений, потому что отношения между объектами поддерживаются прямыми ссылками.


person Community    schedule 07.09.2009    source источник


Ответы (2)


Многомерность - важная особенность хранилищ данных.

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

Запросы по схеме "звезда" не очень сложные. На самом деле они очень простые, так как почти всегда имеют форму SELECT SUM(MEASURE) FROM FACT JOIN DIM1 ON ... JOIN DIM2 ON ... WHERE....

Операции соединения, как правило, медленные. Однако объединения можно выполнять в объектно-ориентированном коде, а не в хранилище SQL.

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

В остальных случаях у нас есть схема «снежинка», в которой измерение (обычно измерение клиента, пациента или члена) почти такого же размера, как соответствующая таблица фактов. В этом случае полезно реляционное соединение в базе данных.

«Базы данных объектов не имеют объединений, потому что отношения между объектами поддерживаются прямыми ссылками».

Не совсем так. В объектных базах данных есть навигация от объекта к объекту. Если вы извлекаете набор объектов вместе со связанными с ними объектами, фактически будет выполнена операция соединения.

«Вопрос в том, нужны ли нам одни и те же концепции (многомерная база данных - хранилище данных и т. д.), когда мы говорим о бизнес-аналитике для объектной базы данных?»

да. Многомерность необходима. Абсолютно. База данных объектов будет представлять это так же (или, возможно, лучше), чем реляционная база данных. Любая из моделей, однако, должна отражать сущность мер и их измерений.

person Community    schedule 08.09.2009

Возможно, вам стоит взглянуть на так называемые базы данных документов. CouchDB - популярный продукт с открытым исходным кодом (бесплатный для получения и извлечения) и простой для понимания. CouchDB хранит все данные в виде документов JSON (легко анализируемая нотация объектов JavaScript) и взаимодействует с внешним миром, используя только REST (только HTTP, если вы новичок в этом). Одна из наиболее интересных функций CouchDB заключается в том, что вы можете выбирать данные, используя парадигму MapReduce для обработки и агрегирования данных.

Взгляд на CouchDB может дать вам представление о некоторых возможностях, когда дело доходит до нереляционных баз данных. Знайте, что CouchDB в первую очередь занимается хранением документов данных, а не целых объектов. Некоторые базы данных являются настоящими объектными базами данных, поскольку они хранят состояние данного объекта в программе. Сравните db4o.

person Community    schedule 08.09.2009