|
Программирование >> Проектирование баз данных
Помните о том, что данных в вашем хранилище сразу же будет очень много и со временем их объем будет только расти. Поэтому еще на ранних J этапах обязательно выполните планирование того, как вы будете управлять этим постоянно увеличивающимся объемом данных. Необходимо учитывать и вопросы системного управления, связанные с администрированием такого большого количества данных. Администратору БД и системному администратору наверняка понадобится помощь в уходе за этим ребеночком! Администратор БД должен участвовать в проекте с самых первых этапов. Вновь повторим - нужно начинать с малого. Первым упражнением с хранилищем данных может быть следующее. Создайте денормализован-ную копию одной эксплуатируемой базы данных, а затем снабдите ее интерфейсом для загрузки двумерных файлов и простыми средствами выполнения запросов. Вопросы проектирования для хранилищ данных Теперь, когда мы понимаем, что такое хранилище данных, давайте рассмотрим факторы, влияющие на методы проектирования хранилищ. Многомерное моделирование и звездообразные схемы Выше мы вскользь упомянули о том, что хранилища данных можно моделировать методами многомерного моделирования с использованием звездообразной схемы. Повторим, что традиционные методы моделирования данных и проектирования баз данных, как правило, не позволяют получить структуры данных, оптимизированные для массовых запросов. Поэтому придется отбросить некоторые традиционные идеи о проектировании и выучить ряд новых приемов. В этом разделе частично затрагиваются вопросы анализа, потому что это важно для понимания того, как определяются эти модели. Как и большинство понятий в компьютерном мире, звездообразная схема имеет несколько синонимов: многомерная схема, куб данных и соединение по схеме звезда . Причина, по которой эту схему называют звездообразной, заключается в том, что ее графическое представление напоминает звезду. Факты и измерения Звездообразная модель состоит из центральной таблицы фактов (fact table), которая окружена несколькими таблицами измерений (dimension table) (рис. 13.3). Физически таблица фактов часто представляет собой несколько секционированных таблиц. (О секционировании мы поговорим ниже.) Таблица измерения Таблица измерения Таблица измерения Рис. 13.3. Звездообразная схема Отношения между таблицей фактов и таблицами измерений должны быть простыми, чтобы существовал только один возможный путь соединения любых двух таблиц и чтобы смысл этого соединения был очевиден и хорошо понятен. Всегда необходимо помнить о том, что мы разрабатываем эту систему для того, чтобы пользователи могли определять свои собственные запросы. Ориентированные на конечного пользователя средства нерегламентированных запросов не прижились в традиционной реляционной базе данных. Даже если столбцам этой базы дать информативные имена, проблема не исчезнет: отношения внутри модели данных останутся сложными, а число этих отношений - большим. Здесь мы имеем в виду, что, как правило, существует более одного способа соединения двух таблиц. Иногда в запросе должны быть использованы таблицы, не имеющие отношения к данному бизнесу, потому что они содержат ссылки на другие нужные для запроса таблицы. (Некоторые программные продукты, например HP Intelligent Warehouse и Business Objects, решают эту проблему с помощью преобразующего слоя.) Еще одно преимущество простоты отношений состоит в том, что это помогает повысить производительность. Все, что аналитик должен сделать при многомерном моделировании, - это выявить факты и их измерения! Факты обычно представляют собой основные виды бизнес-деятельности организации и факторы, влияющие на данный бизнес или его сектор. Если у организации (или подразделения) есть сформулированная цель, то требуется определить, какие элементы ее бизнеса играют главную роль в достижении этой цели. Чтобы найти кандидатов на включение в этот список, исследуйте модели сущностей ООТ-систем и проверьте отчеты, которые выдают действующие системы для руководителей и специалистов по маркетингу. Список, который вы предложите, пройдет процедуру уточнения и в конечном итоге будет согласован. Что можно сказать о таблицах измерений? В широком смысле слова - это элементы, которые могут оказывать определенное влияние или порождать различные тенденции в развитии наших фактов. Исходя из этого, измерения можно разбить на следующие категории: люди, места, вещи и время (рис. 13.4). Рис. 13.4. Классификация измерений: люди, места, вещи и время Рассматривайте таблицу фактов в свете реляционной теории: у нее есть внешний ключ к каждой соответствующей таблице измерения. Она объединяет измерения в нечто, представляющее собой значимое событие, и содержит качественную и количественную информацию об этом событии. Эти внешние ключи можно использовать двумя способами: 1. Для соединения с таблицей измерения с целью выбрать описательную информацию об этом измерении. 2. Как правило, они являются основой для выполнения обобщений в таблице фактов. Например, мы можем суммировать содержащиеся в таблице фактов количественные показатели, которые относятся к конкретному покупателю. Если имя покупателя является частью утверждения о факте, то такое суммирование можно выполнить без последующего соединения с какой-либо другой таблицей. Таблица фактов может включать и описательную информацию, но это бывает нечасто - обычно описания находятся в таблицах измерений. В сценарии продаж таблица фактов может содержать данные о том, сколько товара реализовано и на какую сумму, а также внешние ключи к таблицам измерений, характеризующих операцию продажи (какой товар, когда он был продан, кто продал его и какой способ платежа был использован). Временное измерение в звездообразной схеме обладает рядом интересных свойств. Факт, скорее всего, будет связан не с одним моментом времени, а
|
© 2006 - 2024 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки. |