에서 스트림 생성 및 관리 QLDB - Amazon Quantum 원장 데이터베이스(Amazon QLDB)

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

에서 스트림 생성 및 관리 QLDB

중요

지원 종료 알림: 기존 고객은 07/31/2025에 지원이 종료될 QLDB 때까지 Amazon을 사용할 수 있습니다. 자세한 내용은 Amazon QLDB Ledger를 Amazon Aurora Postgre로 마이그레이션을SQL 참조하세요.

AmazonQLDB은 원장에서 Amazon Kinesis Data Streams로 저널 데이터 스트림을 생성하고 관리하는 API 작업을 제공합니다. QLDB 스트림은 저널에 커밋된 모든 문서 개정을 캡처하여 Kinesis 데이터 스트림으로 전송합니다.

AWS Management Console, AWS SDK또는 AWS Command Line Interface (AWS CLI)를 사용하여 저널 스트림을 생성할 수 있습니다. 또한 AWS CloudFormation 템플릿을 사용하여 스트림을 생성할 수도 있습니다. 자세한 내용은 AWS CloudFormation 사용 설명서AWS::QLDB::Stream 리소스를 참조하세요.

스트림 파라미터

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. 다음은 라는 IiPT4brpZCqCq3f4MTHbYy 원장의 QLDB 스트림 ID가 인 스트림ARN의 예입니다exampleLedger.

arn:aws:qldb:us-east-1:123456789012:stream/exampleLedger/IiPT4brpZCqCq3f4MTHbYy

다음 섹션에서는 를 사용하여 QLDB 스트림을 생성하고 취소하는 방법을 설명합니다 AWS Management Console.

AWS Management Console

QLDB 콘솔을 사용하여 QLDB 스트림을 생성하거나 취소하려면 다음 단계를 따르세요.

