Рефакторинг плоских даних у реляційні таблиці
Свайпніть щоб показати меню
Широкий плоский аркуш — це одна таблиця, яка містить усю інформацію про кожну подію: дані клієнта, дані про продукт, дати та значення транзакцій знаходяться в одному місці. Такий формат легко читати, але він не підходить для реляційної моделі даних.
Проблема з повторенням: кожне замовлення для Acme Corp дублює ім’я клієнта, регіон і сегмент. Якщо ці дані зміняться, кожен рядок доведеться оновлювати окремо — це призводить до неузгодженості та зайвого використання пам’яті.
Робоча книга, використана у відео, відрізняється від тієї, що використовується у завданні. Якщо ви хочете крок за кроком повторювати дії інструктора під час уроку, завантажте робочу книгу для відео, яка розміщена під відео, перед початком.
Крок 1 — Визначення та виокремлення вимірних таблиць
Вимірні таблиці описують хто, що і коли для кожної події. Починайте з них, оскільки їхні межі зазвичай найчіткіші. Кожен рядок має бути унікальним — видаліть дублікати після вставки.
- Customers table: CustomerID (PK), CustomerName, Region, Segment;
- Products table: ProductID (PK), ProductName, Category;
- Dates table: Date (PK), Year, Month (number), Month name, Quarter.
Чому таблиця дат повинна охоплювати весь рік?
Обчислення на основі часу (з початку року, ковзні середні, порівняння періодів) потребують безперервного календаря без пропусків. Якщо таблиця містить лише дати замовлень, місяці без продажів повністю відсутні, і обчислення не працюють.
Крок 2 — Побудова фактної таблиці
Фактна таблиця фіксує, що відбулося — один рядок на кожну подію. Вона зберігає вимірювані значення та зовнішні ключі, які пов'язують кожну подію з її вимірними таблицями. Описовий текст навмисно відсутній.
- Sales (fact table): OrderID (PK), OrderDate → Dates (FK), CustomerID → Customers (FK), ProductID → Products (FK), UnitPrice, Quantity, Total.
- PK — Первинний ключ (унікальний ідентифікатор для кожного запису в таблиці);
- FK — Зовнішній ключ (поле, що посилається на первинний ключ в іншій таблиці).
Зіркова схема
Чотири таблиці утворюють зіркову схему: фактова таблиця знаходиться в центрі, а таблиці вимірів розташовані навколо неї, кожна з'єднана парою первинний ключ / зовнішній ключ.
Завдання
- Виділити кольором стовпці у широкій плоскій таблиці за призначенням: клієнти (синій), продукти (помаранчевий), дати (зелений), фактичні значення (жовтий);
- Скопіювати кожну кольорову групу на новий аркуш. Перетворити діапазон на іменовану таблицю Excel (Вставлення → Таблиця);
- Вибрати стовпець з первинним ключем і скористатися Дані → Видалити дублікати, щоб кожен рядок був унікальним.
- Для таблиці дат розширити стовпець дат так, щоб охопити кожен день з 1 січня по 31 грудня, потім додати стовпці Рік, Місяць, Назва місяця та Квартал за допомогою
=YEAR(),=MONTH(),=TEXT(B2, "MMMM")і формули кварталу="Q"&INT((MONTH(B2)-1)/3+1). - Вставити аркуш з датами як тільки значення (без формул) у чистий аркуш перед перетворенням на таблицю.
- Побудувати факт-таблицю з решти стовпців плюс три зовнішні ключі (
OrderDate,CustomerID,ProductID).
1. Які основні переваги рефакторингу плоскої таблиці у факт-таблицю та виміри? (Оберіть дві)
2. Який крок є обов'язковим при створенні виміру Customers з плоскої таблиці?
Дякуємо за ваш відгук!
Запитати АІ
Запитати АІ
Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат