[제한 공개]{class="badge informative"}
모델 기반 스키마
모델 기반 스키마는 Adobe Experience Platform 데이터 레이크에서 구조화된 데이터를 나타내기 위해 유연하고 제어된 모델링 패턴을 제공합니다. 통합 스키마나 전체 관계형 데이터베이스 시스템에 의존하지 않고 강제 적용된 기본 키, 스키마 수준 관계 및 레코드에 대한 세분화된 제어를 지원합니다.
모델 기반 스키마를 사용하여 다음을 수행할 수 있습니다.
- 강제 단일 필드 또는 복합 기본 키로 데이터 무결성을 보장합니다.
- 삽입, 업데이트 및 삭제에 버전 관리를 사용하여 정확한 변경 내용 추적을 활성화합니다.
- 재사용 가능한 스키마 수준 관계를 정의하여 실제 엔티티 연결을 모델링합니다.
- 여러 데이터 모델을 지원하여 애플리케이션 간에 스키마 구조를 복제하지 마십시오.
- 유니온 스키마 제약 조건을 우회하여 온보딩을 간소화하고, 스키마 팽창을 줄이고, 원치 않는 스키마 변경을 방지합니다.
모델 기반 스키마가 표준 XDM 스키마와 다른 방법
Experience Platform의 표준 XDM 스키마는 레코드, 시계열 또는 임시, 이렇게 세 가지 데이터 동작 중 하나를 따릅니다. 자세한 내용 및 정의는 XDM 데이터 동작을 참조하십시오.
기존 모델에서 레코드 및 시계열 스키마는 유니온 스키마에 참여합니다(유니온 스키마 UI 안내서 참조). 공유 필드 그룹이 업데이트되고 사용자 지정 필드가 테넌트 네임스페이스에 중첩되어야 하므로 이러한 스키마는 자동으로 발전합니다. 이 모델은 강력하지만, 온보딩을 느리게 하고, 사용되지 않은 필드가 있는 지나치게 복잡한 스키마를 생성하고, 추가 데이터 매핑 또는 변환이 필요할 수 있습니다. 이러한 요인들은 학습 곡선과 지속적인 유지 관리 노력을 증가시킵니다.
모델 기반 스키마는 유니온 스키마 종속성을 제거하여 공유 필드 그룹에서 자동 업데이트를 제거하고 테넌트 네임스페이스 제한 없이 직접 필드 정의를 허용합니다. 기본 키, 관계 및 초기 스키마 디자인을 명시적으로 제어할 수 있으므로 생성 시 요구 사항에 맞게 데이터를 더 쉽게 모델링할 수 있습니다.
모델 기반 스키마의 기능
다음 기능을 사용하여 거버넌스, 무결성 및 상호 운용성을 유지하면서 데이터 레이크에서 구조화된 데이터를 모델링합니다.
-
스키마 동작 지원: 다음을 사용하여 구성:
- 레코드 동작: 고객, 계정 또는 캠페인과 같은 엔터티의 현재 상태를 캡처합니다.
- 시계열 동작: 이벤트 및 이벤트 발생 시간을 캡처하여 시퀀스 또는 시간 경과에 따른 변경 내용을 추적하는 데 유용합니다.
-
기본 키 적용: 수집 중에 각 레코드를 고유하게 식별하고 중복을 방지하기 위해 기본 키를 정의합니다.
-
버전 제어: 레코드가 순서를 벗어나도 업데이트가 올바른 순서로 적용되도록 하려면 버전 식별자(설명자)를 사용하십시오.
-
관계 매핑: 모델 기반 스키마 또는 모델 기반 스키마와 표준 스키마 간에 일대일 또는 다대일 관계를 만듭니다. 관계 정의는 효율적인 조인을 위해 설명자로 저장됩니다.
-
간소화된 발전: 모델 기반 스키마는 유니온 보기에 참여하지 않으며 공유 필드 그룹이 변경될 때 업데이트되지 않으므로 예기치 않은 다운스트림 변경을 방지합니다.
-
유연한 필드 정의: 테넌트 ID 이름 간격 없이 필드를 직접 추가합니다. 모델 기반 스키마는 XDM 필드 그룹을 지원하지 않습니다.
-
유니온 스키마에 대한 종속성이 없음: 쿼리 성능을 개선하고 전역 스키마 보기 관리에 대한 작업 오버헤드를 줄입니다.
-
이벤트 시간 순서 지정: 시계열 스키마의 경우 타임스탬프 식별자 를 사용하여 수집 시간 대신 발생 시간별로 이벤트를 정렬합니다.
필수 필드
모델 기반 스키마에는 특정 설명자(주요 동작 및 제약 조건을 제어하는 스키마 정의의 메타데이터)가 필요합니다. 다음 설명자를 스키마 정의의 일부로 추가합니다.
기본 키 설명자
기본 키 설명자를 사용하여 각 레코드가 고유하게 식별되는지 확인하십시오. 지원되는 구성은 다음과 같습니다.
- 단일 필드 기본 키: 각 레코드에 대해 고유한 값이 있는 필드를 하나 사용합니다.
- 복합 기본 키: 여러 필드를 사용하여 고유 식별자를 만드십시오. 시계열 스키마의 경우 복합 키는 타임스탬프 설명자로 식별된 타임스탬프 필드를 포함해야 합니다.
예(단일 필드):
{
"xdm:descriptor": "xdm:descriptorPrimaryKey",
"xdm:sourceProperty": "customerId"
}
예(시계열에 대한 합성)
{
"xdm:descriptor": "xdm:descriptorPrimaryKey",
"xdm:sourceProperty": ["customerId", "eventTimestamp"]
}
버전 설명자(식별자)
버전 설명자(식별자)를 정의하여 올바른 레코드 상태를 유지하고 최신 업데이트가 적용되도록 합니다. 여러 레코드가 동일한 기본 키를 공유하는 경우 버전 값이 가장 높은 레코드가 가장 최근으로 간주됩니다.
예:
{
"xdm:descriptor": "xdm:descriptorVersion",
"xdm:sourceProperty": "lastModified"
}
타임스탬프 설명자 (식별자)
시계열 스키마의 경우 타임스탬프 설명자 (식별자)를 정의하여 순서를 위한 이벤트 시간을 설정합니다.
예:
{
"xdm:descriptor": "xdm:descriptorTimestamp",
"xdm:sourceProperty": "eventTimestamp"
}
스키마 편집기에서 설명자를 만드는 방법에 대한 지침은 스키마 편집기에서 설명자 만들기를 참조하십시오. API 기반 만들기는 API를 사용하여 설명자 만들기를 참조하십시오.
관계 지원 relationship-support
관계형 데이터 모델링은 모델 기반 스키마를 주로 사용하는 것입니다. 응용 프로그램 사용 사례에서는 이러한 스키마를 '관계형 스키마'라고 지칭할 수도 있습니다. 관계 설명자를 사용하면 데이터 행에 외래 키를 포함하지 않고 스키마 간에 데이터 세트를 연결하여 이러한 연결을 사용할 수 있습니다. 참조 무결성을 향상하고 재사용 가능한 모델링 패턴을 활성화하고 애플리케이션 간에 연결된 쿼리를 지원합니다.
쿼리 시간에 동적 해결을 위해 스키마 수준에서 관계 설명자를 만듭니다. 카디널리티 값(1:1, 다대일)은 지침을 제공하지만 수집 중에는 제한을 적용하지 않으므로 연결된 데이터 세트 간에 유연한 데이터 모델링을 지원합니다.
관계 설명자를 추가하기 전에 적절한 유형과 대상을 결정하십시오.
- 일대일 - 원본 스키마의 각 레코드는 대상 스키마의 최대 하나의 레코드에 해당합니다.
- 다대일 - 원본 스키마의 여러 레코드가 대상 스키마의 동일한 레코드를 참조할 수 있습니다.
예: 일대일 관계
{
"xdm:descriptor": "xdm:descriptorRelationship",
"xdm:sourceProperty": "accountId",
"xdm:destinationSchema": "https://ns.adobe.com/xdm/context/account",
"xdm:destinationProperty": "accountId"
}
예: 다대일 관계
{
"xdm:descriptor": "xdm:descriptorRelationship",
"xdm:sourceProperty": "customerId",
"xdm:destinationSchema": "https://ns.adobe.com/xdm/context/customer",
"xdm:destinationProperty": "customerId"
}
관계 설명자 형식 및 구문 목록을 보려면 설명자 API 참조를 참조하십시오.이러한 개념을 실제로 적용하는 방법을 알아보려면 튜토리얼을 따라 API에서 관계를 정의 또는 UI에서 관계를 생성하십시오.
데이터 삭제 및 위생 고려 사항 data-hygiene-support
모델 기반 스키마를 사용하면 모든 애플리케이션 및 사용 사례에 보편적인 영향을 주는 정확한 레코드 수준 삭제가 가능합니다. 기본 키, 버전 및 타임스탬프 설명자는 삭제 작업 중 정확한 레코드 식별을 위한 기반을 제공합니다.
범용 삭제 영향
모델 기반 스키마를 사용하는 모든 애플리케이션은 다음 사항을 고려해야 합니다.
- 참조 무결성: 삭제 작업은 연결된 데이터 세트 간 관련 레코드에 영향을 줄 수 있습니다.
- 준수 요구 사항: 일부 산업에서는 특정 삭제 동작과 감사 추적이 필요합니다.
- 응용 프로그램 동작: 다운스트림 시스템에서 삭제 이벤트를 적절하게 처리해야 할 수 있습니다
- 데이터 일관성: 삭제 작업 동안 관련 데이터 세트가 일관성을 유지해야 합니다.
- 삭제 계획: 디자인 단계에서 연결된 모든 데이터 세트 및 응용 프로그램에 다운스트림 영향을 고려합니다.
구현 지침은 모델 기반 데이터 세트에서 레코드 삭제를 참조하십시오.
제한 사항 및 고려 사항 limitations
모델 기반 스키마를 사용하기 전에 다음 제한 사항을 검토하십시오.
- 모델 기반 스키마는 유니온 스키마에 참여하지 않습니다.
- 스키마 진화는 수동이며 필드 그룹이 변경될 때 자동으로 업데이트되지 않습니다.
- 관계는 일대일 및 다대일로 제한됩니다.
- 사용 가능 여부는 라이선스 또는 기능 활성화에 따라 다릅니다.
- 시계열 스키마에 복합 기본 키가 필요합니다.