이 내용은 learn.palantir.com ↗에서도 확인할 수 있으며, 접근성을 위해 이곳에도 제공됩니다.
백킹 데이터셋 변경이 "파괴적"이라는 것은 이미 Phonograph 표에 등록되고 인덱싱된 열의 스키마를 변경할 때를 의미합니다. 기본적으로 Phonograph는 스키마 변경을 자동으로 수락하지 않으므로, 속성 매핑 및 Phonograph 표 등록을 업데이트하여 수동으로 처리해야 합니다. 이 작업에서는 백킹 데이터셋의 열을 삭제하거나 유형을 변경(예: double
에서 integer
로)하는 방법을 배웁니다.
예상치 못하게, 또는 예상대로 항공편 알림 데이터셋의 일부인 rule_name
속성이 상류 데이터 소스에서 제거되었다고 가정해 봅시다. 백킹 데이터셋에서 이 제거를 시뮬레이션한 후 다음 작업에서 발생한 실패를 처리하겠습니다.
ontology_flight_alerts_logic
저장소에서 flight_alerts.py
파일을 엽니다.
반환 문을 업데이트하여 rule_name
열도 삭제하도록 합니다:
return source_df.drop('rule_id', 'rule_name')
최상의 관행을 사용하여 코드를 미리보기, 커밋, 빌드합니다.
데이터셋 빌드가 완료되면 결과물 flight_alerts
데이터셋을 열고 Details 탭의 Syncs 섹션으로 이동합니다. 동기화는 아직 "실행 상태"일 수 있지만 완료되면 실패를 보고하게 됩니다.
빨간색 실패 블록에서 History 버튼을 클릭합니다. 이렇게 하면 이 동기화의 이력 목록이 순서대로 표시됩니다.
목록에서 상단의 실패한 동기화 항목을 클릭합니다. 이제 동기화 세부사항, Phonograph schema mismatch error 메시지를 포함하여 볼 수 있습니다.
Details 단어 옆에 있는 >
를 클릭하여 오류 메시지를 확장합니다. 오류의 마지막 줄을 주목하십시오:
foundryColumnsInPhonographTableSchemaMissingFromFoundrySchema=[rule_name]
등록된 Phonograph 표는 rule_name
열을 기대했지만(이전에 동기화되었기 때문에), 백킹 데이터셋에서는 찾을 수 없었습니다.
OMA에서 당신의 항공편 알림 오브젝트 유형을 엽니다.
왼쪽 패널에서 Datasources 메뉴 항목을 클릭하고 Phonograph 블록까지 아래로 스크롤합니다. OMA에서 여기에서도 실패한 인덱스 상태를 볼 수 있습니다(Failed sync 링크를 클릭하면 이전에 보았던 Job Tracker 애플리케이션에서 오류로 이동하게 됩니다).