태그를 만들려면(콘솔)
  1. 에 로그인 AWS Management Console하고 https://console.aws.amazon.com/qldb 에서 Amazon QLDB 콘솔을 엽니다.

  2. 탐색 창에서 스트림을 선택합니다.

  3. Create QLDB Stream(Kinesis 스트림 생성)을 선택합니다.

  4. QLDB 스트림 생성 페이지에서 다음 설정을 입력합니다.

    • 스트림 이름 - QLDB 스트림에 할당하려는 이름입니다.

    • 원장 - 스트리밍하려는 저널 데이터가 있는 원장입니다.

    • 시작 날짜 및 시간 - 저널 데이터 스트리밍을 시작할 Coordinated Universal Time(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에서 레코드 집계 활성화 – (기본적으로 활성화됨) 단일 Kinesis Data Streams 레코드에 여러 데이터 레코드를 QLDB 게시하여 API 호출당 전송되는 레코드 수를 늘릴 수 있습니다.

    • 서비스 액세스 - Kinesis 데이터 스트림에 QLDB 쓰기 권한을 부여하는 IAM 역할입니다.

      저널 스트림을 요청할 QLDB 때 에 역할을 전달하려면 IAM 역할 리소스에 대한 iam:PassRole 작업을 수행할 권한이 있어야 합니다.

      • 새 서비스 역할 생성 및 사용 - 콘솔에서 지정된 Kinesis 데이터 스트림에 필요한 권한을 가진 새 역할을 생성하도록 합니다.

      • 기존 서비스 역할 사용 - 에서 이 역할을 수동으로 생성하는 방법을 알아보려면 섹션을 IAM참조하세요스트림 권한.

    • 태그 - (선택 사항) 태그를 키 값 페어로 연결하여 메타데이터를 역할에 추가합니다. 태그를 구성하고 식별하는 데 도움이 되는 태그를 스트림에 추가할 수 있습니다. 자세한 내용은 Amazon QLDB 리소스에 태그 지정을 참조하십시오.

      태그 추가를 선택한 다음 키-값 쌍을 적절히 입력합니다.

  5. 설정이 원하는 대로 설정되면 QLDB 스트림 생성 을 선택합니다.

    요청 제출에 성공하면 콘솔이 기본 스트림 페이지로 돌아가고 QLDB 스트림을 현재 상태로 나열합니다.

  6. 스트림이 활성화되면 Kinesis를 사용하여 소비자 애플리케이션으로 스트림 데이터를 처리합니다.

    에서 Kinesis Data Streams 콘솔을 엽니다https://console.aws.amazon.com/kinesis/.

스트림 데이터 레코드의 형식에 대한 자세한 내용은 QLDB Kinesis에서 레코드 스트리밍 섹션을 참조하세요.

오류가 발생하는 스트림을 처리하는 방법을 알아보려면 손상된 스트림 처리 섹션을 참조하세요.

스트림을 취소하려면(콘솔)

QLDB 스트림을 취소한 후에는 스트림을 다시 시작할 수 없습니다. Kinesis Data Streams로의 데이터 전송을 재개하려면 새 QLDB 스트림을 생성할 수 있습니다.

  1. https://console.aws.amazon.com/qldb 에서 Amazon QLDB 콘솔을 엽니다.

  2. 탐색 창에서 스트림을 선택합니다.

  3. QLDB 스트림 목록에서 취소할 활성 스트림을 선택합니다.

  4. 스트림 취소를 선택합니다. 제공된 상자에 cancel stream를 입력하여 확인합니다.

또는 와 QLDB API 함께 를 AWS SDK 사용하여 저널 스트림을 생성하고 관리하는 AWS CLI 방법에 대한 자세한 내용은 섹션을 참조하세요에서 스트림을 사용하여 개발 QLDB.

스트림 상태

QLDB 스트림의 상태는 다음 중 하나일 수 있습니다.

  • ACTIVE - 현재 스트리밍 중이거나 데이터 스트리밍을 위해 대기 중입니다(종료 시간이 없는 무제한 스트림용).

  • COMPLETED - 지정된 시간 범위 내에 모든 저널 블록 스트리밍을 성공적으로 마쳤습니다. 이것은 종료 상태입니다.

  • CANCELED - 지정된 종료 시간 전에 사용자 요청으로 종료되었으며, 더 이상 데이터를 스트리밍하지 않습니다. 이것은 종료 상태입니다.

  • IMPAIRED - 사용자 조치가 필요한 오류 때문에 Kinesis에 레코드를 쓸 수 없습니다. 이는 복구 가능한 터미널이 아닌 상태입니다.

    1시간 이내에 오류를 해결하면 스트림은 자동으로 ACTIVE 상태로 전환됩니다. 1시간 후에도 오류가 해결되지 않으면 스트림은 자동으로 FAILED 상태로 전환됩니다.

  • FAILED - 오류로 인해 Kinesis에 레코드를 쓸 수 없으며 복구할 수 없는 터미널 상태입니다.

다음 다이어그램은 QLDB 스트림 리소스가 상태 간에 전환하는 방법을 보여줍니다.

QLDB 스트림 리소스가 활성 상태, 취소 상태, 완료 상태, 손상 상태 및 실패 상태 간에 전환하는 방법을 보여주는 상태 다이어그램입니다.

터미널 스트림 만료

터미널 상태(CANCELED, COMPLETED, FAILED)에 있는 스트림 리소스에는 7일의 보존 기간이 적용됩니다. 이 한도가 만료되면 해당 파일은 자동으로 영구 삭제됩니다.

터미널 스트림이 삭제된 후에는 QLDB 콘솔 또는 를 사용하여 스트림 리소스를 설명하거나 나열QLDBAPI할 수 없습니다.

손상된 스트림 처리

스트림에 오류가 발생하면 먼저 IMPAIRED 상태로 전환됩니다. QLDB 는 최대 1시간 동안 IMPAIRED 스트림을 계속 재시도합니다.

1시간 이내에 오류를 해결하면 스트림은 자동으로 ACTIVE 상태로 전환됩니다. 1시간 후에도 오류가 해결되지 않으면 스트림은 자동으로 FAILED 상태로 전환됩니다.

손상되거나 장애가 발생한 스트림의 오류 원인은 다음 오류 원인 중 하나일 수 있습니다.

  • KINESIS_STREAM_NOT_FOUND - 대상 Kinesis Data Streams 리소스가 존재하지 않습니다. 스트림 요청에 제공한 Kinesis 데이터 QLDB 스트림이 올바른지 확인합니다. 그런 다음 Kinesis로 이동하여 지정한 데이터 스트림을 생성합니다.

  • IAM_PERMISSION_REVOKED - 지정된 Kinesis 데이터 스트림에 데이터 레코드를 쓸 수 있는 권한이 충분하지 QLDB 않습니다. 다음 작업에 대한 QLDB 서비스(qldb.amazonaws.com) 권한을 부여하는 지정된 Kinesis 데이터 스트림에 대한 정책을 정의했는지 확인합니다.

    • kinesis:PutRecord

    • kinesis:PutRecords

    • kinesis:DescribeStream

    • kinesis:ListShards

손상된 스트림 모니터링

스트림이 손상된 경우 QLDB 콘솔에 스트림에 대한 세부 정보와 발생한 오류를 보여주는 배너가 표시됩니다. DescribeJournalKinesisStream API 작업을 사용하여 스트림의 상태와 기본 오류 원인을 가져올 수도 있습니다.

또한 Amazon CloudWatch 을 사용하여 스트림의 IsImpaired 지표를 모니터링하는 경보를 생성할 수 있습니다. 를 사용한 QLDB 지표 모니터링에 대한 자세한 내용은 섹션을 CloudWatch참조하세요Amazon QLDB 차원 및 지표.