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

■ AverageOfChildren Середнє значення нащадків, не рахуючи порожніх

■ FirstChild Значення першого нащадка

■ FirstNonEmpty Значення першого непорожньої нащадка

■ LastNonEmpty Значення останнього непорожньої нащадка

■ By Account Консолідація варіюється залежно від значень у вимірі розрахунків Параметр типу вимірювання повинен бути встановлений в значення Accounts, і один з атрибутів вимірювання повинен мати параметр Туре, встановлений в AccountType Стовпець, відповідний атрибуту з встановленим типом AccountType, містить певні рядки, що ідентифікують тип рахунку і, виходячи з цього, метод консолідації, використовуваний службою аналізу

Найкраще додавати нові заходи шляхом клацання правої кнопки миші на панелі Measures і вибору в контекстному меню пункту New Measure У діалоговому вікні, визначте підсумкову функцію і комбінацію таблиці / стовпці Нова міра відразу ж буде додана у відповідну групу заходів Групи заходів створюються для кожної таблиці фактів плюс для певних заходів підрахунку унікальних значень Ці групи відповідають різних запитах SQL, виконуваних для вилучення даних куба

Крім заходів, керованих безпосередньо з таблиць фактів, можна додати обчислювані заходи або за допомогою відповідного майстра, або безпосередньо в поданні обчислень

Додаткова Більш докладно про обчислюваних заходи ми поговоримо в розділі 45

інформація

Заходи можуть бути представлені користувачеві в сгруппированном по папках вигляді Для цього потрібно ввести в параметрі DisplayFolder імя папки, в якій повинна відображатися міра Також вважається хорошим тоном призначати кожній мірою формат за замовчуванням Для цього в параметрі FormatString або вибирається один із стандартних форматів, або безпосередньо вводиться користувальницький формат

Кожен куб може мати при необхідності міру, використовувану за замовчуванням Вона використовується для повернення запитам, в яких явно не вказана запитувана міра Для установки заходи, використовуваної за замовчуванням, виберіть імя куба у верхній частині дерева на панелі Measure і встановіть параметр DefailtMeasure, вибравши потрібну міру зі списку

Вимірювання куба

Ієрархії і атрибути в кожному вимірі можуть бути або відключені (відповідно за допомогою параметрів Enabled і AttributeHierarchyEnabled), або зроблені невидимими (відповідно за допомогою параметрів Visible і AttributeHierarchyVisible), якщо це доречно в контексті конкретного куба (відповідні приклади сценаріїв см в розділі Видимість і організація) Доступ до цих параметрів здійснюється шляхом виділення відповідного атрибута або ієрархії на панелі Dimensions та роботи з панеллю Properties Ці параметри спеціально призначені на роль вимірювання в кубі і не змінюють структуру самого вимірювання

Вимірювання можна додати в куб клацанням правою кнопкою миші на панелі Dimensions і вибором у контекстному меню пункту New Dimension Після додавання вимірювання в куб зверніться до подання Dimension Usage, щоб перевірити, чи правильно новий вимір повязане з усіма групами заходів

Подання Dimension Usage

Подання Dimension Usage відображає таблицю, в якій показано, як кожне з вимірів повязано з групами заходів Вимірювання та групи заходів є заголовками рядків і стовпців відповідно таким чином, кожна клітинка таблиці визначає відношення між відповідною парою вимірювання та групи заходів Список, що розкривається в лівому верхньому куті дозволяє приховувати рядки і стовпці для спрощення перегляду великих уявлень

Інформація, яка повинна була бути розділена на різні куби у версії Новинка Analysis Services 2000, у справжній версії може бути запросто включена в

2005 їодин куб Замість поділу кубів уявлення Dimension Usage дозволяє

по-різному застосовувати вимірювання куба до різних груп заходів

