2016-05-05 3 views
0

Это может быть странный вопрос, но можем ли мы сделать таблицу измерений из любого атрибута, если она имеет несколько значений? например, «этническая принадлежность», если этническая принадлежность всегда является атрибутом клиента (например), или может ли она когда-либо в любом случае или сценарии быть ее собственной таблицей измерений.может ли любой атрибут с несколькими значениями быть размером?

Заранее спасибо за любую помощь

ответ

3

Если атрибут, имеющий несколько значений, это не очень хорошая идея, чтобы иметь все значения в одном столбце. Вам будет сложно на более поздних этапах, если вы получите требование поиска чего-то, основанного на этом значении. Хорошим подходом было бы создание другой таблицы субразмера с основным ключом суррогатного измерения в качестве внешнего ключа и размещение нескольких значений по ряду. Таким образом, у вас будет набор результатов, который будет иметь 1 запись в Главном измерении и много записей для этой основной записи в таблице под размерности. Я думаю, что это был бы лучший подход для обработки сценариев с несколькими значениями.

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

Надеюсь, у вас есть идея.

+0

Спасибо! хорошо объяснил :) – Eternity