오프라인 마이그레이션 프로세스: 아파치 카산드라에서 Amazon Keyspaces로 - Amazon Keyspaces(Apache Cassandra용)

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

오프라인 마이그레이션 프로세스: 아파치 카산드라에서 Amazon Keyspaces로

오프라인 마이그레이션은 마이그레이션을 수행하기 위해 다운타임을 감수할 수 있는 경우에 적합합니다. 기업에서는 일반적으로 패치 적용, 대규모 릴리스를 위한 유지 관리 기간 또는 하드웨어 업그레이드 또는 주요 업그레이드를 위한 다운타임을 갖는 경우가 많습니다. 오프라인 마이그레이션은 이 창을 사용하여 데이터를 복사하고 애플리케이션 트래픽을 Apache Cassandra에서 Amazon Keyspace로 전환할 수 있습니다.

오프라인 마이그레이션은 Cassandra와 Amazon Keyspace에 동시에 통신할 필요가 없으므로 애플리케이션 수정 작업이 줄어듭니다. 또한 데이터 흐름이 일시 중지된 상태에서도 변형을 유지하지 않고도 정확한 상태를 복사할 수 있습니다.

이 예시에서는 다운타임을 최소화하기 위해 오프라인 마이그레이션 중에 Amazon Simple Storage Service (Amazon S3) 를 데이터 스테이징 영역으로 사용합니다. Spark Cassandra 커넥터를 사용하면 Amazon S3에 Parquet 형식으로 저장한 데이터를 Amazon Keyspaces 테이블로 자동으로 가져올 수 있습니다. AWS Glue. 다음 섹션에서는 프로세스에 대한 개괄적인 개요를 보여줍니다. Github에서 이 프로세스에 대한 코드 예제를 찾을 수 있습니다.

Amazon S3를 사용하여 아파치 카산드라에서 Amazon Keyspaces로 오프라인 마이그레이션 프로세스와 AWS Glue 다음이 필요합니다. AWS Glue 직업.

  1. CQL데이터를 추출 및 변환하여 Amazon S3 버킷에 저장하는 ETL 작업입니다.

  2. 버킷에서 Amazon Keyspaces로 데이터를 가져오는 두 번째 작업입니다.

  3. 세 번째 작업은 증분 데이터를 가져오는 것입니다.

Amazon Virtual Private Cloud에서 아마존에서 실행 중인 카산드라에서 EC2 Amazon Keyspaces로 오프라인 마이그레이션을 수행하는 방법
  1. 먼저 다음을 사용합니다. AWS Glue Cassandra에서 Parquet 형식으로 테이블 데이터를 내보내고 Amazon S3 버킷에 저장합니다. 다음을 실행해야 합니다. AWS Glue a를 사용하는 작업 AWS Glue 카산드라를 실행하는 Amazon EC2 인스턴스가 VPC 있는 커넥터입니다. 그런 다음 Amazon S3 프라이빗 엔드포인트를 사용하여 Amazon S3 버킷에 데이터를 저장할 수 있습니다.

    다음 다이어그램은 이러한 단계를 보여줍니다.

    를 사용하여 a에서 실행 중인 Amazon에서 EC2 Amazon S3 버킷으로 Apache 카산드라 데이터를 VPC 마이그레이션하기 AWS Glue.
  2. Amazon S3 버킷의 데이터를 셔플하여 데이터 무작위화를 개선하십시오. 데이터를 균등하게 가져오면 대상 테이블에 더 많은 트래픽을 분산시킬 수 있습니다.

    이 단계는 Amazon Keyspace에 데이터를 삽입할 때 핫 키 패턴을 피하기 위해 큰 파티션 (1000개 이상의 행이 있는 파티션) 이 있는 Cassandra에서 데이터를 내보낼 때 필요합니다. 핫 키 문제는 Amazon WriteThrottleEvents Keyspaces에서 발생하며 이로 인해 로드 시간이 늘어납니다.

    A AWS Glue 작업은 Amazon S3 버킷의 데이터를 셔플하여 다른 Amazon S3 버킷으로 반환합니다.
  3. 다른 것을 사용하십시오. AWS Glue Amazon S3 버킷에서 Amazon Keyspace로 데이터를 가져오는 작업입니다. Amazon S3 버킷의 셔플 데이터는 Parquet 형식으로 저장됩니다.

    The AWS Glue 가져오기 작업은 Amazon S3 버킷에서 셔플된 데이터를 가져와 Amazon Keyspaces 테이블로 이동합니다.