|
Программирование >> Проектирование баз данных
организации, рекомендуем сначала ограничиться небольшим объемом. Если вы при первой попытке будете нацелены на разработку общекорпоративного решения, то ситуация сложится явно не в вашу пользу. Поэтому лучше сконцентрироваться на узкой, четко ограниченной области бизнеса, для которой можно выполнить поставленную задачу в разумные сроки и которая характеризуется небольшим объемом данных, поддающихся управлению. Решив эту задачу, можно начинать завоевывать мир! Достижения Oracle в технологии хранилищ данных Oracle осваивала технологию хранилищ данных на удивление медленно. В начале 90-х годов, когда покупатели ее СУБД уже начали реализовывать у себя хранилища данных, Oracle несколько запаздывала с обеспечением прямой поддержки этой технологии. Когда стало ясно, что компания отстает от таких поставщиков, как Redbrick, она выступила с рядом инициатив, целью которых было догнать и перегнать конкурентов. Среди этих мероприятий было приобретение у фирмы IRI Software ОЕАР-продукта PC Express (который сейчас известен как Oracle Express). Кроме того, Oracle призвала третьи фирмы к объединению усилий и создала организацию Warehouse Technology Initiative (WITI). Сейчас у компании свыше 30 партнеров в данной области. Oracle признала, что версия 7.0 не удовлетворяла требованиям к хранилищам данных, и с каждым последующим выпуском стала уделять этой технологии все больше и больше внимания. В версии 7.1 появились дополнения, обеспечивающие как обработку запросов данных, так и прием данных в хранилищах. Использование Parallel Query Option в многопроцессорной среде позволяет задействовать при больших и сложных запросах несколько процессоров. В этой версии также имеются средства параллельной загрузки данных и параллельного построения индексов. SQL*Loader допускает ускоренный прием данных. Несколько сеансов SQL*Loader могут одновременно загружать данные в одну таблицу с помощью механизма прямой загрузки, что позволяет сэкономить много времени. Средство репликации данных позволяет реплицировать таблицу из любой действующей базы данных. Это служит альтернативой всасыванию данных в хранилище в форме двумерных файлов. Конечно, формат этой таблицы может не соответствовать требованиям, но реплицированную таблицу можно подвергнуть преобразованиям и получить другую таблицу, нужной формы. Реплицированная таблица фактически находится в загрузочной секции хранилища. Появление версии 7.2 сопровождалось заявлениями о двукратном повышении производительности при создании индексов и при выполнении сложных запросов некоторых типов. Создание индексов происходит лучше за счет того, что система обходит буферный пул, т.е. по команде CREATE INDEX запись осуществляется непосредственно в блоки базы данных. Усовершенствования в методе выполнения предложения CREATE TAB ЕЕ... AS SELECT... также позволяют параллельно выполнять операции вставки и запроса. Это выгодно при создании таблиц итоговых данных. Оптимизатор версии 7.3 имеет специальную логику для обработки соединений по схеме звезда . Здесь отсутствуют ограничения на количество экстентов в объекте базы данных. В этом выпуске также сделаны значительные усовершенствования, повышаюшие эффективность обработки соединений с представлениями, созданными с использованием UNION ALL. Это особенно важно для случаев, когда таблица фактов в хранилише секционирована, но для некоторых запросов, которым нужно сводное представление данных, требуется выполнить объединение. Однако наиболее важным является то, что в версии 7.3 наконец-то реализованы гистограммы распределения значений. Это позволяет оптимизатору запросов вычислять избирательность при индексировании данных, в распределении значений которых наблюдается перекос. В Oracle? есть еше ряд возможностей, которые не предназначены специально для хранилиш данных, но которые мы можем использовать в этой области. Например: В больших неоднородных сетях многие продукты Oracle класса Gateway и Interchange (например. Transparent Gateway для IBM DB2) могут избавить пользователя от утомительной выгрузки в двумерный файл и после-дуюшей перезагрузки, а опция UNRECOVERABLE в INSERT...SELECT... еше более уменьшает затраты, связанные с такими операциями. Данные, которые необходимо держать в хранилише, не обязательно являются классическими данными в форме записей. Это могут быть большие объемы чисто текстовых данных (например, документы, созданные при помощи текстовых процессоров) или мультимедийные презентации. С такими неструктурированными данными можно работать в хранилище, если интегрировать приложение с Oracle Text Server и Oracle Media Server. Например, Oracle Text Server обеспечивает ускоренный поиск слов в тексте при больших объемах неструктурированных данных и может быть мощным инструментом исследования данных. У Oracle есть с чем выступить и на арене средств исследования данных. Регь идет о группе продуктов Discoverer/2000. Предлагаются два очень похожих по своей природе продукта - Oracle Data Query 4 и Oracle Data Browser 2. Однако, по нашему мнению, в этой области Oracle еще не достигла зрелых результатов. Не забывайте об осторожности Теперь, когда мы установили, в чем состоят основные достоинства хранилищ данных, нелишним будет выяснить, чего же следует опасаться при работе с ними. Перед тем как вливаться в ряды приверженцев технологии хранилищ данных, ознакомьтесь с нашими предостережениями. Хранилища данных - это технология, в которую нужно погружаться плавно. Необходимо действовать постепенно, вводя по одному механизму подачи данных за раз. Если вы изберете метод большого взрыва , то почти наверняка столкнетесь с серьезными проблемами. Полную неудачу вы, конечно, не потерпите, но всегда будете сожалеть о тех или иных решениях. Итеративный же подход позволяет использовать опыт, приобретенный на предыдущих этапах, и сделать всю задачу более управляемой. Тем не менее, даже в небольшом проекте сначала нужно создать базовую инфраструктуру, и вы должны разъяснить своим пользователям, что реальная выгода от хранилища данных будет ощущаться по мере роста его сложности и объема, однако за один шаг этой цели достичь нельзя. Помните, что в хранилище стягиваются данные из всей организации. В больщинстве организаций наблюдается следующая картина: то, что в отделе сбыта называют прибором, в отделе эксплуатации могут называть устройством. Более того, продавцы используют для обозначения экземпляра этого прибора-устройства трехзначный код, а группа эксплуатации - шестизначный. Если вы хотите, чтобы и приборы, и устройства фигурировали в отчетах как один и тот же объект (а именно так и бывает в реальной жизни), то придется заставить организацию принять стандартный набор терминов и формат обозначений. Конечно, можно в этом случае ввести синонимы, но это тоже чревато опасностью. На предприятии должны проникнуться технологией, быстро принимать решения о стандартах данных и быть готовыми к компромиссам. В предыдущем замечании мы упомянули о различиях в наименованиях и форматах данных. Могут иметь место и более тонкие, но глубокие аномалии. Например, покупатель для одной части организации может быть филиалом или подразделением материнской компании-покупателя для другой части организации. Различия такого типа трудно выявить, а там, где это сделать удается, их бывает тяжело разрешить без ущерба для той или иной части организации. Подчеркиваем: чем больше используется механизмов подачи данных, тем больше времени нужно отводить на урегулирование проблем, связанных с несоответствиями такого типа. Кроме того, конечно, наличие строгой, четко обставленной ограничениями модели данных - несомненный плюс, но это возможно не всегда, потому что данные из несоизмеримых источников могут стыковаться не очень хорошо. Например, если нет гарантии, что какой-то источник всегда будет поставлять данные, то придется допустить неопределенные значения в столбце, который в нормальных условиях был бы определен как NOT NULL. Чтобы этого не делать, можно помещать в столбец текстовую строку UNKNOWN. Мы советуем перед проектированием хранилища данных предусмотреть меры по проверке качества данных в каждой из подающих систем. Для вас Крайне нежелательно, чтобы ваше начальство принимало смелые корпоративные решения на основании данных, достоверность которых вызывает сомнения. Можно, например, фильтровать данные, поступающие из определенных источников, или полностью отключить источник, пока не будет проведена очистка данных.
|
© 2006 - 2024 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки. |