기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
에서 스트림 생성 및 관리 QLDB
중요
지원 종료 알림: 기존 고객은 2025년 7월 31일 지원이 종료될 QLDB 때까지 Amazon을 사용할 수 있습니다. 자세한 내용은 아마존 QLDB 원장을 Amazon Aurora SQL Postgre로 마이그레이션을
Amazon은 원장에서 Amazon Kinesis Data Streams로 저널 데이터 스트림을 생성하고 관리하는 API 작업을 QLDB 제공합니다. QLDB스트림은 저널에 커밋된 모든 문서 수정 버전을 캡처하여 Kinesis 데이터 스트림으로 전송합니다.
다음을 사용할 수 있습니다. AWS Management Console, 그리고 AWS SDK, 또는 AWS Command Line Interface (AWS CLI) 를 사용하여 저널 스트림을 만들 수 있습니다. 또한 다음을 사용할 수도 있습니다. AWS CloudFormation
스트림 파라미터
QLDB저널 스트림을 만들려면 다음 구성 매개변수를 제공해야 합니다.
- 원장 이름
-
저널 데이터를 Kinesis Data Streams로 스트리밍하려는 QLDB 원장.
- 스트림 이름
-
QLDB저널 스트림에 할당하려는 이름. 사용자 정의 명칭은 스트림의 목적을 식별하고 나타내는 데 도움이 될 수 있습니다.
주어진 원장의 경우, 스트림 명칭은 다른 활성 스트림들 사이에서 고유해야 합니다. 스트림 이름은 아마존의 할당량 및 한도 QLDB에 정의된 원장 이름과 동일한 명명 제약 조건을 갖습니다.
생성하는 각 QLDB 스트림에 스트림 이름 외에도 스트림 ID를 QLDB 할당합니다. 스트림 ID는 상태에 관계없이 주어진 원장의 모든 스트림에서 고유합니다.
- 현재 날짜 및 시간
-
스트리밍 저널 데이터를 시작할 시작 날짜 및 시간(경계값 포함)입니다. 이 값은 과거의 모든 날짜 및 시간일 수 있지만, 미래에는 사용할 수 없습니다.
- 현재 날짜 및 시간
-
스트림이 끝날 때를 지정하는 독점 날짜 및 시간입니다.
종료 시간이 없는 무제한 스트림을 생성하는 경우 스트림을 종료하려면 수동으로 취소해야 합니다. 지정된 종료 날짜 및 시간에 아직 도달하지 않은 유한한 활성 스트림을 취소할 수도 있습니다.
- 대상 Kinesis 데이터 스트림
-
스트림이 데이터 레코드를 쓰는 Kinesis Data Streams 대상 리소스입니다. Kinesis 데이터 스트림 생성 방법을 알아보려면 Amazon Kinesis Data Streams 개발자 안내서의 데이터 스트림 만들기 및 업데이트를 참조하세요.
중요
-
크로스 리전 및 크로스 계정 간 스트림은 지원되지 않습니다. 지정된 Kinesis 데이터 스트림은 동일해야 합니다. AWS 리전 계정을 원장으로 사용하세요.
-
Kinesis Data Streams의 레코드 집계는 기본적으로 활성화되어 있습니다. 이 옵션을 사용하면 단일 Kinesis Data Streams 레코드에 여러 데이터 레코드를 QLDB 게시하여 API 호출당 전송되는 레코드 수를 늘릴 수 있습니다.
레코드 집계는 레코드 처리에 중요한 영향을 미치며 스트림 소비자의 집계를 해제해야 합니다. 자세한 내용은 Amazon Kinesis Data Streams 개발자 안내서의 KPL주요 개념 및 소비자 집계 해제를 참조하십시오.
-
- IAM역할
-
Kinesis 데이터 QLDB 스트림에 대한 쓰기 권한을 위임할 수 있는 IAM 역할입니다. QLDB콘솔을 사용하여 이 역할을 자동으로 생성하거나 에서 IAM 수동으로 생성할 수 있습니다. 수동으로 생성하는 방법을 알아보려면 스트림 권한 섹션을 참조하세요.
저널 스트림을 요청할 QLDB 때 역할을 전달하려면 IAM 역할 리소스에서
iam:PassRole
작업을 수행할 권한이 있어야 합니다.
스트림 ARN
모든 QLDB 저널 스트림은 원장의 하위 리소스이며 Amazon 리소스 이름 () 으로 고유하게 식별됩니다. ARN 다음은 이름이 지정된 ARN 원장의 QLDB 스트림 ID가 인 스트림의 IiPT4brpZCqCq3f4MTHbYy
예입니다. exampleLedger
arn:aws:qldb:us-east-1:123456789012:stream/exampleLedger/IiPT4brpZCqCq3f4MTHbYy
다음 섹션에서는 를 사용하여 QLDB 스트림을 생성하고 취소하는 방법을 설명합니다. AWS Management Console.
AWS Management Console
QLDB콘솔을 사용하여 QLDB 스트림을 만들거나 취소하려면 다음 단계를 따르세요.
태그를 만들려면(콘솔)
에 로그인하십시오. AWS Management Console를 누르고 https://console.aws.amazon.com/qldb에서
아마존 QLDB 콘솔을 엽니다. -
탐색 창에서 스트림을 선택합니다.
-
Create QLDB Stream(Kinesis 스트림 생성)을 선택합니다.
-
QLDB스트림 생성 페이지에서 다음 설정을 입력합니다.
-
스트림 이름 - QLDB 스트림에 할당하려는 이름입니다.
-
원장 - 스트리밍하려는 저널 데이터가 있는 원장입니다.
-
시작 날짜 및 시간 - 저널 데이터 스트리밍을 시작할 협정 세계시 (UTC) 를 포함한 타임스탬프입니다. 이 타임스탬프의 기본값은 현재 날짜 및 시간입니다. 이 날짜는 미래일 수 없으며 종료 날짜 및 시간보다 이전이어야 합니다.
-
종료 날짜 및 시간 - (선택 사항) 스트림이 종료되는 시기를 지정하는 전용 타임스탬프 (UTC). 이 파라미터를 정의하지 않으면 취소하기 전까지 스트림이 무기한 실행됩니다.
-
대상 스트림 - 스트림이 데이터 레코드를 쓰는 Kinesis Data Streams 대상 리소스입니다. 다음 ARN 형식을 사용하세요.
arn:aws:kinesis:
aws-region
:account-id
:stream/kinesis-stream-name
다음은 예입니다.
arn:aws:kinesis:us-east-1:123456789012:stream/stream-for-qldb
크로스 리전 및 크로스 계정 간 스트림은 지원되지 않습니다. 지정된 Kinesis 데이터 스트림은 동일해야 합니다. AWS 리전 계정을 원장으로 사용하세요.
-
Kinesis Data Streams에서 레코드 집계 활성화 - (기본적으로 활성화됨) QLDB 단일 Kinesis Data Streams 레코드에 여러 데이터 레코드를 게시하여 호출당 전송되는 레코드 수를 늘릴 수 있습니다. API
-
서비스 액세스 - Kinesis 데이터 스트림에 QLDB 쓰기 권한을 부여하는 IAM 역할입니다.
저널 스트림을 요청할 QLDB 때 역할을 전달하려면 IAM 역할 리소스에서
iam:PassRole
작업을 수행할 권한이 있어야 합니다.-
새 서비스 역할 생성 및 사용 - 콘솔에서 지정된 Kinesis 데이터 스트림에 필요한 권한을 가진 새 역할을 생성하도록 합니다.
-
기존 서비스 역할 사용 — 이 역할을 수동으로 만드는 방법을 IAM 알아보려면 을 참조하십시오스트림 권한.
-
-
태그 - (선택 사항) 태그를 키 값 페어로 연결하여 메타데이터를 역할에 추가합니다. 태그를 구성하고 식별하는 데 도움이 되는 태그를 스트림에 추가할 수 있습니다. 자세한 내용은 Amazon QLDB 리소스에 태그 지정을 참조하십시오.
태그 추가를 선택한 다음 키-값 쌍을 적절히 입력합니다.
-
-
원하는 대로 설정되었으면 [Create QLDB stream] 을 선택합니다.
요청이 성공적으로 제출되면 콘솔이 기본 Streams 페이지로 돌아가고 스트림이 현재 상태와 함께 나열됩니다. QLDB
-
스트림이 활성화되면 Kinesis를 사용하여 소비자 애플리케이션으로 스트림 데이터를 처리합니다.
에서 Kinesis Data Streams 콘솔을 https://console.aws.amazon.com/kinesis/
엽니다.
스트림 데이터 레코드의 형식에 대한 자세한 내용은 QLDBKinesis에서 레코드 스트리밍 섹션을 참조하세요.
오류가 발생하는 스트림을 처리하는 방법을 알아보려면 손상된 스트림 처리 섹션을 참조하세요.
스트림을 취소하려면(콘솔)
취소한 후에는 QLDB 스트림을 다시 시작할 수 없습니다. Kinesis Data Streams로의 데이터 전송을 재개하려면 QLDB 새 스트림을 생성하면 됩니다.
https://console.aws.amazon.com/qldb에서
아마존 QLDB 콘솔을 엽니다. -
탐색 창에서 스트림을 선택합니다.
-
QLDB스트림 목록에서 취소하려는 활성 스트림을 선택합니다.
-
스트림 취소를 선택합니다. 제공된 상자에
cancel stream
를 입력하여 확인합니다.
QLDBAPI와 함께 사용하는 방법에 대한 자세한 내용은 AWS SDK또는 AWS CLI 저널 스트림을 만들고 관리하려면 을 참조하십시오스트림을 사용하여 개발하기 QLDB.
스트림 상태
QLDB스트림의 상태는 다음 중 하나일 수 있습니다.
-
ACTIVE
- 현재 스트리밍 중이거나 데이터 스트리밍을 위해 대기 중입니다(종료 시간이 없는 무제한 스트림용). -
COMPLETED
- 지정된 시간 범위 내에 모든 저널 블록 스트리밍을 성공적으로 마쳤습니다. 이것은 종료 상태입니다. -
CANCELED
- 지정된 종료 시간 전에 사용자 요청으로 종료되었으며, 더 이상 데이터를 스트리밍하지 않습니다. 이것은 종료 상태입니다. -
IMPAIRED
- 사용자 조치가 필요한 오류 때문에 Kinesis에 레코드를 쓸 수 없습니다. 이는 복구 가능한 터미널이 아닌 상태입니다.1시간 이내에 오류를 해결하면 스트림은 자동으로
ACTIVE
상태로 전환됩니다. 1시간 후에도 오류가 해결되지 않으면 스트림은 자동으로FAILED
상태로 전환됩니다. -
FAILED
- 오류로 인해 Kinesis에 레코드를 쓸 수 없으며 복구할 수 없는 터미널 상태입니다.
다음 다이어그램은 QLDB 스트림 리소스가 상태 간에 전환될 수 있는 방법을 보여줍니다.
터미널 스트림 만료
터미널 상태(CANCELED
, COMPLETED
, FAILED
)에 있는 스트림 리소스에는 7일의 보존 기간이 적용됩니다. 이 한도가 만료되면 해당 파일은 자동으로 영구 삭제됩니다.
터미널 스트림이 삭제되면 더 이상 QLDB 콘솔이나 를 사용하여 스트림 리소스를 설명하거나 QLDB API 나열할 수 없습니다.
손상된 스트림 처리
스트림에 오류가 발생하면 먼저 IMPAIRED
상태로 전환됩니다. QLDB최대 1시간 동안 IMPAIRED
스트림을 계속 재시도합니다.
1시간 이내에 오류를 해결하면 스트림은 자동으로 ACTIVE
상태로 전환됩니다. 1시간 후에도 오류가 해결되지 않으면 스트림은 자동으로 FAILED
상태로 전환됩니다.
손상되거나 장애가 발생한 스트림의 오류 원인은 다음 오류 원인 중 하나일 수 있습니다.
-
KINESIS_STREAM_NOT_FOUND
- 대상 Kinesis Data Streams 리소스가 존재하지 않습니다. 스트림 요청에서 제공한 Kinesis 데이터 스트림이 올바른지 확인하십시오QLDB. 그런 다음 Kinesis로 이동하여 지정한 데이터 스트림을 생성합니다. -
IAM_PERMISSION_REVOKED
— 지정된 Kinesis 데이터 스트림에 데이터 레코드를 쓸 수 있는 충분한 권한이 QLDB 없습니다. 지정된 Kinesis 데이터 스트림에 대해 다음 작업에 대한 QLDB 서비스 (qldb.amazonaws.com
) 권한을 부여하는 정책을 정의했는지 확인하십시오.-
kinesis:PutRecord
-
kinesis:PutRecords
-
kinesis:DescribeStream
-
kinesis:ListShards
-
손상된 스트림 모니터링
스트림이 손상되면 QLDB 콘솔에 스트림에 대한 세부 정보와 발생한 오류를 보여주는 배너가 표시됩니다. 또한 DescribeJournalKinesisStream
API 작업을 사용하여 스트림의 상태와 근본적인 오류 원인을 확인할 수 있습니다.
또한 CloudWatch Amazon을 사용하여 스트림의 IsImpaired
지표를 모니터링하는 경보를 생성할 수 있습니다. 를 통한 QLDB 지표 모니터링에 대한 자세한 내용은 CloudWatch 을 참조하십시오아마존 QLDB 규격 및 지표.