기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
5단계: 문서의 개정 기록 보기
중요
지원 종료 알림: 기존 고객은 07/31/2025에 지원이 종료될 QLDB 때까지 Amazon을 사용할 수 있습니다. 자세한 내용은 Amazon QLDB Ledger를 Amazon Aurora Postgre로 마이그레이션을SQL
를 사용하여 차량의 등록 데이터를 수정한 후 등록된 모든 소유자의 기록과 기타 업데이트된 필드를 쿼리VIN 1N4AL11D75C109151
할 수 있습니다. 내장 기록 함수를 쿼리하여 삽입, 업데이트 및 삭제한 문서의 모든 개정 사항을 볼 수 있습니다.
기록 함수는 애플리케이션 데이터와 관련 메타데이터를 모두 포함하는 테이블의 커밋된 보기에서 개정 사항을 반환합니다. 메타데이터는 각 개정이 이루어진 시점, 순서, 어떤 트랜잭션이 이 개정을 수행했는지를 정확하게 보여줍니다.
이 단계에서는 vehicle-registration
원장의 VehicleRegistration
테이블에 있는 문서의 개정 기록을 쿼리합니다.
개정 기록을 보려면
-
https://console.aws.amazon.com/qldb
에서 Amazon QLDB 콘솔을 엽니다. -
탐색 창에서 PartiQL 편집기를 선택합니다.
-
vehicle-registration
원장을 선택합니다. -
문서 기록을 조회하려면 먼저 고유한
id
를 찾아야 합니다. 커밋된 보기를 쿼리하는 것 외에도 문서id
를 가져오는 또 다른 방법은 테이블의 기본 사용자 뷰에서BY
키워드를 사용하는 것입니다. 자세한 내용은 BY 절을 사용하여 문서 ID 쿼리하기 섹션을 참조하세요.쿼리 편집기 창에서 다음 문을 입력한 후 실행을 선택합니다.
SELECT r_id FROM VehicleRegistration AS r BY r_id WHERE r.VIN = '1N4AL11D75C109151'
-
그런 다음 이
id
값을 사용하여 기록 함수를 쿼리할 수 있습니다. 다음 문을 입력한 다음 실행을 선택합니다. 필요에 따라id
값을 고유한 문서 ID로 교체합니다.SELECT h.data.VIN, h.data.City, h.data.Owners FROM history(VehicleRegistration) AS h WHERE h.metadata.id = '
ADR2LQq48kB9neZDupQrMm
' --replace with your id참고
이 자습서의 목적을 위해 이 기록 쿼리는 문서 ID
ADR2LQq48kB9neZDupQrMm
의 모든 개정 내용을 반환합니다. 그러나 가장 좋은 방법은 문서 ID와 날짜 범위(시작 시간 및 종료 시간)를 모두 사용하여 기록 쿼리를 한정하는 것입니다.에서 QLDB모든
SELECT
쿼리는 트랜잭션에서 처리되며 트랜잭션 제한 시간 가 적용됩니다. 시작 시간과 종료 시간을 포함하는 기록 쿼리는 날짜 범위 한정이라는 이점을 갖습니다. 자세한 내용은 기록 함수을 참조하세요.기록 함수는 커밋된 보기와 동일한 스키마의 문서를 반환합니다. 이 예제에서는 수정된 차량 등록 데이터를 프로젝션합니다. 출력은 다음과 유사합니다.
VIN 구/군/시 소유자 "1N4AL11D75C109151"
"Seattle"
{PrimaryOwner:{PersonId:""},SecondaryOwners:[]}
"1N4AL11D75C109151"
"Seattle"
{PrimaryOwner:{PersonId:"294jJ3YUoH1IEEm8GSabOs"}, SecondaryOwners:[]}
"1N4AL11D75C109151"
"Everett"
{PrimaryOwner:{PersonId:"7NmE8YLPbXc0IqesJy1rpR"}, SecondaryOwners:[]}
"1N4AL11D75C109151"
"Everett"
{PrimaryOwner:{PersonId:"7NmE8YLPbXc0IqesJy1rpR"}, SecondaryOwners:[{PersonId:"5Ufgdlnj06gF5CWcOIu64s"}]}
참고
기록 쿼리가 문서 개정 내용을 항상 순차적으로 반환하지 않을 수도 있습니다.
출력을 검토하고 변경 사항이 4단계: 원장의 문서 수정에서 수행한 내용을 반영하는지 확인합니다.
-
그런 다음 각 개정의 문서 메타데이터를 검사할 수 있습니다. 다음 문을 입력한 다음 실행을 선택합니다. 이번에도
id
값을 자신의 문서 ID로 적절하게 교체하세요.SELECT VALUE h.metadata FROM history(VehicleRegistration) AS h WHERE h.metadata.id = '
ADR2LQq48kB9neZDupQrMm
' --replace with your id출력은 다음과 유사합니다.
version id txTime txId 0
"ADR2LQq48kB9neZDupQrMm"
2019-05-23T19:20:360d-3Z
"FMoVdWuPxJg3k466Iz4i75"
1
"ADR2LQq48kB9neZDupQrMm"
2019-05-23T21:40:199d-3Z
"KWByxe842Xw8DNHcvARPOt"
2
"ADR2LQq48kB9neZDupQrMm"
2019-05-23T21:44:432d-3Z
"EKwDOJRwbHpFvmAyJ2Kdh9"
3
"ADR2LQq48kB9neZDupQrMm"
2019-05-23T21:49:254d-3Z
"96EiZd7vCmJ6RAvOvTZ4YA"
이 메타데이터 필드는 각 항목이 언제 수정되었는지, 어떤 트랜잭션을 통해 수정되었는지에 대한 세부 정보를 제공합니다. 이 데이터에서 다음을 추론할 수 있습니다.
-
이 문서는 시스템이 할당한
id
인ADR2LQq48kB9neZDupQrMm
로 고유하게 식별됩니다 이는 Base62-encoded 문자열로 표시되는 범용 고유 식별자(UUID)입니다. -
txTime
는 문서(버전0
)의 초기 개정이2019-05-23T19:20:360d-3Z
에 작성되었음을 보여줍니다. -
이후의 각 트랜잭션은 동일한 문서
id
, 증분된 버전 번호, 업데이트된txId
및txTime
를 사용하여 새 개정을 생성합니다.
-
vehicle-registration
원장에서 암호화된 방식으로 문서 개정을 검증하려면 6단계: 원장에 있는 문서 검증로 이동하세요.