Конструктор кубів створює звязку за замовчуванням, грунтуючись на стосунках у поданні джерела даних, що в більшості випадків цілком адекватно У той же час деякі звязані обєкти вимагають особливого підходу, оскільки не управляються поданням джерела даних Клацнете на еліпсі в будь-якій комірці таблиці, щоб відкрити діалогове вікно Define Relationship, в якому можна вибрати тип ставлення Різні типи відносин вимагають різної інформації відображення Про це ми поговоримо в наступних розділах

Відсутність відносини

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

Звичайні відносини

Звичайним називають відношення таблиці фактів безпосередньо до таблиці вимірювання, подібно схемою зірка. У діалоговому вікні Define Relationship виберіть атрибут гранулярності (Granularity) як атрибута вимірювання, безпосередньо повязаного з групою заходів, – зазвичай це ключовий атрибут вимірювання У таблиці в нижній частині вікна виберіть імена стовпців таблиці фактів, відповідні ключовим стовпцях атрибута гранулярності

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

Фактичні відносини

Фактичними називають відносини, керовані безпосередньо в таблиці фактів, коли в ній містяться дані як фактів, так і вимірювань Цей тип звязку не вимагає яких-небудь додаткових налаштувань Тільки один вимір може мати фактичне ставлення з конкретною групою заходів На практиці це має на увазі наявність не більше одного фактичного виміру для кожної таблиці фактів, яке містить всі дані вимірювання в цій таблиці фактів

Посилальні відносини

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

Створюється посилальне ставлення в діалоговому вікні Define Relationship за допомогою вибору вимірювання-посередника, повязаного з групою заходів Після цього вибираються атрибути, за якими звязуються посилальне вимір і вимірювання-посередник Зазвичай для підвищення продуктивності встановлюють прапорець Materialize

Відносини багато до багатьох

Відносини, розглянуті раніше, мали тип один до багатьох: один магазин може мати безліч транзакцій продажів, в одній країні може знаходитися безліч замовників Як приклад відносини багато до багатьох можна розглянути процес відстеження продажів книг по автору і книзі Кожен автор може написати безліч книг, а кожна книга може мати безліч авторів Ставлення багато до багатьох дозволяє моделювати таке ставлення в службі аналізу, однак це вимагає особливої ​​конфігурації, починаючи з подання джерела даних (рис 439) Ставлення багато до багатьох можна реалізувати за допомогою використання додаткової таблиці фактів, виступаючої в ролі посередника У цій таблиці перераховується все безліч пар, що беруть участь у відношенні між вимірами багато до багатьох і звичайними У простіших додатках звичайне вимір можна опустити і встановити пряме відношення між проміжної і основний таблицями фактів

Рис 439 Приклад відносини багато до багатьох

У діалоговому вікні Define Relationship обовязковим є тільки параметр імені групи заходів, створюваної в проміжній таблиці фактів для конфігурування відносини багато до багатьох. Всі інші параметри конфігурації управляються поданням джерела даних

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

Подання KPI

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

У поданні KPI кожен індикатор складається з декількох компонентів

■ Фактичне значення метрики, введене як вираз MDX, вичислювальне її

■ Призначення метрики – наприклад, який обсяг прибутку передбачений в бюджеті Призначення метрики також вводиться у вигляді вираження MDX, що обчислює відповідне значення

■ Стан метрики, сравнивающее фактичне і цільове значення Статус вводиться як вираз MDX, що повертає значення в діапазоні від -1 (дуже погано) до +1 (дуже добре) У додатках, що представляють дані KPI, може використовуватися графіка, що дозволяє зробити презентацію однакової в просторі всіх додатків

■ Тренд метрики, що показує, в якому напрямку вона змінюється Подібно станом, тренд вводиться як вираз MDX, повертає значення в діапазоні від -1 до +1 з підкріпленням графікою

