Створення бази даних – ЧАСТИНА 7

Незалежно від свого імені, член (All) є одночасно членом, заданих за замовчуванням, неявно включається в будь-який запит, для якого дане вимір явно не визначено Член, заданий за замовчуванням, можна змінити за допомогою параметра вимірювання Default Member Однак до зміни даного параметра слід підходити з обережністю Зокрема, якщо встановити цей параметр для атрибута року в 2005, то будь-який запит, в якому явно не вказано рік, буде повертати дані тільки для цього року Установка членів за замовчуванням може також викликати конфлікт Наприклад, якщо параметр DefaultMember для року встановити в значення 2005 рік, а для місяця – у серпні 2004 року, запити, в яких явно не будуть вказані місяць і рік, взагалі не повернуть результатів

Члени за замовчуванням зазвичай встановлюють, коли не всі дані, включені в куб, часто використовуються Як приклад розглянемо куб, в який включені всі продажі, переважна кількість яких були успішними, і тільки невелика частина їх зірвалася через виникнення якихось проблем (наприклад, проблем з кредитною лінією замовника) У даному випадку переважна більшість запитів буде цікавити дані про обсяги успішних продажів До завершившимся невдачею операціях можуть звернутися тільки працівники, які проводять маркетинговий або інший аналіз Таким чином, установка члена за замовчуванням у вимірі статусу транзакції продажу в успішний варіант спростить запити, виконувані абсолютною більшістю користувачів

Ще одне рішення полягає в повному виключенні рівня (All) за допомогою установки для параметра атрибута IsAggregatable значення false Коли рівень (All) виключено, слід визначити параметр DefaultMember в іншому випадку рівень, заданий за замовчуванням вибиратиметься випадковим чином під час виконання запиту До того ж цей атрибут повинен брати участь в призначених для користувача ієрархіях тільки на верхньому рівні

Угруповання членів вимірювання

Створення груп членів, або дискретизація, являє собою процес угруповання значень багатозначного атрибута в своєрідні блоки даних Цей підхід може виявитися особливо корисним при поданні великих масивів послідовних значень, наприклад відстаней комунікацій або річних доходсгв Ця функція включається для атрибута шляхом установки для параметра DiseretizationBucketCount кількості створюваних груп та вибору методу дискретизації (параметр Discretization Method) зі списку Автоматичний метод дискретизації (значення Automatic) призведе до належною угрупованню в більшості додатків Установка автоматичного методу віддає вибір алгоритму на відкуп службі аналізу, яка сама виконує аналіз группіруемих даних Якщо результати автоматичної угруповання вас не влаштовують, скористайтеся іншими методами, за винятком UserDefined, який зарезервований для локальних кубів Після створення угрупування не обовязково буде статичною – при кожній обробці куба здійснюватиметься перегрупування з урахуванням змін у вихідних даних

Атрибут, в якому використовується угруповання, не повинен мати властивостей членів Це означає, що інші атрибути не можуть посилатися на дискретний атрибут як джерело своїх агрегацій Якщо діскретізіруемий атрибут повинен брати участь в природній ієрархії (наприклад, є ключем або сильно впливає на продуктивність), подумайте про створення ще одного атрибута, заснованого на тому ж стовпці і забезпечує групове уявлення

Приділіть увагу конфігуруванню вихідних стовпців атрибута і їх упорядкування, оскільки параметр OrderBy визначатиме, в якому порядку дані будуть розглядатися при створенні груп і в якому порядку будуть відображатися самі ці групи

Куби

Куб обєднує в собі всі елементи проектування та підносить їх користувачеві, комбінуючи джерела даних, їх подання, вимірювання, міри і обчислення в єдиному контейнері У цьому сенсі куб є уніфікованої моделлю вимірів (UDM)

Куб може містити дані (заходи) з безлічі таблиць фактів, організованих у групи заходів Для представлення службі аналізу дані зазвичай моделюються за допомогою декількох кубів і баз даних, і це має свої переваги як з точки зору розробника, так і з точки зору кінцевого користувача Користувачі, яким потрібний тільки невеликий зріз того, що містить куб, можуть задовольнитися визначенням проекції (щось подібне поданням служби аналізу), відображаючи тільки те, що має для них сенс З точки зору розробника, обмеження числа кубів і баз даних дозволяє звести до мінімуму число повязаних вимірювань і заходів

