Проєктування фактних і вимірювальних таблиць
Свайпніть щоб показати меню
Більшість робочих книг Excel зберігають усі дані на одному широкому аркуші: імена клієнтів, категорії продуктів, регіони та підсумки транзакцій розміщені в одному рядку, повторюючись тисячі разів. Це підходить для невеликих задач. Однак така структура стає неефективною, коли обсяг даних зростає, змінюються імена або виникає потреба об'єднати дані з іншими джерелами.
Реляційна модель вирішує цю проблему шляхом розділення даних на спеціалізовані таблиці, кожна з яких описує окремий об'єкт. Ключова ідея такого розділення — це відмінність між фактними таблицями та таблицями вимірів.
Робоча книга, використана у відео, відрізняється від робочої книги, що використовується у завданні. Якщо ви бажаєте крок за кроком повторювати дії інструктора під час уроку, завантажте робочу книгу для відео, яка розміщена під відео, перед початком роботи.
Фактні таблиці
Фактна таблиця фіксує події або транзакції — те, що відбулося.
Характеристики:
- Багато рядків: по одному на кожну подію (одне замовлення, один платіж, один візит);
- Показники: числові значення, які потрібно агрегувати — Quantity, Total, Cost, Hours;
- Зовнішні ключі: стовпці з ідентифікаторами, що посилаються на вимірювальні таблиці — CustomerID, ProductID, OrderDate;
- Мало описового тексту: імена, мітки та категорії належать до вимірювань.
Приклади фактних таблиць:
- Рядки замовлень на продаж;
- Платежі за рахунками;
- Відвідування вебсайту;
- Звернення до служби підтримки.
Вимірювальні таблиці
Вимірювальна таблиця описує сутності, що беруть участь у фактах, такі як хто, що, де і коли.
Характеристики:
- Один рядок на унікальну сутність: по одному на кожного клієнта, по одному на кожен продукт, по одному на кожну дату;
- Описові атрибути: імена, категорії, регіони, сегменти — переважно текст;
- Первинний ключ: унікальний стовпець ID, на який посилається фактна таблиця.
Приклади вимірювальних таблиць:
- Customers (CustomerID, CustomerName, Region, Segment);
- Products (ProductID, ProductName, Category, UnitPrice);
- Dates (Date, Year, Month, Quarter);
- Employees (EmployeeID, Name, Department, Role).
Три питання для прийняття рішення
Для будь-якого стовпця у плоскій таблиці послідовно ставте такі питання:
Q1: Чи вимірює цей стовпець щось, що потрібно підсумовувати або рахувати? — Quantity, Total, Cost → показник фактної таблиці;
Q2: Чи є цей стовпець ідентифікатором, який пов'язує з описом в іншому місці? — CustomerID, ProductID, OrderDate → зовнішній ключ фактної таблиці;
Q3: Чи є це описовою міткою про особу, продукт або період часу? — CustomerName, Region, Category → атрибут вимірювальної таблиці.
Якщо стовпець підпадає під Q3, поставте ще одне питання: який об'єкт він описує? Всі стовпці, що описують клієнтів, розміщуються у Customers. Всі стовпці, що описують продукти, розміщуються у Products. Стовпці, що описують дати, розміщуються у Dates.
1. У листі Orders_Flat яка з наступних груп стовпців найкраще підходить для вимірювальної таблиці Products?
2. Яке твердження найкраще описує зерно (grain) таблиці фактів Sales у цьому розділі?
Дякуємо за ваш відгук!
Запитати АІ
Запитати АІ
Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат