2단계: 데이터 검증 QLDB - 아마존 퀀텀 레저 데이터베이스 (아마존QLDB)

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

2단계: 데이터 검증 QLDB

중요

지원 종료 알림: 기존 고객은 2025년 7월 31일 지원이 종료될 QLDB 때까지 Amazon을 사용할 수 있습니다. 자세한 내용은 아마존 QLDB 원장을 Amazon Aurora SQL Postgre로 마이그레이션을 참조하십시오.

QLDBAmazon은 지정된 문서 ID 및 관련 블록에 대한 증명을 API 요청하도록 제공합니다. 1단계: 다이제스트 요청 QLDB에 설명된 대로 이전에 저장한 다이제스트의 팁 주소도 제공해야 합니다. 다음을 사용할 수 있습니다. AWS Management Console, 그리고 AWS SDK, 또는 AWS CLI 증거를 구하기 위해서요

그런 다음 에서 반환한 증명을 사용하여 클라이언트 QLDB API 측에서 저장된 다이제스트와 비교하여 문서 수정 내용을 확인할 수 있습니다. 이를 통해 데이터 확인에 사용하는 알고리즘을 제어할 수 있습니다.

AWS Management Console

이 섹션에서는 Amazon QLDB 콘솔을 사용하여 이전에 저장한 다이제스트와 비교하여 문서 개정을 확인하는 단계를 설명합니다.

시작하기 전에 먼저 1단계: 다이제스트 요청 QLDB의 단계를 따라야 합니다. 확인을 위해서는 확인하려는 수정본을 포함하는 이전에 저장한 다이제스트가 필요합니다.

문서 수정본을 확인하려면(콘솔)
  1. https://console.aws.amazon.com/qldb에서 아마존 QLDB 콘솔을 엽니다.

  2. 먼저 원장에서 확인하려는 수정본의 idblockAddress를 쿼리합니다. 이 필드는 문서의 메타데이터에 포함되며, 커밋된 뷰에서 쿼리할 수 있습니다.

    문서 id는 시스템에서 할당한 고유 ID 문자열입니다. blockAddress는 개정이 커밋된 블록 위치를 지정하는 Ion 구조입니다.

    탐색 창에서 PartiQL 편집기를 선택합니다.

  3. 수정본을 확인하려는 원장 이름을 선택합니다.

  4. 쿼리 편집기에 다음 구문에서 SELECT 문을 입력한 다음 실행을 선택합니다.

    SELECT metadata.id, blockAddress FROM _ql_committed_table_name WHERE criteria

    예를 들어, 다음 쿼리는 Amazon QLDB 콘솔 시작하기에서 생성된 샘플 원장의 VehicleRegistration 테이블에서 문서를 반환합니다.

    SELECT r.metadata.id, r.blockAddress FROM _ql_committed_VehicleRegistration AS r WHERE r.data.VIN = 'KM8SRDHF6EU074761'
  5. 쿼리가 반환하는 idblockAddress 값을 복사하여 저장합니다. id 필드의 큰따옴표는 반드시 생략하세요. Amazon Ion에서 문자열 데이터 유형이 큰따옴표로 구분됩니다. 예를 들어, 다음 스니펫의 영숫자 텍스트만 복사해야 합니다.

    "LtMNJYNjSwzBLgf7sLifrG"

  6. 이제 문서 수정본을 선택했으니 확인 프로세스를 시작할 수 있습니다.

    탐색 창에서 검증을 선택합니다.

  7. 문서 검증 양식의 검증하려는 문서 지정에 다음 입력 파라미터를 입력합니다.

    • 원장 - 수정본을 확인하려는 원장.

    • 블록 주소 - 4단계에서 쿼리를 통해 반환된 blockAddress 값.

    • 문서 ID - 4단계에서 쿼리를 통해 반환된 id 값.

  8. 확인에 사용할 다이제스트 지정에서 다이제스트 선택을 선택하여 이전에 저장한 다이제스트를 선택합니다. 파일이 유효하면 콘솔의 모든 다이제스트 필드가 자동으로 채워집니다. 또는 다이제스트 파일에서 직접 다음 값을 수동으로 복사하여 붙여넣을 수 있습니다.

    • 다이제스트 - 다이제스트 파일의 digest 값.

    • 다이제스트 팁 주소 - 다이제스트 파일의 digestTipAddress 값.

  9. 문서 및 다이제스트 입력 파라미터를 검토한 다음 검증을 선택합니다.

    콘솔은 다음 두 단계를 자동화합니다.

    1. 지정된 문서에 대한 증빙 양식을 QLDB 요청하십시오.

    2. 에서 반환한 증명을 사용하여 클라이언트 QLDB 측에 전화를 걸어 API 제공된 요약과 비교하여 문서 수정 내용을 확인합니다. 이 확인 알고리즘을 검사하려면 다음 QLDB API 섹션을 참조하여 코드 예제를 다운로드하세요.

    콘솔은 검증 결과 카드에 요청 결과를 표시합니다. 자세한 내용은 확인 결과 단원을 참조하십시오.

QLDB API

Amazon에서 다음과 같이 문서 개정을 확인할 수도 QLDB API 있습니다. AWS SDK또는 AWS CLI. 는 응용 프로그램에서 사용할 수 있는 다음 작업을 QLDB API 제공합니다.

  • GetDigest - 저널에서 가장 최근에 커밋된 블록의 원장 다이제스트를 반환합니다. 응답에는 256비트 해시 값과 블록 주소가 포함됩니다.

  • GetBlock - 저널의 지정된 주소에 있는 블록 객체를 반환합니다. 또한 DigestTipAddress가 제공된 경우 검증을 위해 지정된 블록의 증명을 반환합니다.

  • GetRevision - 지정된 문서 ID 및 블록 주소의 수정본 데이터 객체를 반환합니다. 또한 DigestTipAddress가 제공된 경우 검증을 위해 지정된 수정본의 증명을 반환합니다.

이러한 API 작업에 대한 전체 설명은 를 참조하십시오아마존 QLDB API 레퍼런스.

를 사용하여 데이터를 확인하는 방법에 대한 자세한 내용은 AWS CLI자세한 내용은 AWS CLI 커맨드 레퍼런스.

샘플 애플리케이션

자바 코드 예제는 amazon-qldb-dmv-sampleaws-samples/ -java GitHub 리포지토리를 참조하십시오. 이 샘플 애플리케이션을 다운로드하여 설치하는 방법에 대한 자세한 내용은 Amazon QLDB Java 샘플 애플리케이션 설치 섹션을 참조하세요. 확인을 수행하기 전에 Java 자습서의 1~3단계에 따라 샘플 원장을 생성하고 샘플 데이터와 함께 로드해야 합니다.

클래스의 자습서 코드는 문서 개정에 대한 증명을 요청한 다음 해당 개정을 확인하는 예를 GetRevision제공합니다. 이 클래스는 다음 단계를 실행합니다.

  1. 샘플 원장 vehicle-registration에서 새 다이제스트를 요청합니다.

  2. vehicle-registration 원장의 VehicleRegistration 테이블에서 샘플 문서 수정본에 대한 증명을 요청합니다.

  3. 반환된 다이제스트과 증명을 사용하여 샘플 수정을 확인합니다.