다음을 통해 공유


수집 오류 또는 손상된 데이터 문제 해결

참고 항목

2023년 9월 1일에 Dynamics 365 Marketing과 Dynamics 365 Customer Insights를 합병하고 이름을 변경했습니다. Dynamics 365 Marketing은 이제 Dynamics 365 Customer Insights - Journeys라고 합니다. Dynamics 365 Customer Insights는 이제 Dynamics 365 Customer Insights - Data라고 합니다. 자세한 내용은 Dynamics 365 Customer Insights FAQ를 참조하세요.

이 문서에서는 Microsoft Dynamics 365 Customer Insights - Data에서 Azure Data Lake Storage 또는 파워 쿼리를 사용할 때 데이터 수집 오류 또는 손상된 데이터에 대한 일반적인 이유를 소개합니다.

Azure Data Lake Storage를 사용하여 데이터 수집 오류 또는 손상된 데이터

데이터 수집 중에 레코드가 손상된 것으로 간주될 수 있는 가장 일반적인 이유는 다음과 같습니다.

스키마 또는 데이터 형식 불일치

데이터가 스키마를 따르지 않으면 수집 프로세스가 오류와 함께 완료됩니다.

이 문제를 해결하려면 원본 데이터 또는 스키마를 수정하고 데이터를 다시 수집합니다.

파티션 파일이 없습니다

  • 손상된 레코드 없이 수집 프로세스가 성공했지만 데이터를 볼 수 없는 경우 model.json 또는 manifest.json 파일을 편집하여 파티션이 지정되었는지 확인합니다. 그런 다음, 데이터 원본 새로 고침을 수행합니다.

  • 자동 일정 새로 고침 중에 데이터 원본을 새로 고치는 것과 동시에 데이터 수집이 발생하는 경우 파티션 파일이 비어 있거나 시스템 프로세스에서 사용할 수 없을 수 있습니다. 업스트림 새로 고침 일정에 맞추기 위해 시스템 새로 고침 일정 또는 데이터 원본의 새로 고침 일정을 변경합니다. 새로 고침이 동시에 발생하지 않도록 타이밍을 조정합니다.

날짜/시간 필드 형식이 잘못되었습니다.

datetime 테이블의 필드는 ISO 8601 또는 en-US 형식이 아닙니다. Dynamics 365 Customer Insights - Data의 기본 datetime 형식은 다음과 같습니다 en-US. 테이블의 datetime 모든 필드는 동일한 형식이어야 합니다. Customer Insights는 모델 또는 manifest.json 원본 또는 테이블 수준에서 주석 또는 특성이 만들어지면 다른 형식을 지원합니다. 예:

Model.json

  "annotations": [
    {
      "name": "ci:CustomTimestampFormat",
      "value": "yyyy-MM-dd'T'HH:mm:ss:SSS"
    },
    {
      "name": "ci:CustomDateFormat",
      "value": "yyyy-MM-dd"
    }
  ]   

manifest.json 파일의 형식은 datetime 테이블 수준 또는 특성 수준에서 지정할 수 있습니다. 테이블 수준에서 "exhibitsTraits" *.manifest.cdm.json 표에서 형식을 정의합니다 datetime . 특성 수준에서 tablename.cdm.json 특성에 사용합니다"appliedTraits".

테이블 수준의 Manifest.json

"exhibitsTraits": [
    {
        "traitReference": "is.formatted.dateTime",
        "arguments": [
            {
                "name": "format",
                "value": "yyyy-MM-dd'T'HH:mm:ss"
            }
        ]
    },
    {
        "traitReference": "is.formatted.date",
        "arguments": [
            {
                "name": "format",
                "value": "yyyy-MM-dd"
            }
        ]
    }
]

특성 수준의 table.json

   {
      "name": "PurchasedOn",
      "appliedTraits": [
        {
          "traitReference": "is.formatted.date",
          "arguments" : [
            {
              "name": "format",
              "value": "yyyy-MM-dd"
            }
          ]
        },
        {
          "traitReference": "is.formatted.dateTime",
          "arguments" : [
            {
              "name": "format",
              "value": "yyyy-MM-ddTHH:mm:ss"
            }
          ]
        }
      ],
      "attributeContext": "POSPurchases/attributeContext/POSPurchases/PurchasedOn",
      "dataFormat": "DateTime"
    }

파워 쿼리를 사용하여 수집 오류 또는 손상된 데이터

날짜/시간 값이 잘못 구문 분석되거나 구문 분석 오류가 발생합니다.

가장 일반적인 데이터 형식 불일치는 날짜 필드가 올바른 날짜 형식으로 설정되지 않은 경우 발생합니다. 이 불일치는 잘못된 형식의 원본 데이터 또는 잘못된 로캘로 인해 발생할 수 있습니다.

잘못된 로캘 문제의 증상:

  • 사용된 로캘로 원본 데이터를 구문 분석할 수 없는 경우 수집 오류가 발생합니다. 예를 들어 "2023/29/08"을 "MM/DD/YYYY"로 구문 분석하는 경우 29개월을 구문 분석할 수 없으므로 수집이 실패합니다.

  • 잘못된 로캘을 사용하여 원본 데이터를 성공적으로 구문 분석하면 날짜/시간 값이 올바르지 않습니다. 예를 들어 원본 데이터의 형식은 "MM/DD/YYYY"로 지정되고 수집 중에 데이터를 구문 분석하는 데 사용되는 기본 로캘은 "DD/MM/YYYY"를 사용합니다. 따라서 "2023년 12월 8일"은 "2023년 8월 12일"로 수집됩니다.

    스크린샷은 수집 후 날짜/시간 형식이 올바르지 않음을 보여줍니다.

해결

  • 잘못된 형식을 수정하려면 원본 데이터를 업데이트하고 다시 수집합니다.

  • 잘못된 로캘을 수정하려면 파워 쿼리 변환에서 변경 형식 Using 로캘을 사용하여 올바른 로캘을 사용하도록 모든 날짜/시간 필드의 형식>을 변경합니다. 예시:

    파워 쿼리에서 로캘을 사용하여 데이터 형식을 변경하는 방법을 보여 주는 스크린샷

    자세한 내용은 문서 또는 프로젝트 로캘을 참조 하세요.

자세한 정보