При визначенні ключових індикаторів продуктивності можна за допомогою панелі інструментів перемикатися між режимами форми і браузера, що відображає результати Панель Calculation Tools, що знаходиться в лівій нижній частині вікна, відображає метадані куба і список функцій MDX, які можна використовувати при створенні виразів MDX методом перетягування елементів Вкладка Templates містить шаблони деяких найбільш поширених ключових індикаторів продуктивності

Подання Actions

Визначення дій дозволяє клієнту запускати параметризрвані команди, в тому числі розкривають деталі даних, що запускають звіт служби Reporting Services, обробні URL-адреси або командні рядка Дії можуть бути специфічними для відображуваних даних, у тому числі для окремих осередків і членів вимірювань, що дозволяє виконати більш детальний аналіз і навіть інтеграцію додатки аналізу в більш крупну середу управління даними

Подання Partitions

Розділи – це одиниці зберігання служби аналізу Вони зберігають дані групи заходів Спочатку конструктор кубів створює один розділ MOLAP для кожної групи заходів Як вже говорилося в розділі Архітектура сервера , MOLAP є найпереважнішим режимом зберігання для переважної більшості сценаріїв У той же час установка розмірів розділів і агрегацій є ключем до ефективної обробки даних та виконання запитів

Розміри розділів

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

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

од, такий як рік, місяць або квартал Розмір розділу важливий з точки зору його заповнення даними, так як він визначає інтервал часу, необхідний для обробки розділу Намагайтеся утримувати час обробки на рівні не більше декількох годин З іншого боку, розмір важливий і з точки зору процесу видалення, оскільки визначає обсяг даних, що видаляються за одну операцію

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

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

Створення розділів

Ключем до точного поділу даних є включення будь-якого рядка даних в масив тільки один раз Так як куб для звітності використовує комбінацію всіх розділів, дублювання рядків в різних розділах може спотворити результат Найпоширенішою помилкою є створення нового розділу без видалення розділу, створеного конструктором за замовчуванням У цьому випадку створений розділ буде містити одну копію всіх даних джерела, а розділ, заданий за замовчуванням, – другу, в результаті чого куб буде просто подвоювати істинні результуючі значення

Подання Partition складається з однієї звернутій панелі для кожної групи заходів в кожній панелі міститься таблиця, в якій перераховані існуючі в даний час розділи відповідної групи заходів Якщо виділити який-небудь розділ, то його параметри відобразяться на панелі Properties

Процес додавання розділу починається зі клацання на посиланні New Partition, щоб відкрити послідовність діалогових вікон майстра розділів (Partition Wizard)

■ Specify Source Information Виберіть відповідну групу заходів (за замовчуванням обрана та група, яка була виділена в момент запуску майстра) Якщо потрібна таблиця джерела включена в уявлення джерела даних, то вона відобразиться в списку Available Tables і може бути обрана В іншому випадку виберіть відповідний джерело даних у списку Look In і клацніть на кнопці Find Tables, щоб додати в список таблиці з обраного джерела При бажанні в поле Filter tables можете ввести частину імені таблиці джерела, щоб скоротити список відображуваних таблиць

■ Restrict Rows Якщо таблиця джерела містить тільки ті рядки, які повинні бути включені в розділ, пропустіть цю сторінку Якщо таблиця джерела містить більше рядків, ніж повинно бути включено в розділ, встановіть прапорець Specify query to restrict rows, і в полі Query буде автоматично сформовано повний запит SELECT, в якому відсутня тільки пропозиція WHERE Введіть відсутні обмеження і клацніть на кнопці Check, щоб перевірити синтаксис

■ Processing and Storage Locations Запропоновані за замовчуванням установки підійдуть для більшості ситуацій Якщо необхідно, виберіть інші параметри, щоб збалансувати навантаження на диски і сервери

■ Completing the Wizard На цій сторінці введіть імя розділу-найчастіше використовують імя групи, за яким слід деякий ознака зрізу (наприклад, Inter-net__0rders_2 004) Якщо агрегація ще не була визначена, визначите її зараз Якщо агрегація була визначена для іншого розділу, скопіюйте її звідти, щоб підтримувати однаковість розділів

