Родительско-дочерние отношения, где ребенок может принадлежать другому родителю: подход к дизайну - PullRequest
0 голосов
/ 27 августа 2018

У меня есть ситуация, в которой я получаю данные из нескольких источников, таких как SourceA, SourceB, SourceC ...... SourceN.Формат данных или содержание каждого источника могут быть разными.Теперь мне нужно обработать эти данные из нескольких источников и сгенерировать общий вывод для каждого примера источника "Col1, Col3, Col3, SourceIdentifier, sourceUniqueID".Теперь мне нужно добавить этот вывод в какую-то таблицу. Давайте назовем эту таблицу обработанной.Теперь мой вопрос: 1) как вы видите, мне нужно определить в таблице Processedoutput, какая строка принадлежит какому источнику и уникальный идентификатор для каждого источника (каждый источник имеет один столбец идентификации в качестве первичного ключа) через эти 2 столбца, которые я могу получитьуникальная строка, но я не хочу делать 2 ключа в качестве идентификатора, я просто хочу один ключ, с помощью которого я могу получить тот же ответ.также я не хотел бы использовать столбец GUID

2), если я храню эти данные в столбцовой базе данных, такой как красное смещение или хранилище данных AZUER.будет ли клавиша 2 в качестве идентификатора или уникального идентификатора записей иметь проблемы с производительностью

3), поскольку существуют некоторые инструменты BI, такие как power BI, которые не поддерживают множественный ключ в качестве условия соединения, как я могу показатьте же данные, скажем, в powerBI (обратите внимание - я могу создать вычисляемый столбец в powerBI и сделать соединение одним ключом, но я не хочу этого делать)

Спасибо, Атул

Ответы [ 2 ]

0 голосов
/ 01 сентября 2018

Как сказал Рон выше,

  1. Источники: 1..n: Источник A, B, C ... N
  2. Формат источника для каждого источника различен.
  3. Фиксированная схема назначения, т. Е. Схема таблицы для измерения
  4. Типичное построение измерения в DW
  5. Если измерение похоже на Клиент, Продукт, то я также называю его проблемой Основные данные.
  6. Вам может понадобиться таблица внешних ссылок, а затем таблица размеров.

Помимо решения Рона, проверьте статьи или Google аналогично:

https://www.tek -tips.com / viewthread.cfm? Qid = 1636261

Разработка измерения с несколькими источниками данных

0 голосов
/ 27 августа 2018

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

В вашей промежуточной таблице (вероятно, в таблице, которую вы называете commonoutput) есть бизнес-ключ, состоящий из двух частей, который включает SOURCE иID.

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

Ваша целевая таблица будет выглядеть примерно так:

  • surrogate_key (дайте ему более точное имя, которое отражает название компании в таблице)
  • source_id
  • source_unique_id
  • col1
  • col2
  • col3

Возможно, вы можете использовать столбец IDENTITY для создания новых значений surrogate_key.Идентификационные данные поддерживаются Redshift и хранилищем данных SQL Azure.

...