다음을 통해 공유


Azure Synapse Link for Dataverse FAQ

이 문서에서는 Microsoft Dataverse 테이블 데이터를 Azure Synapse Analytics 및 Azure Data Lake로 내보내는 방법에 대해 자주 묻는 질문에 대한 정보를 제공합니다.

연결된 Azure Storage의 데이터 파일에 대한 자동 삭제 정책 생성, 업데이트, 삭제 또는 설정과 같은 작업을 수동으로 수행할 수 있나요?

고객은 데이터 파일을 수정해서는 안 되며 고객 파일을 데이터 폴더에 배치해서는 안 됩니다.

참고

Azure Synapse Link를 중단하지 않고 데이터 레이크의 오래되고 정체된 데이터를 삭제하려면 증분 업데이트 쿼리 및 분석 기능을 사용하는 것이 좋습니다.

내 테이블 관계에 어떻게 액세스할 수 있습니까?

다대다 관계에 액세스하기 위해 관계는 새 링크에 대한 테이블 추가 페이지와 기존 링크에 대한 테이블 관리에서 선택할 수 있는 테이블로 사용할 수 있습니다.

참고

모든 관계 데이터는 CSV 형식으로 기록될 때 기본적으로 추가 전용 모드입니다.

Azure Synapse Link는 Dataverse의 무료 기능입니다. Azure Synapse Link for Dataverse를 활용해도 Dataverse에서 추가 요금이 발생하지 않습니다. 그러나 Azure 서비스에 대한 잠재적 비용을 고려하십시오.

열을 추가하면 어떻게 됩니까?

소스의 테이블에 새 열을 추가하면 해당 파일 파티션의 대상에 있는 파일 끝에도 추가됩니다. 열을 추가하기 전에 존재했던 행에는 새 열에 표시되지 않지만 새 행이나 업데이트된 행에는 새로 추가된 열이 표시됩니다.

열을 삭제하면 어떻게 됩니까?

소스의 테이블에서 열을 삭제할 때 열이 대상에서 삭제되지 않습니다. 대신 행이 더 이상 업데이트되지 않고 이전 행을 유지하면서 null로 표시됩니다.

열에 있는 데이터 유형을 변경하면 어떻게 됩니까?

열에 있는 데이터 유형 변경은 주요 변경 사항이므로 연결을 해제하고 다시 연결해야 합니다.

행을 삭제하면 어떻게 됩니까?

행 삭제는 선택한 데이터 쓰기 옵션에 따라 다르게 처리됩니다.

  • CSV 형식을 사용한 내부 업데이트: 이것이 기본 모드입니다. 이 모드에서 테이블 행을 삭제하면 Azure Data Lake의 해당 데이터 파티션에서도 행이 삭제됩니다. 즉, 데이터는 대상에서 영구 삭제됩니다.
  • CSV 형식 및 증분 폴더 업데이트가 있는 추가 전용: 이 모드에서는 Dataverse 테이블 행이 삭제될 때 대상에서 영구 삭제되지 않습니다. 대신 Azure Data Lake의 해당 데이터 파티션에 있는 파일에 행이 추가되고 isDeleted=True로 설정됩니다.
  • Delta Lake 형식으로 내보내기: Azure Synapse Link는 다음 델타 동기화 주기 동안 데이터에 대해 일시 삭제를 수행한 다음, 30일 후에 영구 삭제를 수행합니다.

내보낸 파일에 열 헤더가 표시되지 않는 이유는 무엇입니까?

Azure Synapse Link는 Common Data Model을 따르므로 Microsoft Power Apps, Power BI, Dynamics 365 및 Azure와 같은 애플리케이션 및 비즈니스 프로세스 전반에서 데이터와 그 의미를 공유할 수 있습니다. 각 CDM 폴더에는 열 헤더와 같은 메타데이터가 model.json 파일에 저장됩니다. 추가 정보: Common Data Model 및 Azure Data Lake Storage Gen2 | Microsoft Learn

Model.json 파일이 데이터 유형의 길이를 늘리거나 변경하고 Dataverse에 정의된 내용을 유지하지 않는 이유는 무엇입니까?

Model.json은 열 크기에 대한 데이터베이스 길이를 유지합니다. Dataverse는 각 열에 대한 데이터베이스 길이 개념이 있습니다. 크기가 200인 열을 만들고 나중에 100으로 줄이면, Dataverse는 여전히 기존 데이터를 Dataverse에 표시합니다. DBLength를 200으로, MaxLength를 100으로 유지하면 됩니다. Model.json에서 볼 수 있는 것은 DBLength이며 다운스트림 프로세스에 사용하는 경우 Dataverse 열에 더 적은 공간을 프로비저닝하지 않습니다.

