MSK Serverless 클러스터에서 더 많은 파티션을 생성하고 데이터를 더 오래 유지합니다.

MSK Serverless 클러스터에서 더 많은 파티션을 생성하고 데이터를 더 오래 유지합니다.

소스 노드 : 1929683

4 월 2022에서, Apache Kafka 용 Amazon Managed Streaming (Amazon MSK)는 흥미로운 새 기능을 출시했습니다. Amazon MSK 서버리스. Amazon MSK는 Apache Kafka를 위한 완전관리형 서비스로, 개발자가 Apache Kafka를 기반으로 가용성이 높고 안전하며 확장 가능한 애플리케이션을 쉽게 구축하고 실행할 수 있도록 합니다. MSK Serverless를 사용하면 개발자는 Apache Kafka 클러스터를 프로비저닝, 구성 또는 최적화하지 않고도 애플리케이션을 실행할 수 있습니다. MSK 서버리스는 컴퓨팅 및 스토리지 리소스를 자동으로 프로비저닝하고 확장하므로 개발자는 온디맨드 스트리밍 용량 및 스토리지에 액세스할 수 있습니다.

2022년의 나머지 기간 동안 팀은 고객 피드백을 수집하고 고객 요구 사항에서 거꾸로 작업하여 MSK 서버리스를 훨씬 더 좋게 만드는 새로운 기능을 추가했습니다. 이 게시물에서는 이러한 개선 사항 중 일부에 대해 자세히 설명하고 사용 사례를 제공합니다.

클러스터의 파티션에 대한 더 높은 기본 할당량

Apache Kafka의 데이터는 다음에 기록됩니다. 주제라는 여러 로그 파일로 분할할 수 있습니다. 점수. 생산자 애플리케이션이 주제에 데이터를 쓰면 이러한 파티션 중 하나에 데이터가 추가됩니다. MSK Serverless는 클러스터당 최대 할당량 120개 파티션으로 출시되었습니다. 그러나 고객은 변경 데이터 캡처(CDC)에서 더 빠른 실시간 데이터 처리에 이르기까지 다양한 사용 사례를 위해 클러스터당 더 많은 파티션이 필요하다고 말했습니다.

2022년 2,400월에 MSK 서버리스 클러스터의 파티션에 대한 기본 할당량을 늘렸습니다. 증가된 할당량으로 클러스터당 최대 20개의 파티션을 생성할 수 있습니다. 클러스터당 보유할 수 있는 파티션 수가 2,400배 증가하여 클러스터당 더 많은 토픽을 생성하고 더 많은 애플리케이션이 병렬로 데이터를 소비하도록 할 수 있습니다. 세분화된 액세스 제어를 통해 더 나은 데이터 격리를 구현할 수도 있습니다. 더 많은 파티션은 데이터베이스의 각 테이블에 각각 고유한 파티션에 매핑되는 수백 개의 고유 키가 있는 CDC 사용 사례에 특히 유용합니다. 더 많은 파티션을 사용하면 MSK 서버리스를 사용하여 많은 테이블과 수백 개의 키가 있는 더 큰 데이터베이스의 변경 사항을 캡처할 수 있습니다. XNUMX개 제한은 리더 파티션에만 적용됩니다. MSK Serverless는 이 한도에 포함되지 않는 추가 비용 없이 기본적으로 각 파티션의 복제본 두 개를 생성합니다.

무제한 데이터 보존 기간

주제에 대해 생성하는 데이터는 Apache Kafka 소비자 API를 사용하여 데이터에 액세스해야 하는 기간에 따라 구성 가능한 기간 동안 Apache Kafka에 보관할 수 있습니다. 일반적으로 고객은 몇 시간에서 며칠에 이르는 짧은 기간 동안 데이터를 보존합니다. 이전에 MSK Serverless는 데이터 보존을 최대 24시간(1일)으로 제한했으며, ​​이는 가장 널리 사용되는 Apache Kafka 사용 사례에 충분합니다. 그러나 일부 사용 사례에서는 감사 목적으로 데이터를 유지하거나 애플리케이션 복구 SLA를 유지 관리하는 등 고객이 데이터를 더 오래 유지해야 합니다.

