Степень детализации данных
Автор: Билл Инмон
Дата публикации оригинала - 2006-12-14
Источник: сайт B-Eye-Network
Должны ли данные храниться на нижнем уровне детализации?
При проектировании хранилища данных одним из основополагающих принципов является хранение данных на наиболее детальном уровне. При хранении на наиболее детальном уровне данные можно изменять для удовлетворения различных потребностей – финансового отдела, отдела маркетинга, отдела продаж и так далее. Детальные данные можно объединять, собирать, разделять на различные подгруппы и так далее. Действительно, существует много причин хранить данные на наиболее детальном уровне.
Почему данные должны разделяться на более детальные? Дело в том, что большинство данных в хранилище поступает в результате различных транзакций. И, обычно, в транзакциях содержатся очень денормализованные данные. Денормализованные данные являются не сильно детальными.
Теперь давайте посмотрим на обычную транзакцию. В обычной транзакции содержатся такие данные как:
- дата совершения транзакции,
- товар, который покупается,
- условия покупки,
- лицо, осуществляющее покупку,
- место, где происходит транзакция,
- стоимость и
- продавец.
Все эти данные используются для проведения обычной, нормальной транзакции. Естественно, что данные в транзакции фокусируются на самой транзакции. В то же время, данные в транзакции очень денормализованы.
Для того чтобы эффективно храниться в хранилище, данные, исходящие от транзакции, разделяются. При разделении данных достигается более высокая детализация.
После того как транзакционные данные разделены, они начинают относиться к отдельным предметным областям. Обычными предметными областями могут быть информация о клиенте, информация о товаре (SKU), финансовая информация, информация о месте продажи и прочая информация.
Это происходит, потому что транзакции сильно денормализованы, и детальное разделение данных является нормой для создания хранилища. Но наблюдается ли здесь разделение данных до самого низкого уровня детализации? Ответом станет - да.
Давайте рассмотрим данные о посещаемости. Данные о посещаемости – это данные, которые генерируются и отслеживаются, когда вы заходите на web-страничку и взаимодействуете с ней. Данные о посещаемости отслеживают каждое движение, каждую новую страницу, на которую вы заходите, то, когда вы двигаете курсор, и так далее. В данных о посещаемости наблюдается бесконечно высокий уровень детализации. Данне о посещаемости сильно детализированы.
Однако же, правда состоит в том, что данные о посещаемости для того, чтобы быть полезными, не должны быть сильно детализированными. Установлено, что 90% или больше данных о посещаемости не имеют ценности. Нет никакой ценности для бизнеса в том, что вы подвинули курсор, потому что пролили кофе. В результате, существует такая вещь, как слишком детализированные данные.
Данные в хранилище не должны храниться на самом детализированном уровне, они должны храниться на самом полезном уровне. Уровень детализации должен доводиться до той точки, когда он является полезным для наибольшего количества людей, и не более.
Для удобства отслеживания новых публикаций рекомендуем подписаться на рассылку или на канал RSS.