Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности

Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
23.06.2004, 15:14
|
|||
|---|---|---|---|
|
|||
Вопрос по DWH-проектированию |
|||
|
#18+
При проектировании таблиц для загрузки плана и факта из разных источников возник вопрос: Раньше я использовал в обеих таблицах в качестве значений поля для объединения с таблицей измерения родные ключи (в обоих источниках, как водится, нумерция статей разная), при этом упрощенная структура таблицы измерения статей следующая: id ArticlePlan_id ArticleFact_id ArticleType ArticleName При загрузке используются естественные ключи, в каждом из кубов План и Факт объединение с таблицей измерения статей происходит по своему полю, кубы потом сливаются в виртуальный. Такой способ хорош, когда между ArticlePlan_id и ArticleFact_id существует соответствие 1 - 1. Сейчас встала задача, в которой нескольким ArticlePlan_id может соответствовать одно и то же ArticleFact_id, что приведет к неправильному отображению этих статей. Поэтому сейчас я вижу такое решение: Взять за основу один из естественных ключей, а при загрузке во вторую таблицу заменять соотв. значения первым ключом; или же взять за основу суррогатный ключ, что по сути будет тоже самое, только потребуется при загрузке заменять поле Article_id в обоих таблицах По-моему, такой подход значительно усложняет преобразования при загрузке и последующее сопровождение. Не поделится ли кто опытом решения подобных задач, возможно есть более изящное решение? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
23.06.2004, 15:21
|
|||
|---|---|---|---|
Вопрос по DWH-проектированию |
|||
|
#18+
Использование суррогатных ключей при интеграции данных - единственный вменяемый механизм. Проверено. ------- <Jimmy> ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
23.06.2004, 15:48
|
|||
|---|---|---|---|
Вопрос по DWH-проектированию |
|||
|
#18+
Сопоставление ключей из нескольких источников в DWH типичная задача. Можно решить созданием в DWH одной таблицы с суррогатным ключем и остальными атрибутами справочника. Также нужна еще таблица в которой будет отражаться соответвие первичных ключей приложений из разных систем суррогатному ключу. Плюс механизмы загрузки данных, использующих эту таблицу соответствий, плюс интерфейс для этой системы "сопровождения справочников". Зато получится здорово. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
24.06.2004, 07:54
|
|||
|---|---|---|---|
|
|||
Вопрос по DWH-проектированию |
|||
|
#18+
To Вжик По поводу таблицы соответствий, как быть, если статье из одного источника нет чистого соответствия ни одной конкретной статьи из другого, а получается, допустим, так: Статье 1 в источнике A соответствует некое математическое выражение в источнике B, например, Статья 2/(Статья 2 + Статья 3). Как должна выглядеть подобная запись в таблице соответствий? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
24.06.2004, 09:21
|
|||
|---|---|---|---|
Вопрос по DWH-проектированию |
|||
|
#18+
Для правильной интеграции данных необходимо определить уровень детализации, общий для всех источников и грузить данные только на этом уровне , т.е., в твоем случае - статьи. Преобразования же (агрегацию и т.п.) делать уже в витрине, например создавая таблицы агрегированных значений, или на уровне отчета. ------- <Jimmy> ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=49&tablet=1&tid=1872489]: |
0ms |
get settings: |
8ms |
get forum list: |
18ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
267ms |
get topic data: |
11ms |
get forum data: |
4ms |
get page messages: |
43ms |
get tp. blocked users: |
2ms |
| others: | 276ms |
| total: | 635ms |

| 0 / 0 |