Після того як розділ був доданий, його імя і джерело можна відредагувати, клацнувши на відповідній комірці в таблиці розділів подання Partition

Проектування агрегацій

Найкращий компроміс між часом обробки, розмірами розділів сховища і продуктивністю запитів досягається шляхом визначення тільки тих агрегацій, які допомагають відповісти на найпоширеніші запити до кубу Заснована на статистиці використання оптимізація в службі аналізу відстежує всі виконувані щодо куба запити, а потім моделює агрегації, що підтримують ці запити Однак накопичення представницької історії виконання запитів вимагає досить тривалого періоду експлуатації куба Тому можете скористатися майстром проектування агрегацій (Aggregation Disign Wizard), який допоможе вам створити консолідації, засновані на аналітичних рішеннях Цей майстер послідовно проведе вас за наступними сторінкам

■ Specify Storage and Caching Options На цій сторінці визначається спосіб зберігання і відновлення окремих розділів Представлені параметри можуть бути встановлені на рівні всього куба (тобто для всіх його розділів), що забезпечить їх однаковість, а потім модифіковані для особливих випадків на цій сторінці Більш докладно про це мова піде в розділі Сховище даних.

■ Specify Object Columns Вкажіть для кожного розділу точну кількість рядків, і таблиця вимірювань буде сама керувати тим, як будуть обчислюватися агрегації Клацніть на кнопці Count, щоб виконати підрахунок поточної кількості рядків Якщо поточний джерело даних відрізняється від того, для якого створюється проект (тобто є невеликим тестовим набором даних), то можете ввести числа вручну

■ Set Aggregation Options На цій сторінці виконується фактичне проектування агрегацій Як правило, тут визначають мінімально необхідне число агрегацій, залишаючи на відкуп оптимізаторові служби аналізу проектування агрегацій на основі статистики використання Параметри в лівій частині сторінки вказують конструктору, коли слід зупинити створення нових агрегацій, а графік у правій частині відображає оцінку співвідношення обсягу сховища до виграшу в продуктивності

У проектуванні агрегації не існує строгих правил, однак варто прислухатися до наступних рекомендацій

• Якщо обсяг сховища не є головним обмеженням, встановіть початковий виграш в продуктивності на рівні 10-20% У більш складних кубах досить складно оцінити розсудливе кількість агрегацій (і відповідне час виконання) У простих кубах можна допустити безліч агрегацій, проте продуктивність буде все одно настільки висока, що зайві агрегації не принесуть відчутної вигоди

• Утримуйте загальна кількість агрегацій на рівні менше 200 (цей показник відображається в нижній частині вікна, безпосередньо над індикатором процесу)

• Знайдіть на графіку співвідношення обсягу сховища і продуктивності явний перелом і зупиніться на ньому

■ Completing the Wizard На цій сторінці ви можете вказати майстру тільки зберегти проект агрегацій або зберегти і розгорнути його

Кращі агрегації – ті, які створені на основі аналізу використання Накопичуйте історичні відомості в журналі запитів і періодично використовуйте його для оптимізації агрегацій кожного з розділів Протоколювання запитів можна включити в розділі Log / QueryLog вікна параметрів служби аналізу Встановіть для параметра CreateQueryLogTable значення true, в параметрі QueryLogConnectionString визначте рядок підключення до журналу, а в параметрі QueryLogTableName задайте імя журналу

Проекції

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

Проекції створюються шляхом клацання правою кнопкою миші або використання панелі інструментів У результаті створюється новий стовпець Замініть імя, запропоноване за замовчуванням у верхній частині стовпця, більш відповідним, а потім зніміть прапорці з тих елементів, які не потрібні для даної проекції Для проекції також можна вибрати міру за замовчуванням – для цього у другому рядку таблиці виберіть тип обєкта Default Me a sure

Джерело: Нільсен, Пол 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>

*

*