Використання майстра кубів було розглянуто в попередніх розділах як у напрямку зверху вниз (див розділ Знайомство зі службою аналізу), використовуючи модель куба для генерації відповідних реляційних пакетів і пакетів служби інтеграції, так і в напрямку знизу вгору (див розділ Створення куба) Після того як структура куба створена, її можна налаштувати за допомогою конструктора кубів (Cube Designer)

Відкрийте будь куб в Solution Explorer, щоб викликати вікно конструктора, показане на рис 438 Як бачите, конструктор кубів містить кілька вкладених уявлень, які будуть описані далі

Puc 438 Конструктор кубів

Подання Cube Structure

Подання Cube Structure є головною панеллю проектування Поряд з всюдисущими панелями Solution Explorer і Properties наступні три панелі являють структуру куба

■ Панель Data Source View, що знаходиться в центрі, відображає фрагмент вистави джерела даних, на основі якого побудований куб Кожна таблиця пофарбована в певний колір, відповідний її функціональності: в жовтий пофарбовані таблиці фактів, в синій – вимірювань, в білий – ті, які не можна зарахувати ні до однієї з цих категорій Зазвичай на цій панелі відображається тільки частина вистави щоб відобразити всі таблиці, потрібно вибрати в контекстному меню пункт Show All Tables або Show Tables Можна також використовувати діаграми, визначені в поданні джерела даних Для цього потрібно вибрати пункт Copy Diagram From контекстного меню Для перемикання між деревовидним поданням даних таблиць і відносин і діаграмою можна використовувати панель інструментів

■ На панелі Measures, розташованої у верхній лівій частині вікна, перераховуються всі заходи куба, організовані по групах Як панель інструментів, так і контекстне меню дозволяє перемикатися між табличним і деревовидним відображенням заходів

■ На панелі Dimensions, розташованої в нижній лівій частині вікна, перераховані всі вимірювання, асоційовані з кубом Ця панель містить дві вкладки У вкладці Hierarchies відображаються всі вимірювання і призначені для користувача ієрархії в цьому вимірі У вкладці Attributes відображаються всі вимірювання і які у них атрибути Кожен вимір в обох вкладках має посилання, використовувану для його редагування в конструкторі вимірювань

Оскільки порядок, в якому виміру й можливі рішення у відповідних списках, визначає порядок, в якому вони відображаються на головній панелі, список можна реорганізувати або за допомогою кнопок Move Up / Move Down, або методом перетягування в деревовидному поданні Подібно конструктору вимірювань, зміни в кубі повинні бути розгорнуті, перш ніж вони будуть відображені

Заходи

Кожна міра заснована на стовпці подання джерела даних і на деякій підсумкової функції Підсумкова функція визначає порядок обробки даних фактичної таблиці та їх консолідації Як приклад розглянемо просту таблицю фактів, що містить стовпці значень дня, магазину і обсягу продажів Вона зчитується в куб з мірою обсягу продажів, виміром магазинів і тимчасовим виміром з атрибутами року, місяця і дня Якщо як підсумкової функції для міри обєму продажів використовується Sum, то рядки зчитуються в листової рівень куба, підсумовуючи всі рядки вихідної таблиці з однаковими комбінаціями значень магазина / дня Після цього вони консолідуються на більш високий рівень шляхом підсумовування добових обсягів продажів Однак якщо підсумкової функцією є Min, то алгоритм буде зовсім іншою З усіх рядків з дублюючим комбінацією магазину і дня вибирається найменший обсяг продажів, який зберігається на листовому рівні При консолідації на більш високий рівень серед листових значень також шукається мінімальне

Серед підсумкових функцій можна виділити наступні

■ Sum Сума значень всіх нащадків

■ Min Мінімальне значення серед всіх нащадків

■ Мах Максимальне значення серед всіх нащадків

■ Count Кількість відповідних рядків таблиці фактів

■ Distinct Count Кількість унікальних значень в стовпці (наприклад, число унікальних замовників)

■ None Не виконується жодної консолідації Будь-яке значення, що не прочитане безпосередньо з таблиці фактів, буде порожнім

Джерело: Нільсен, Пол Microsoft SQL Server 2005 Біблія користувача : Пер з англ – М: ООО ІД Вільямс , 2008 – 1232 с : Ил – Парал тит англ

Схожі статті:


Сподобалася стаття? Ви можете залишити відгук або підписатися на RSS , щоб автоматично отримувати інформацію про нові статтях.

Коментарів поки що немає.

Ваш отзыв

Поділ на параграфи відбувається автоматично, адреса електронної пошти ніколи не буде опублікований, допустимий HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

*

*