- •Розділ 1. Предмет, методи і завдання дисципліни "Інформатика"
- •Найменшою одиницею об'єму даних прийнято вважати байт - групу з 8 бітів. Байтом можна закодувати, наприклад, один символ текстової інформації. Наступними одиницями кодування є:
- •Питання для самодіагностики
- •Словник основних термінів і визначень (глосарій) за розділом 1
- •Основна
- •Розділ 2. Теоретичні основи економічної інформатики
- •Професійні компетенції, що формуються за розділом
- •2.1. Економічна інформація і її особливості
- •2.2. Технічна база сучасних інформаційних технологій
- •2.3. Програмне забезпечення пк
- •Питання для самодіагностики
- •Завдання для самостійної роботи
- •Словник основних термінів і визначень (глосарій) за розділом 2
- •Література за розділом 2
- •Розділ 3. Використання табличного процесора Excel для розв'язання економічних задач
- •3.1. Основи роботи у середовищі Excel Загальні відомості
- •Техніко-економічному плануванні;
- •Матеріально-технічному забезпеченні;
- •Excel забезпечує:
- •Завантаження Excel і завершення роботи з ним
- •Структура головного вікна Excel
- •Вкладками Конструктор, Макет і Формат
- •Подання Microsoft Office Backstage
- •Панель швидкого доступу
- •Рядок формул
- •Вікно робочої книги
- •І додавання аркуша Рядок стану
- •Робота з аркушами
- •Робота з клітинками, стовпчиками і рядками. Діапазони клітинок
- •Форматування клітинок і діапазонів клітинок
- •3.2. Створення табличних документів Технологія створення табличних документів
- •Розв’язання економічних задач засобами Excel
- •Постановка задачі
- •Розв’язання задачі
- •Форматування таблиці
- •Аналіз результатів
- •Умовне форматування таблиць
- •3.3. Створення діаграм Загальні відомості
- •Типи діаграм
- •Етапи створення діаграм
- •Створення базової діаграми
- •Удосконалення базової діаграми
- •Зміна макету елементів діаграми вручну
- •Переміщення базової діаграми на окремий аркуш
- •Приклади візуалізації економічних процесів
- •3.4. Вбудовані функції Загальні відомості
- •Використання функцій
- •Шкала оцінювання успішності знань студентів магістратури
- •И(логическое_значение1;[логическое_значение2];...)
- •Или(логическое_значение1; [логическое_значение2]; ...)
- •Впр(искомое_значение;таблица;номер_столбца;интервальный_просмотр)
- •3.5. Робота зі списками даних Загальні відомості
- •Створення бази даних
- •Перевірка даних при введенні Загальні відомості
- •(Вкладка Параметры)
- •База даних "Продаж хлібобулочних виробів"
- •Впорядкування даних
- •Швидке сортування
- •Багаторівневе сортування
- •Обчислення проміжних і загальних підсумків
- •Відбір інформації у базі даних за допомогою фільтрів Загальні положення
- •Відбір інформації за допомогою автофільтра
- •Даних (Фильтры по дате)
- •Відбір інформації за допомогою розширеного фільтра
- •Про продаж батонів і хліба
- •Використання форми даних
- •3.6. Засоби аналізу даних Звіти зведених таблиць Загальні відомості
- •Побудова звіту зведеної таблиці
- •І вікно Список полей сводной таблицы
- •І вікно Список полей сводной таблицы Засоби аналізу звіту зведеної таблиці
- •З застосовуванням гістограм
- •Звіти зведених діаграм Загальні відомості
- •Побудова звіту зведеної діаграми
- •Прогнозування даних Загальні відомості
- •Побудова лінії тренда
- •Кожного виду товарів
- •Всього товару
- •Побудова спарклайнів
- •Засоби аналізу "що якщо" Загальні відомості
- •Сценарії
- •Дані для побудови сценаріїв
- •Дані для заповнення вікна Добавление сценария
- •Підбір параметрів
- •(Після виконання засобу Подбор параметра)
- •Пошук розв'язку
- •Дані для розрахунку прибутку банку
- •Список обмежень
- •Що введені
- •Практичні завдання
- •3.1. Основи роботи у середовищі Excel
- •3.2. Створення табличних документів
- •3.3. Створення діаграм
- •3.4. Вбудовані функції
- •3.5 Робота зі списками даних
- •3.6. Засоби аналізу даних
- •Списки елементів зведеної таблиці
- •Питання для самодіагностики
- •3.1. Основи роботи у середовищі Excel
- •3.2. Створення табличних документів
- •3.3. Створення діаграм
- •3.4. Вбудовані функції
- •3.5 Робота зі списками даних
- •3.6. Засоби аналізу даних
- •4.1. Алгоритм і його властивості
- •4.2. Схеми алгоритмів
- •Основні символи схем алгоритмів
- •4.3. Графічне подання обчислювальних процесів
- •Графічне подання лінійних обчислювальних процесів
- •Графічне подання розгалужених обчислювальних процесів
- •Графічне подання циклічних обчислювальних процесів
- •Графічне подання вкладених циклічних обчислювальних процесів
- •Практичні завдання
- •Питання для самодіагностики
- •Розділ 5. Основи офісного програмування
- •5.1. Технологія розробки інтерфейсної частини проекту в Visual Basic for Applications (vba) Теоретичні відомості Вивчення інтегрованого середовища програмування
- •Загальноприйняті префікси для елементів управління vba
- •Приклад розробки інтерфейсної частини проекту в vba.
- •Питання для самодіагностики
- •5.2. Проектування додатків із застосуванням різних типів даних для вирішення економічних задач Теоретичні відомості
- •Неявне оголошення змінних
- •Основні типи даних
- •Основні функції для роботи з датами
- •Припустимі значення аргументу "інтервал"
- •Функції перетворення типів
- •Економіко-математична модель
- •Алгоритм вирішення задачі.
- •Структура даних проекту
- •Інтерфейс проекту
- •Основні властивості елементів управління на формі
- •Код проекту
- •Реалізація проекту
- •Аналіз проекту
- •Виконання програми й аналіз отриманих результатів
- •Варіанти індивідуальних завдань
- •Питання для самодіагностики
- •5.3. Дослідження способів вирішення економічних задач з розгалуженнями Теоретичні відомості
- •Приклад вирішення економічної задачі з розгалуженням
- •Економіко-математична модель
- •Алгоритм вирішення задачі
- •Структура даних
- •Структура даних проекту
- •Інтерфейс проекту
- •Код проекту
- •У результаті виконання процедури на формі (у текстовому полі TxtОплата) відобразиться сума до сплати за товар, що придбається з урахуванням знижок на обсяг покупки, тип покупця і день тижня.
- •У результаті виконання процедури на формі (у текстовому полі TxtРешта) відобразиться здача й користувачеві буде видане повідомлення про результати покупки або необхідності доплати за покупку.
- •Реалізація проекту
- •Аналіз проекту
- •Виконання програми й аналіз отриманих результатів
- •Грошей для сплати
- •Варіанти індивідуальних завдань
- •Питання для самодіагностики
- •5.4. Проектування додатка на базі умовного циклу Теоретичні відомості
- •Основні типи циклів
- •Проектування додатка на базі циклу з лічильником
- •Проектування додатка на базі умовного циклу
- •Цикл із постумовою (з нижнім закінченням). Спочатку виконуються оператори, що становлять тіло циклу, після чого перевіряється деяка умова. Такий цикл називається циклом з постумовою.
- •Значення, що повертаються функцією MsgBox
- •Приклад вирішення економічної задачі на базі умовного циклу
- •Структура даних проекту
- •Код проекту.
- •У результаті виконання процедури на формі (у текстовому полі TxtОплата) відобразиться сума до сплати за товар, який куплено.
- •З таким покупцем
- •Реалізація проекту.
- •Аналіз проекту.
- •Виконання програми й аналіз отриманих результатів.
- •Варіанти індивідуальних завдань
- •Питання для самодіагностики
- •5.5. Технологія розробки та використання користувацьких процедур і функцій Теоретичні відомості
- •ВартістьП
- •Приклад рішення економічної задачі із застосуванням користувацьких процедур і функцій
- •Технологія проектування і застосування користувальницьких функцій в середовищі Visual Basic for Applications
- •Function Знижки1(X As Currency, y As String) As Currency.
- •Function ЗнижкиРазгал(X As Currency,y As String,z As Boolean) _ As Currency
- •Варіанти індивідуальних завдань
- •Питання для самодіагностики
- •Оголошення статичних масивів
- •Оголошення динамічних масивів
- •Приклад вирішення економічної задачі із застосуванням масивів даних і масивів елементів управління
- •До середньої ціни
- •Структура даних проекту
- •На друк
- •В текстовий файл
- •Варіанти індивідуальних задач
- •Питання для самодіагностики
- •Література за розділом 5
- •Розділ 6. Мережні технології
- •Професійні компетентності, що формуються за розділом:
- •Теоретичні принципи побудови мережної взаємодії
- •Класифікація комп’ютерних мереж
- •Топологія мережі
- •Адресація в мережі
- •Створення моделі локальної мережі
- •Обмін даними з іншою мережею
- •Обмін даними між маршрутизаторами
- •Завдання
- •Варіанти індивідуальних завдань
- •Питання для самодіагностики
- •Словник основних термінів і визначень (глосарій) за розділом 6
- •Література за розділом 6
- •Розділ 7. Застосування Інтернету в економіці
- •7.1. Основні сфери застосування Інтернет
- •7.2. Пошук інформації в Інтернет
- •7.3. Електронна пошта як Інтернет сервіс
- •7.4. Використання технології "хмарних" обчислень в економіці
- •7.4.1. Основні напрямки використання "Хмарних" технологій
- •7.4.2. Переваги "хмарних" обчислень
- •7.4.3. Недоліки "хмарних" обчислень
- •Практичні завдання
- •Питання для самодіагностики
- •Словник основних термінів і визначень (глосарій) за темою 7
- •Література за темою 7
- •Розділ 8. Організація комп’ютерної безпеки та захисту інформації
- •Професійні компетенції, що формуються за розділом:
- •8.1. Комп’ютерна безпека та захист інформації Актуальність захисту інформації
- •Комп’ютерні віруси, їх класифікація
- •8.2. Приклад сканування пк за допомогою антивірусної системи nod32 Antivirus
- •Варіанти індивідуальних завдань
- •Питання для самодіагностики
- •Словник основних термінів і визначень (глосарій) за розділом 8
- •Література за розділом 8
- •Розділ 9. Основи Web-дизайну
- •9.1. Створення та редагування Web-сторінок засобами мови html Теоретичні відомості
- •Суть і складові частини Web-технології
- •Основи мови розмітки гіпертексту – html
- •Значення кольорів html-документа
- •Структурування тексту
- •Застосування гіперпосилань
- •Лінії, зображення, впроваджені об’єкти
- •Створення форми
- •Застосування таблиць
- •Приклад вирішення
- •Індивідуальне завдання
- •Короткий огляд засобів програмування мови JavaScript
- •Операції присвоєння
- •Структури операторів
- •Використання функцій в скриптах
- •Особливості введення/виведення масивів
- •Використання в сценаріях об’єктної моделі документа
- •Приклади програм JavaScript-сценаріїв
- •Варіанти індивідуальних завдань
- •Питання для самодіагностики
- •9.3. Програмування серверних сценаріїв засобами мови рнр Характеристика мови рнр
- •Огляд засобів програмування мови рнр
- •Операції в рнр
- •Використання масивів даних в Web-додатках
- •Створення одновимірних масивів
- •Інструментальні засоби програмування рнр-сценаріїв
- •Приклади динамізації Web-сторінок з використанням
- •Проектування додатків з використанням інтерактивного інтерфейсу
- •Варіанти індивідуальних завдань
- •Питання для самодіагностики
- •Словник основних термінів і визначень (глосарій) за розділом 9
- •Література за розділом 9
- •Розділ 10. Програмні засоби роботи з базами даних
- •Професійні компетентності, що формуються за розділом
- •10. 1. Архітектура системи керування базами даних, функціональні можливості, принципи моделювання даних Поняття про базу даних. Концепція бази даних
- •Склад та основні функції скбд
- •Види систем керування базами даних
- •Види моделей даних та їх призначення
- •Ієрархічна модель даних
- •Мережна модель даних
- •Реляційна модель даних
- •Предметна область
- •Архітектура бази даних. Поняття схеми бази даних, стандарт sparс. Етапи проектування баз даних
- •Питання для самодіагностики
- •10. 2. Основні поняття реляційної моделі даних
- •Атрибути та схема відношення
- •Об'єктні та звязувальні відношення
- •Тип даних
- •Типи атрибутів відношення «викладач»
- •Первинні ключі
- •Логічні зв'язки між таблицями. Вторинні ключі
- •Цілісна частина реляційної моделі
- •Маніпуляційна частина реляційної моделі
- •Питання для самодіагностики
- •10. 3. Проектування реляційних баз даних Проблеми проектування реляційних баз даних
- •Аномалії ненормалізованого відношення
- •Аномалія оновлення
- •Аномалія поповнення
- •Аномалія видалення
- •Аномалія надлишковості
- •Основні поняття теорія нормалізації
- •Нормальні форми відношень
- •Перша нормальна форма (1нф)
- •Друга нормальна форма (2нф)
- •Третя нормальна форма (3нф)
- •Нормальна форма Бойса – Кодда (нфбк)
- •Інфологічне моделювання даних за принципами методології «сутність-зв’язок»
- •Основні поняття er-технології
- •Побудова er-діаграм за нотацією Чена
- •Відображення er-діаграм на відношення
- •Правила для бінарних зв’язків 1 : 1
- •Правила для бінарних зв’язків 1 : м
- •Етапи проектування та створення бази даних
- •Проектування інфологічної моделі бази даних
- •Проектування логічної схеми бази даних
- •Проектування фізичної моделі бази даних
- •Приклад проектування бази даних
- •Призначення додатку. Постановка задачі
- •Основні задачі, які будуть вирішуватися в додатку
- •Основні вимоги до бази даних
- •Проектування інфологічної моделі бази даних
- •Проектування логічної схеми бази даних
- •Питання для самодіагностики
- •10. 4. Створення бази даних у скбд Microsoft Access Загальні відомості про ms Access
- •Дії над об'єктами
- •Правила та прийоми роботи користувача в ms Access
- •Вікна об'єктів і конструктора
- •Створення бази даних.
- •Створення бази даних користувачем самостійно
- •Створення бази даних у автоматизований спосіб
- •Питання для самодіагностики
- •Підтипи полів для типу Числовой
- •Загальні властивості полів таблиць
- •Способи створення таблиць
- •Вибір способу створення таблиць
- •Створення таблиці в режимі конструктора
- •Створення таблиці в режимі таблиці
- •Створення таблиці в режимі sql
- •Індексація полів таблиці
- •Прості і складені індекси полів
- •Особливості індексації ключових полів
- •Модифікація таблиць Загальні рекомендації
- •Додавання, видалення і зміна порядку полів
- •Зміна типів і розмірів полів
- •Створення зв'язків між таблицями бази даних Основні поняття
- •Створення схеми даних
- •Введення і редагування даних до таблиці
- •Введення даних з клавіатури безпосередньо у вікні таблиці
- •Формування списків з фіксованими наборами даних
- •Введення даних із з інших таблиць бд
- •Введення даних про об'єкти поза бд
- •Перевірка даних при введенні в таблицю
- •Питання для самодіагностики
- •Створення і редагування запитів Призначення і види запитів
- •Створення запитів Створення запитів в режимі конструктора
- •Редагування та виконання запитів Редагування запитів
- •Виконання запитів
- •Розширені можливості запитів Запити, що засновані на даних декількох таблиць
- •Параметричні запити
- •Обчислення в запитах Створення обчислюваних полів у запитах
- •Аналіз даних за допомогою запитів Запити з угрупуванням даних
- •Статистичні функції в рядку «Групповые операции»
- •Перехресні запити
- •Створення перехресного запиту за допомогою майстра
- •Побудова запитів на підставі запитів
- •Види з'єднань між таблицями в запитах
- •Модифікуючі запити
- •Запити створення таблиць
- •Запити на додавання записів в таблицю
- •Запити на видалення записів з таблиці
- •Запити на оновлення записів таблиці
- •Створення запитів в режимі sql Access 2010
- •Визначення даних за допомогою мови ddl
- •Створення таблиць за допомогою мови ddl
- •Типи даних мови sql ms Access 2010
- •Створення запитів за допомогою мови dml Оператор select
- •Вибірка даних із декількох таблиць
- •Питання для самодіагностики
- •Створення і редагування форм
- •Створення форм за допомогою майстра
- •Створення форм на базі зв'язаних таблиць
- •Створення додаткових елементів форми
- •Управління безпомилковим уведенням даних
- •Створення полів зі списком
- •Обчислювані елементи управління
- •Питання для самодіагностики
- •Створення і редагування звітів
- •Створення звітів
- •Створення звітів за допомогою майстра
- •Конструктор звітів і його застосування
- •Нумерація записів звіту
- •Створення обчислюваних полів у звітах
- •Вставка графічних об'єктів
- •Перегляд і друк звітів
- •Питання для самодіагностики
- •10. 5. Публікація баз даних в компютерних мережах
- •Створення доступу до даних за допомогою додатку phpMaker
- •Створення доступу до даних SharePoint за допомогою форм ms Access
- •Додаткова
- •Ресурси мережі Internet
- •Практичні завдання до теми 10. 4 «Створення бази даних у скбд Microsoft Access»
- •Загальні вимоги до розроблюваної бд
- •Варіанти завдань
- •Глосарій
- •Розділ 11. Робота зі сховищами даних
- •Професійні компетенції, що формуються за розділом:
- •11.1. Проектування сховищ даних Відмінність сховищ даних від баз даних
- •Основні характеристики сховища даних
- •Типова архітектура сховищ даних
- •Вимоги до проектування сховищ даних
- •11.2. Багатовимірний аналіз даних Принципи побудови olap-системи
- •"Зріз" куба за вимірами: час та країна
- •"Зріз" куба за вимірами: категорія товару та рік по Україні
- •Інструменти аналізу даних
- •Продуктивність olap-систем
- •11.3. Xml як засіб організації сховища даних
- •Питання для самодіагностики
- •Практичне завдання
- •Варіанти завдань
- •Словник основних термінів і визначень (глосарій) за розділом 11
- •Література за розділом 11
- •2. Туманов в.Е., Маклаков с.В. Проектирование реляционных хранилищ данных. – м.: Диалог-мифи, 2007. – 333 с.
- •5. Старыгин а. Xml. Разработка Web-приложений. – сПб.: bhv, 2003 – 592 c. Розділ 12. Програмні засоби роботи зі структурованими документами
- •Теоретичні відомості
- •Підготовка структурованих документів ms Word 2010 Створення документа зі змістом в ms Word 2010 з використанням вбудованих стилів і заголовків
- •Підготовка структурованих документів ms Excel 2010
- •"Відомість видачі матеріалів" в ms Excel 2010 Створення складеного документа за технологією ole
- •Розробка документів складної структури з використанням
- •Засобів гіпертекстової розмітки документів
- •Питання для самодіагностики
- •Завдання
- •Словник основних термінів і визначень (глосарій) за розділом 12
- •Література за розділом 12
- •Основна
- •Додаткова
- •Ресурси мережі Internet
- •Розділ 13. Експертні навчальні системи
- •Література за розділом 13
- •Розділ 14. Перспективи розвитку інформаційних технологій
- •Питання для самодіагностики
- •Література до розділу 14
- •Основна
- •Додаткова
- •Ресурси мережі Internet
Вимоги до проектування сховищ даних
До проектування сховищ даних висуваються такі вимоги :
структура даних повинна бути зрозуміла користувачам;
повинні бути виділені статичні дані, які модифікуються за розкладом: щодня, щотижня, щоквартально;
повинні бути спрощені вимоги до запитів з метою виключення запитів, які могли б вимагати множинних тверджень SQL у традиційних реляційних СУБД;
повинна бути забезпечена підтримка складних запитів SQL, які потребують послідовної обробки тисяч або мільйонів записів. Ці вимоги істотно відрізняють структуру реляційних СУБД і сховищ даних.
Інформація, що завантажується в сховище, повинна інтегруватися в цілісну структуру, що відповідає цілям аналізу даних. При цьому мінімізуються невідповідності між даними з різних оперативних систем. Дані інтегровані на безлічі рівнів: на рівні ключа, атрибуту, на описовому, структурному рівні. Загальні дані і загальна обробка даних консолідовані і є однаковим для всіх даних, які подібні або схожі в сховищі даних. Інформація структурується за різними рівнями деталізації:
висока ступінь суммарізаціі;
низький ступінь суммарізаціі;
потокова детальна інформація.
Сховища можна розглядати як набір моментальних знімків стану даних: можна відновити картинку в будь-який момент часу. Атрибут часу завжди явно присутній в структурах даних сховища.
Дані в сховищі не змінюються, а лише накопичуються, потрапляючи з оперативних систем, де дані постійно змінюються. Нові дані по мірі надходження узагальнюються із вже накопиченої інформацією в сховище даних.
Нормалізація даних у реляційних СУБД призводить до створення безлічі пов'язаних між собою таблиць. У результаті виконання складних запитів неминуче призводить до об'єднання багатьох таблиць, що істотно збільшує час відгуку. Проектування сховища даних передбачає створення денормалізованої структури даних (допускається надмірність даних і можливість виникнення аномалій при маніпулюванні даними), орієнтованої в першу чергу на високу продуктивність при виконанні аналітичних запитів. Нормалізація робить модель сховища занадто складною, ускладнює її розуміння і погіршує ефективність виконання запиту.
Сучасні підходи до моделювання сховищ даних поділяються на два основних класи:
традиційне ER-моделювання (Білла Інмона);
багатовимірне моделювання (Ральфа Кімбала).
Використання першого підходу дозволяє найбільш повно описати предметні області бізнесу організації і організувати зберігання історичної інформації. Другий підхід дозволяє досить швидко побудувати модель для аналізу різних показників, проте має низку недоліків (наприклад, постійні компроміси при виборі способу зберігання історичних даних).
Для ефективного ER-проектування сховищ даних використовується розмірна модель (Dimensional).
Dimensional – методологія проектування, спеціально призначена для розробки сховищ даних. Моделювання Dimensional схоже з моделюванням зв'язків і сутностей для реляційної моделі, але відрізняється цілями. Реляційна модель акцентується на цілісності та ефективності введення даних. Розмірна модель (Dimensional) орієнтована в першу чергу на виконання складних запитів до СД.
Сховища з вимірами використовують схему "зірка" чи схему "сніжинка".
Схема "зірка"
Схема "зірка" – спеціальна організація реляційних таблиць, зручна для зберігання багатовимірних показників. Ця схема забезпечує високу швидкість виконання запиту за допомогою денормалізації і розділення даних. Неможливо створити універсальну денормалізовану структуру даних, що забезпечує високу продуктивність при виконанні будь-якого аналітичного запиту. Тому схема "зірка" будується так, щоб забезпечити найвищу продуктивність при виконанні одного найважливішого запиту або групи схожих запитів.
Схема "зірка" зазвичай містить одну велику таблицю – таблицю факту (fact table), що поміщена в центр, і оточуючі її менші таблиці – таблиці розмірності (dimensional table) – з'єднані з таблицею факту у вигляді зірки радіальними зв'язками. У цих зв'язках таблиці розмірності є батьківськими, таблиця факту – дочірньою.
Перш ніж створити БД зі схемою типу зірки, необхідно проаналізувати бізнес-правила предметної області з метою з'ясування, які дані необхідно накопичувати і аналізувати постійно. Ці дані повинні бути поміщені в таблицю факту.
Наприклад, якщо необхідно створювати звіти про загальну суму доходу від продажів за певний період, як за типом товару, так і за точками реалізації, слід розробляти модель так, щоб кожен запис у таблиці факту становив суму продажів, здійснених тію чи іншою торговою точкою. У прикладі, що наведено на рис. 11.2, таблицею фактів є таблиця SALE.
Таблиця факту є центральною таблицею в схемі "зірка". Вона може складатися з мільйонів рядків і містити підсумкові або фактичні дані, які будуть покладені в основу запитів. Вона з'єднує дані, які зберігалися б у багатьох таблицях традиційних реляційних БД. Таблиця факту і таблиці розмірності пов'язані ідентифікованими зв'язками, при цьому первинні ключі таблиці розмірності мігрують у таблицю факту в якості зовнішніх ключів. У розмірній моделі напрямки зв'язків явно не вказуються – вони визначаються типом таблиць.
Таблиці розмірності мають меншу кількість рядків, ніж таблиці факту, і містять описову інформацію. Ці таблиці дозволяють користувачеві швидко переходити від таблиці факту до додаткової інформації.
У прикладі таблиця факту містить сумарні дані про продаж товарів ("SALE"), а таблиці розмірності містять дані про замовника і замовленнях ("CUSTOMER"), продуктах ("PRODUCT"), продавцях ("SALESPEOPLE") та періоди часу ("TIME" ).
Рис. 11.2. Схема "зірка"
Таблиця фактів звичайно містить одну або декілька колонок типу DECIMAL, що дають числову характеристику якогось аспекту предметної області (наприклад, обсяг продажів для торговельної компанії або сума платежів для банку), і кілька цілочисельних колонок-ключів для доступу до таблиць вимірів.
Первинний ключ таблиці факту цілком складається з первинних ключів всіх таблиць розмірності. У прикладі (таблиця факту "SALE") первинний ключ складається з чотирьох зовнішніх ключів: CustomerID, SalespeopleID, TimeID і ProductID.
Таблиці розмірності мають меншу кількість рядків, ніж таблиці факту і містять описову інформацію. Ці таблиці дозволяють користувачеві швидко переходити від таблиці факту до додаткової інформації.
SQL-запит до схеми "зірка" зазвичай містить в собі:
одне або декілька з'єднань таблиці фактів з таблицями розмірності;
кілька фільтрів (SQL-оператор WHERE), що застосовуються до таблиці фактів або таблиць розмірності;
угруповання і агрегування за необхідними елементами ієрархії вимірів (dimension elements).
Схема "сніжинка"
Схема сніжинки дістала таку назву через свою форму, у вигляді якої відображається логічна схема таблиць у багатовимірній БД. Так само як і в схемі зірки, схема сніжинки представлена централізованою таблицею фактів, сполученою з таблицями вимірів. Відмінністю є те, що тут таблиці вимірів нормалізовані з рядом інших пов'язаних вимірювальних таблиць (консольних таблиць), – тоді як в схемі зірки таблиці вимірів повністю денормалізовані. Чим більше міра нормалізації таблиць вимірів, тим складніше виглядає структура схеми сніжинки. Створюваний "ефект сніжинки" стосується лише таблиць вимірів, і не застосовується до таблиць фактів.
Консольні таблиці можуть бути пов'язані тільки таблицями розмірності. Консольна таблиця є батьківською, а таблиця розмірності – дочірньою. Зв'язок може бути ідентифікований або неідентифікований. Консольна таблиця не може бути пов'язана з таблицею факту. Вона використовується для нормалізації даних у таблицях розмірності.
На рис. 11.3. наведено приклад схеми "сніжинка". Крім таблиці факту SALE, та таблиць розмірності (CUSTOMER, PRODUCT, SALESPEOPLE, TIME), схема містить консольні таблиці: PRODUCT_TYPE – типи продуктів, PERIOD – період часу, REGION – регіон.
Рис. 11.3. Схема "сніжинка"
Схема сніжинки, також як і схема зірки, найчастіше зустрічається в таких СД, для яких швидкість отримання даних важливіша, ніж ефективність їх маніпуляції. Отже, таблиці мають бути нормалізовані в малій мірі, і часто розробляються із застосуванням третього рівня нормалізації.
Рішення на користь використання схеми "зірка" або схеми "сніжинка", обумовлюється відносною потужністю платформи БД, і інструментарієм для реалізації запитів. Схема зірки підходить задачам, де інструментарій реалізації запитів надає користувачам широкий доступ до структури таблиць, а також в задачах, де більшість запитів прості за своєю природою. Схема сніжинки більше підходить для випадків застосування складнішого інструментарію для реалізації запитів, які більшою мірою ізолюють користувачів від детальної структури таблиць, а також для середовища з множиною запитів складної структури.
