Amazon Keyspaces에서 파티셔너 사용하기 - Amazon Keyspaces(Apache Cassandra용)

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

Amazon Keyspaces에서 파티셔너 사용하기

Apache Cassandra에서 파티셔너는 클러스터에 저장되는 노드 데이터를 제어합니다. 파티셔너는 파티션 키의 해시된 값을 사용하여 숫자 토큰을 생성합니다. Cassandra는 이 토큰을 사용하여 노드 전체에 데이터를 분배합니다. 또한 클라이언트는 SELECT 작업 및 WHERE 절에서 이러한 토큰을 사용하여 읽기 및 쓰기 작업을 최적화할 수 있습니다. 예를 들어 클라이언트는 각 병렬 작업에서 쿼리할 고유한 토큰 범위를 지정하여 대형 테이블에서 병렬 쿼리를 효율적으로 수행할 수 있습니다.

Amazon Keyspaces는 세 가지 파티셔너를 제공합니다.

Murmur3Partitioner(기본값)

Apache Cassandra 호환 Murmur3Partitioner Murmur3Partitioner는 Amazon Keyspaces 및 Cassandra 1.2 이상 버전의 기본 Cassandra 파티셔너입니다.

RandomPartitioner

Apache Cassandra 호환 RandomPartitioner RandomPartitioner는 Cassandra 1.2 이전 버전의 기본 Cassandra 파티셔너입니다.

Keyspaces 기본 파티셔너

DefaultPartitionerRandomPartitioner와 동일한 token 함수 결과를 반환합니다.

파티셔너 설정은 계정 수준에서 리전별로 적용됩니다. 예를 들어 미국 동부(버지니아 북부)에서 파티셔너를 변경하면 이 리전의 동일한 계정에 있는 모든 테이블에 변경 내용이 적용됩니다. 파티셔너는 언제든지 안전하게 변경할 수 있습니다. 구성 변경을 완료하는 데 약 10분이 걸립니다. 파티셔너 설정을 변경할 때 Amazon Keyspaces 데이터를 다시 로드할 필요가 없습니다. 클라이언트는 다음 번에 연결할 때 새 파티셔너 설정을 자동으로 사용합니다.

AWS Management Console 또는 Cassandra 쿼리 언어(CQL)를 사용하여 파티셔너를 변경할 수 있습니다.

AWS Management Console
Amazon Keyspaces 콘솔을 사용하여 파티셔너를 변경하려면
  1. AWS Management Console에 로그인하고 Amazon Keyspaces 콘솔(https://console.aws.amazon.com/msk/home)을 엽니다.

  2. 탐색 창에서 구성을 선택합니다.

  3. 구성 페이지에서 파티셔너 편집으로 이동합니다.

  4. 사용 중인 Cassandra 버전과 호환되는 파티셔너를 선택합니다. 파티셔너 변경을 적용하는 데 약 10분이 걸립니다.

    참고

    구성 변경이 완료되면 새 파티셔너 사용 요청을 위해 Amazon Keyspaces와의 연결을 끊었다가 다시 연결해야 합니다.

Cassandra Query Language (CQL)
  1. 계정에 구성된 파티셔너를 보려면 다음 쿼리를 사용할 수 있습니다.

    SELECT partitioner from system.local;

    파티셔너가 변경되지 않은 경우 쿼리의 출력은 다음과 같습니다.

    partitioner -------------------------------------------- com.amazonaws.cassandra.DefaultPartitioner
  2. 파티셔너를 Murmur3 파티셔너로 업데이트하려면 다음 문을 사용할 수 있습니다.

    UPDATE system.local set partitioner='org.apache.cassandra.dht.Murmur3Partitioner' where key='local';
  3. 이 구성 변경을 완료하는 데 약 10분이 걸립니다. 파티셔너가 설정되었는지 확인하려면 SELECT 쿼리를 다시 실행하면 됩니다. 최종 읽기 일관성으로 인해 응답에 최근 완료된 파티셔너 변경의 결과가 반영되지 않을 수 있습니다. 잠시 후 SELECT 작업을 다시 반복하면 응답이 최신 데이터를 반환합니다.

    SELECT partitioner from system.local;
    참고

    요청이 새 파티셔너를 사용하도록 Amazon Keyspaces와의 연결을 끊었다가 다시 연결해야 합니다.