AI 에이전트의 경우: 문서 인덱스는 https://www.mongodb.com/ko-kr/docs/llms.txt에서 사용할 수 있으며, 모든 페이지의 마크다운 버전은 어떤 URL 경로에 .md를 추가하여 사용할 수 있습니다.
Docs Menu

데이터 검증

데이터 검증은 마이그레이션 작업이 데이터를 정확하게 마이그레이션했는지 확인합니다. 검증 엔진은 소스 및 대상 데이터베이스에 연결하여 마이그레이션된 문서를 소스 데이터와 비교합니다. 검증 엔진은 다음을 검증합니다.

  • 필드 이름

  • 데이터 유형

  • 필드 경로

  • Values

일회성 마이그레이션 작업의 경우 데이터 검증이 기본적으로 실행됩니다. 작업의 검증 활성화 또는 비활성화 방법을 학습하려면 데이터 검증 사용을 참조하십시오.

참고

이 페이지에서는 Relational Migrator 1.18 이상의 검증 엔진에 대해 설명합니다. 이전 버전에서는 기본 키 값만 확인하고, 더 족은 범위의 스키마를 검증하며, 실행 속도가 느립니다. 이러한 검증 기능을 사용하려면 1.18 이상으로 업그레이드하세요.

마이그레이션 작업의 각 컬렉션에 대해 검증 엔진은 다음 단계를 완료합니다.

  1. Compares the number of documents in the destination collection to the number of rows in the source table. To learn more, see Document Count Comparison.

  2. 소스 테이블의 기본 키를 사용하여 소스 데이터베이스에서 배치로 행을 조회하고 각 소스 컬럼을 컬렉션의 해당 필드 경로에 매핑합니다.

  3. 대상 컬렉션 에서 동일한 프라이머리 키를 가진 문서를 조회합니다. 검증 엔진은 각 필드 값을 해당 소스 열 값과 비교할 수 있도록 이러한 문서를 풀고 평면화합니다.

  4. Compares the source rows to the destination documents. To learn more, see Field-Level Comparison.

확인 엔진 모든 컬렉션 에 대해 이러한 단계를 완료하여 불일치를 발견하지 못하면 데이터 확인 프로세스 VERIFIED 상태를 보고합니다. 확인 상태에 대해 자세히 알아보려면 데이터 확인 상태를 참조하세요.

대상 컬렉션의 문서 수가 새 문서 매핑의 소스 테이블의 행 수와 일치하지 않을 경우 검증 엔진은 불일치를 보고합니다. 카운트 불일치는 컬렉션의 검증을 중지하지 않습니다.

검증 엔진은 기본 키 값을 기준으로 소스 행과 대상 문서를 일치시킵니다. 기본 키 값은 고유하므로 일반적으로 정확히 하나의 소스 행과 하나의 대상 문서를 식별합니다. 검증 엔진은 일치하는 각 쌍의 필드를 필드별로 비교합니다. 쌍이 일치하지 않으면 검증 엔진은 각 차이점을 보고합니다.

간호히 여러 행 또는 문서가 동일한 기본 키 값을 공유하는 경우가 있습니다. 예를 들어, 유효성 검사 엔진이 내장 배열을 해제할 때 각 배열 요소는 모두 모문서의 기본 키 값을 공유합니다. 여러 개의 일치하지 않는 행 또는 문서가 동일한 기본 키 값을 공유하는 경우 유효성 검사 엔진은 일치하지 않는 행 또는 문서를 페어링하려고 시도하지 않습니다. 대신 일치하지 않는 행 및 문서의 수를 보고하고 하나의 대표 소스 행과 대상 문서에 대해 계산된 차이를 표시합니다.

두 경우 모두 확인 엔진은 영향을 받은 데이터를 찾을 수 있도록 전체 기본 키 값 세트를 로그합니다.

데이터 유효성 검사는 마이그레이션 작업이 시작된 후 소스 데이터가 변경되지 않고 대상 컬렉션에 마이그레이션된 데이터만 포함되어 있다고 가정합니다. 두 가정 중 하나라도 사실이 아니면 유효성 검사 엔진은 마이그레이션 오류가 아닌 불일치를 보고할 수 있습니다.

  • 마이그레이션 작업이 시작되기 전에 대상 컬렉션에 데이터가 포함되어 있는 경우 검증 엔진은 기존 문서를 예상치 못한 문서로 보고합니다.

  • 마이그레이션 작업이 시작된 후 소스 데이터가 변경되면 검증 엔진은 변경된 행과 마이그레이션된 문서 간의 불일치를 보고합니다.

데이터 확인을 활성화하면 마이그레이션 작업에 상당한 컴퓨팅 시간이 추가될 수 있습니다. 확인 엔진에는 데이터베이스, 작업, 컬렉션 및 필드 수준에서도 제한이 있습니다.

데이터 검증은 다음 소스 데이터베이스를 지원합니다.

  • PostgreSQL

  • Oracle

  • MySQL

  • SQL Server

migrator.job.allow.null.join 사용자 속성이 true로 설정되면 데이터 검증을 실행할 수 없습니다. SQL 비교에서는 Null 값이 일치하지 않으므로 검증 엔진이 중지되고 Job Update Log 창에서 오류가 보고됩니다.

검증 엔진 다음과 같은 경우 컬렉션 건너뜁니다.

  • 소스 테이블에 기본 키가 없거나 하나 이상의 기본 키 필드가 매핑되지 않습니다. 검증 엔진은 기본 키 값을 사용하여 행을 배치로 조회합니다.

  • 컬렉션은 매핑 규칙 필터를 사용합니다. 마이그레이션된 데이터를 필터링하려면 대신 테이블 필터를 사용합니다. 자세한 내용은 매핑 규칙 필터테이블 필터를 참조하십시오.

  • 컬렉션은 배열 조건을 사용합니다. 자세한 내용은 임베디드 배열을(를) 참조하세요.

  • 컬렉션은 행 제한이 있는 테이블 필터를 사용합니다. ORDER BY 조항이 없으면 필터가 선택하는 행은 결정적이지 않습니다. 검증할 수 있는 행 제한을 적용하려면 필터의 SQL 성명에 ORDER BY 조항과 LIMIT 조항을 모두 추가합니다.

검증 엔진은 다음 경우에 필드를 건너띄님니다.

  • 필드는 계산된 필드입니다. 자세한 내용은 계산된 필드를 참조하세요.

  • 필드의 소스 컬러버 형식은 INTERVAL입니다.

  • 필드의 대상 유형은 BOOL, DATE, DECIMAL, INTEGER, LONG 또는 STRING가 아닙니다. 예를 들어 확인 엔진은 ObjectId 필드를 건너럭니다.

이 페이지 평가하기