참고

메모 필드는 varchar(max)로 정의되며 기본 최대 길이는 9999입니다.

내보낸 Dataverse 테이블에서 예상할 수 있는 날짜와 시간 형식은 무엇입니까?

내보낸 Dataverse 테이블에서 예상할 수 있는 날짜와 시간 형식은 세 가지가 있습니다.

열 이름 Format 데이터 유형
SinkCreatedOnSinkModifiedOn M/d/yyyy H:mm:ss tt datetime 6/28/2021 4:34:35 PM
CreatedOn yyyy-MM-dd'T'HH:mm:ss.sssssssXXX datetimeOffset 2018-05-25T16:21:09.0000000+00:00
기타 모든 열 yyyy-MM-dd'T'HH:mm:ss'Z' datetime 2021-06-25T16:21:12Z

참고

2022년 7월 29일에 CreatedOn 데이터 형식이 datetime에서 datetimeOffset으로 변경되었습니다. 변경 전에 생성된 테이블의 데이터 유형 형식을 편집하려면 테이블을 삭제하고 다시 읽으십시오.

데이터 형식 형식을 업데이트하는 Dataverse의 날짜 및 시간 열에 대해 다른 열 동작을 선택할 수 있습니다. 추가 정보: 날짜 및 시간 열의 동작 및 형식

일부 Dataverse 테이블에 대해 일반 날짜/시간 분할 파일 이름 대신 1.csv 또는 1_001.csv 파일 이름이 표시되는 이유는 무엇입니까?

이 동작은 추가 전용 내보내기 모드를 선택하고 유효한 CreatedOn 열이 없는 테이블이 있는 경우 예상됩니다. Blob은 1.csv, 2.csv(유효한 생성 날짜가 없기 때문에 사용자 지정 파티셔닝 사용)와 같은 파일로 구성됩니다. 파티션이 MaxBlockPerBlobLimit의 95%에 도달하면 시스템은 자동으로 새 파일(여기서는 1_001.csv로 표시됨)을 생성합니다.

연간 또는 월간 파티션 전략은 언제 사용해야 합니까?

1년간 데이터 볼륨이 높은 Dataverse 테이블이면 월별 파티션을 사용하는 것이 좋습니다. 이렇게 하면 파일 크기가 작아지고 성능이 향상됩니다. 또한 Dataverse 테이블에 있는 행의 경우 자주 업데이트되므로 여러 개의 작은 파일로 분할하면 원본 위치 업데이트 시나리오의 경우 성능을 향상하는 데 도움이 됩니다. Delta Lake는 CSV 형식에 비해 뛰어난 성능으로 인해 연간 파티션으로만 사용할 수 있습니다.

추가 전용 모드란 무엇이며 추가 전용과 전체 업데이트 모드의 차이점은 무엇입니까?

현재 위치 업데이트보다는 추가 전용 모드에서 Dataverse 테이블의 증분 데이터가 호수의 해당 파일 파티션에 추가됩니다. 추가 정보: Azure Synapse Link의 규칙에 대한 고급 설정 구성

변경 내역 보기를 위해 추가 전용 모드를 언제 사용합니까?

추가 전용 모드는 레이크에 Dataverse 데이틀 데이터 쓰기에 권장되는 옵션입니다. 특히 데이터가 자주 변경되는 파티션 내에서 데이터 볼륨이 높을 때 권장됩니다. 다시 말하지만, 이것은 엔터프라이즈 고객에게 일반적으로 사용되면서 적극 권장되는 옵션입니다. 또한 Dataverse에서의 변경 사항을 증분 검토하고 ETL, AI 및 ML 시나리오에 대한 변경 사항을 처리하려는 시나리오에 대해 이 모드를 사용하도록 선택할 수 있습니다. 추가 전용 모드는 최신 변경 사항 또는 현재 위치 업데이트 대신 변경 내역을 제공하고, 과거 값을 기반으로 하는 예측 또는 예측 분석과 같은 AI 시나리오의 여러 시계열을 활성화합니다.

추가 전용 모드에서 데이터를 내보낼 때 각 레코드의 최신 행을 검색하고 삭제된 행을 제외하려면 어떻게 해야 합니까?

추가 전용 모드에서는 VersionNumberSinkModifiedOn을 사용하여 동일한 ID를 가진 최신 버전의 레코드를 식별한 다음 최신 버전에 isDeleted=0을 적용해야 합니다.

추가 전용 모드를 사용하여 데이터를 내보낼 때 중복된 버전 번호가 표시되는 이유는 무엇입니까?

