Моделирование полиморфных отношений Salesforce в методологии Data Vault 2.0

Иногда объект Salesforce имеет полиморфные отношения с другими объектами Salesforce. В полиморфном отношении объект связи, на который указывает ссылка, может быть одним из нескольких различных типов объекта. Эти полиморфные отношения определяются с использованием полиморфных полей, содержащихся в объекте Salesforce. Полиморфное поле - это поле, в котором связанный объект может быть одним из нескольких различных типов объектов. Например,WhoПоле отношений Задачи может быть Контактом или Лидом. Аналогичным образомWhat Поле отношения Задачи может быть любым объектом, не относящимся к человеку, в Salesforce.

Как лучше всего смоделировать полиморфные отношения Salesforce в методологии Data Vault?

2 ответа

мы также используем Salesforce в Scalefree внутри компании и превращаем ее в модель Data Vault 2.0. В управляемой данными модели Data Vault 2.0 (это то, чему мы учим и проповедуем) у вас есть два варианта: либо вы рассматриваете объект, связанный с Who, как обобщенный объект. Для этого потребуется обобщенный хаб, который позже будет связан (в Business Vault) с хабом Contact или Lead (в Raw Data Vault) с помощью бизнес-логики (поэтому ссылка принадлежит Business Vault).

Другой вариант — сохранить идентификатор Salesforce (char(18)) в спутнике и просто игнорировать связь — по крайней мере, в хранилище необработанных данных. В Business Vault вы рассчитываете связи между задачей и контактом или лидом на основе спутниковых данных и с помощью бизнес-логики (как отличить лиды от контактов по существу, это просто).

Надеюсь, это поможет, Майкл Олшимке

Когда вы моделируете с помощью хранилища данных, полагайтесь не на моделирование исходной системы, а на бизнес-объект и процесс.

В данном конкретном случае "Например, поле отношений Кто в Задаче может быть Контактом или Лидом", ключевое слово - "Связь", что означает ссылку.

Исходя из того, что вы описываете, я ожидаю, что у вас есть задача хаба, контакт хаба и лид хаба. В зависимости от вашего бизнес-процесса и единицы работы у вас может быть ссылка "Задача-контакт" и другая ссылка "Задача-руководитель".

затем, когда вы получаете данные, просто вставьте их в правильную ссылку (если она еще не существует).