이제 데이터 보존 기간 할당량이 증가하여 MSK 서버리스 클러스터에서 필요한 기간 동안 데이터를 보존할 수 있습니다. 더 긴 데이터 보존은 소비자 애플리케이션이 오래된 데이터에 빠르게 액세스해야 하는 사용 사례에 특히 유용합니다. 예를 들어, 장애가 발생한 경우 애플리케이션은 주제의 시작부터 데이터에 액세스하여 상태를 재구성해야 할 수 있습니다. 이제 더 오랜 기간 동안 토픽에 데이터를 보관할 수 있으므로 Kafka의 소비자 API를 사용하여 이전 데이터에 액세스하여 애플리케이션의 상태를 복원하여 이러한 오류에서 더 쉽게 복구할 수 있습니다. 애플리케이션이 복구된 후 애플리케이션의 상태를 재설정하는 데 필요한 가장 빠른 타임스탬프부터 데이터 소비를 시작하도록 애플리케이션을 구성할 수 있습니다. 파티션당 최대 250GB의 데이터만 유지할 수 있습니다. 파티션 크기가 250GB에 도달하지 않는 한 원하는 만큼 오래 유지할 수 있습니다. 주어진 주제에 대해 더 많은 스토리지가 필요한 경우 더 많은 파티션을 만들 수 있습니다.

이러한 새 할당량은 MSK 서버리스를 사용할 수 있는 모든 지역에서 사용할 수 있습니다. 자세한 내용은 MSK 서버리스 Amazon MSK 요금 페이지 선택하고 지역 드롭 다운 메뉴.

다음과 같이 최대 파티션 할당량 증가를 요청할 수도 있습니다. 접촉 클러스터에 2,400개 이상의 파티션이 필요한 경우 AWS 지원. 더 많은 파티션과 더 긴 보존에 대한 할당량은 기존 클러스터와 새 클러스터 모두에 적용됩니다.

시작하기: 1,000개의 파티션과 7일 보존으로 주제 생성

이 섹션에서는 MSK Serverless에서 주제를 생성하고 파티션 수를 지정하고 보존 기간을 설정하는 방법을 보여줍니다.

전제 조건으로 MSK Serverless 클러스터와 Apache Kafka 클라이언트가 있어야 합니다. 인용하다 MSK 서버리스 클러스터 사용 시작하기 단계별 지침을 보려면

  1. 클라이언트 시스템에서 액세스 kafka_2.12-2.8.1/bin 다음을 실행하십시오 export 명령('my-endpoint'를 MSK Serverless 클러스터의 부트스트랩 서버 문자열로 교체):
    export BS=my-endpoint

  2. 다음 명령을 실행하여 라는 주제를 생성합니다. msk-sample-topic 1,000개의 파티션 및 7일 데이터 보존(604,800,000밀리초):
    <path-to-your-kafka-installation>/bin/kafka-topics.sh --bootstrap-server $BS --command-config client.properties --create --topic msk-sample-topic --partitions 1000 --config retention.ms=604800000

  3. (선택 사항) 위의 2단계에서 생성한 항목의 세부 정보를 보려면 다음 명령을 실행합니다.
    <path-to-your-kafka-installation>/bin/kafka-topics.sh --bootstrap-server $BS
    --command-config client.properties --topic msk-sample-topic --describe | head -n1

    다음과 같은 결과가 표시됩니다.

    Topic: msk-sample-topic TopicId: Ze76LY9EQuiH0xOIenx_HA PartitionCount: 1000ReplicationFactor: 3 Configs: min.insync.replicas=2,segment.bytes=134217728,retention.ms=604800000,message.format.version=2.8-IV2,unclean.leader.election.enable=false,retention.bytes=268435456000

정리

이 게시물에서 생성한 AWS 리소스에 요금이 부과되지 않도록 하려면 MSK Serverless 클러스터와 아마존 엘라스틱 컴퓨트 클라우드 (Amazon EC2) 클라이언트 머신용 인스턴스.

  1. Amazon MSK 콘솔에서 이 솔루션에 사용한 MSK Serverless 클러스터를 선택합니다.
  2. 왼쪽 메뉴에서 행위다음을 선택 ..
  3. Amazon EC2 콘솔에서 Apache Kafka 클라이언트 시스템용으로 생성한 인스턴스를 선택합니다.
  4. 왼쪽 메뉴에서 인스턴스 상태다음을 선택 인스턴스 종료.

결론

이 게시물은 1,000개의 파티션과 7일 보존으로 MSK 서버리스 클러스터 주제를 생성하는 방법을 보여주었습니다. 새로운 할당량 증가로 클러스터당 최대 2,400개의 파티션을 생성하고 필요한 기간 동안 데이터를 유지할 수 있습니다. 의견이나 의견이 있으시면 언제든지 의견에 남겨주세요.


저자,

우사마 나심 Amazon MSK의 수석 제품 관리자이며 MSK Serverless에 중점을 둡니다. 이전에는 AWS Lambda 및 Amazon Fresh에서 제품 관리 역할을 담당했습니다. 그는 고객에게 클라우드에서 실시간 애플리케이션을 구축할 수 있는 도구를 제공하는 데 열정적입니다. 일 외에는 언젠가는 자신이 세계 최고의 스쿼시 선수가 될 것이라는 망상에 계속 사로잡혀 있습니다.

타임 스탬프 :

더보기 AWS 빅 데이터