추가 전용 모드의 경우 Azure Synapse Link for Dataverse가 Azure 데이터 레이크에서 네트워크 지연과 같은 이유로 인해 데이터가 커밋되었다는 승인을 받지 못하는 경우 Azure Synapse Link는 해당 시나리오에서 다시 시도하고 데이터를 다시 커밋합니다. . SinkModifiedOn을 사용하여 데이터를 필터링하여 다운스트림 소비가 이 시나리오에 탄력적으로 적용되도록 해야 합니다.

Sinkmodifiedon 및 Modifiedon 열에 차이가 나타나는 이유는 무엇입니까?

예상된 일입니다. Modifiedon은 Dataverse에서 변경되는 레코드의 날짜/시간입니다. Sinkmodifiedon은 데이터 레이크에서 레코드가 수정된 날짜 및 시간입니다.

내보내기가 지원되지 않는 Dataverse 테이블은 무엇입니까?

변경 추적이 활성화되지 않은 테이블은 다음 시스템 테이블 외에 지원되지 않습니다.

  • 첨부
  • 달력
  • Calendarrule

참고

Azure Synapse Link for Dataverse를 사용하여 내보내기 위한 감사 테이블을 추가할 수 있습니다. 그러나 감사 테이블 내보내기는 델타 레이크 프로필에서만 지원됩니다.

델타 레이크로 내보내기 기능을 사용하고 있는데 Apache Spark 작업을 중지하거나 실행 시간을 변경할 수 있나요?

구성된 시간 간격에 데이터 변경이 있으면 델타 레이크 변환 작업이 트리거됩니다. Apache Spark 풀을 중지하거나 일시 중지할 수 있는 옵션은 없습니다. 그러나 테이블 관리 > 고급 시간 간격에서 링크 생성 후 시간 간격을 수정할 수 있습니다.

조회 열은 ID와 값으로 구성됩니다. 조회 값은 루트 테이블에서만 변경됩니다. 조회 열의 값을 더 잘 반영하려면 원래 루트 테이블과 조인하여 최신 값을 가져오는 것이 좋습니다.

Dataverse에서 계산된 열에는 수식 정보만 유지되며 실제 값은 기본 테이블 열에 따라 달라집니다. 따라서 계산된 열은 모든 열이 동일한 내보낸 테이블 내에 있는 경우에만 지원됩니다.

어떤 Dataverse 테이블이 기본으로 추가만 사용합니까?

createdOn 필드가 없는 모든 테이블은 추가 전용 모드를 기본으로 사용하여 동기화됩니다. 여기에는 관계 테이블과 ActivityParty 테이블이 포함됩니다.

오류 메시지가 표시되는 이유는 무엇입니까? - 경로에 있는 디렉터리의 내용을 나열할 수 없습니다.

  • Dataverse의 데이터는 연결된 스토리지 컨테이너에 저장됩니다. Synapse Workspace를 통해 읽기 및 쿼리 작업을 수행하려면 연결된 스토리지 계정에 "Storage Blob Data 기여자" 역할이 필요합니다.
  • Delta Lake 형식으로 데이터를 내보내도록 선택하면 Delta Lake 변환 후 CSV 파일이 정리됩니다. Synapse 작업 영역을 통해 non_partitioned 테이블이 있는 데이터를 쿼리해야 합니다.

파일이 불완전하거나 읽을 수 없기 때문에 대량 로드할 수 없습니다(CSV 파일만 해당)라는 오류 메시지가 표시되는 이유는 무엇입니까?

Dataverse 데이터는 트랜잭션 생성, 업데이트, 삭제를 통해 지속적으로 변경될 수 있습니다. 이 오류는 데이터를 읽을 때 기본 파일이 변경되어 발생합니다. 따라서 지속적으로 변경되는 테이블의 경우 스냅샷 데이터(분할된 테이블)를 사용하여 소비하도록 소비 파이프라인을 변경합니다. 추가 정보: 서버리스 SQL 풀 문제 해결

Azure Synapse Link for Dataverse는 분석 목적으로 설계되었습니다. 고객은 보관 목적으로 장기 보존을 사용하는 것이 좋습니다. 추가 정보: Dataverse 장기 데이터 보존 개요

Dataverse에서 레코드가 삭제되었는데 데이터 레이크에 데이터 변경 사항이 표시되지 않는 이유는 무엇입니까?

레코드를 제거하기 위한 직접 SQL 호출의 경우 BPO로 인해 Azure Synapse Link for Dataverse 서비스가 트리거되지 않습니다. 삭제가 호출되지 않습니다. 샘플 기능을 보려면 상속된 액세스 권한을 정리하는 방법을 참조하세요.