Таблица фактов / тусклая таблица временного значения

Я настраиваю таблицы Fact и Dim и пытаюсь найти лучший способ установить значения времени. AdventureworksDW использует тайм-ключ (UID) для каждой записи времени в таблице DimTime. Мне интересно, есть ли причина, по которой я не должен просто использовать значение времени, например, 0106090800 (моя детализация почасовая)?

ReactJs | Supabase | Добавление данных в базу данных
ReactJs | Supabase | Добавление данных в базу данных
Это и есть ваш редактор таблиц в supabase.👇
Понимание Python и переход к SQL
Понимание Python и переход к SQL
Перед нами лабораторная работа по BloodOath:
1
0
710
3
Перейти к ответу Данный вопрос помечен как решенный

Ответы 3

Ответ принят как подходящий

«Интеллектуальные ключи» (в данном случае кодированная дата и номер часа) могут привести к проблемам, когда вы захотите изменить определения в своем измерении. Например, ваши пользователи могут настаивать на переходе с местного времени на всемирное координированное время. Теперь ваш ключ больше не является полезным числом, это старое значение в измерении.

Кроме того, из-за проблемы с переносом в полночь, часть даты вашего интеллектуального ключа может не совпадать с фактической датой изменения времени UTC по сравнению с местным временем.

Чтобы ключ не стал проблемой, вы не можете использовать его для каких-либо вычислений. В этом случае это немного лучше, чем простой GUID или номер с автоинкрементом.

Ключи автоматического увеличения (или GUIDS) работают быстро и просто. Самое главное, они тривиально согласованы по всем измерениям.

Время имеет числовое отображение, но это помогает понять, что это странное совпадение, а не основа для хорошего дизайна.

Вот последний Ральфа Кимбалла о временном измерении. Он датирован 2004 годом, но все еще хорош.

Этот тоже поможет.

Первичный ключ должен быть суррогатным, бессмысленным, однако использование ГГГГММДД для ключа измерения даты трудно устоять, а также позволяет легко разбивать таблицу на разделы. Уловка в том, что это все равно следует рассматривать как бессмысленное - тот факт, что это похоже на дату, следует рассматривать как чисто случайное совпадение. Этот ключ никогда не должен быть открыт для бизнес-пользователей.

Другие вопросы по теме