Amazon Keyspaces의 DDL 문(데이터 정의 언어) - Amazon Keyspaces(Apache Cassandra용)

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

Amazon Keyspaces의 DDL 문(데이터 정의 언어)

데이터 정의 언어(DDL)는 Amazon Keyspaces(Apache Cassandra용)에서 키스페이스 및 테이블과 같은 데이터 구조를 관리하는 데 사용하는 Cassandra 쿼리 언어(CQL) 문 집합입니다. DDL을 사용하여 이러한 데이터 구조를 생성하고, 생성 후 수정하고, 더 이상 사용하지 않을 때는 제거할 수 있습니다. Amazon Keyspaces는 DDL 작업을 비동기적으로 수행합니다. 비동기 작업이 완료되었는지 확인하는 방법에 대한 자세한 내용은 키스페이스 및 테이블의 비동기 생성 및 삭제 섹션을 참조하세요.

다음 DDL 문이 지원됩니다.

Keyspaces

키스페이스는 하나 이상의 애플리케이션과 관련된 관련 테이블을 그룹화합니다. 관계형 데이터베이스 관리 시스템(RDBMS)의 경우, 키스페이스는 데이터베이스, 테이블스페이스, 또는 유사한 구조와 거의 유사합니다.

참고

Apache Cassandra에서 키스페이스는 여러 스토리지 노드 간에 데이터가 복제되는 방식을 결정합니다. 하지만 Amazon Keyspaces는 완전 관리형 서비스이므로 스토리지 계층의 세부 정보를 자동으로 관리합니다. 따라서 Amazon Keyspaces의 키스페이스는 논리적 구조일 뿐이며 기본적인 물리적 스토리지와는 관련이 없습니다.

Amazon Keyspaces 키스페이스의 할당량 한도 및 제약 조건에 대한 자세한 내용은 Amazon Keyspaces(Apache Cassandra용)에 대한 할당량을 참조하세요.

키스페이스에 대한 설명

CREATE KEYSPACE

CREATE KEYSPACE 문을 사용하여 새 키스페이스를 생성합니다.

구문

create_keyspace_statement ::= CREATE KEYSPACE [ IF NOT EXISTS ] keyspace_name WITH options

위치:

  • keyspace_name은 생성할 키스페이스 이름입니다.

  • 옵션은 다음 중 하나 이상입니다.

    • REPLICATION — 키스페이스의 복제 전략을 나타내는 맵:

      • SingleRegionStrategy — 단일 리전 키스페이스용. (필수)

      • NetworkTopologyStrategy— 최소 2개에서 최대 AWS 리전 6개까지 지정합니다. 각 리전의 복제 계수는 3입니다. (선택 사항)

    • DURABLE_WRITES — Amazon Keyspace에 대한 쓰기는 항상 내구성이 뛰어나므로 이 옵션은 필수가 아닙니다. 하지만 지정하는 경우 값은 true이어야 합니다.

    • TAGS – 리소스를 생성할 때 연결할 키-값 페어 태그의 목록입니다. (선택 사항)

다음과 같이 키스페이스를 생성합니다.

CREATE KEYSPACE my_keyspace WITH REPLICATION = {'class': 'SingleRegionStrategy'} and TAGS ={'key1':'val1', 'key2':'val2'} ;

다중 리전 키스페이스를 만들려면 NetworkTopologyStrategy을 지정하고 AWS 리전를 최소 2개에서 최대 6개까지 포함합니다. 각 리전의 복제 계수는 3입니다.

CREATE KEYSPACE my_keyspace WITH REPLICATION = {'class':'NetworkTopologyStrategy', 'us-east-1':'3', 'ap-southeast-1':'3','eu-west-1':'3'};

ALTER KEYSPACE

ALTER KEYSPACE를 사용하여 키스페이스에 태그를 추가하거나 키스페이스에서 태그를 제거합니다.

구문

alter_keyspace_statement ::= ALTER KEYSPACE keyspace_name [[ADD | DROP] TAGS

위치:

  • keyspace_name는 변경할 키스페이스의 이름입니다.

  • TAGS — 키스페이스에서 추가하거나 제거할 키-값 페어 태그의 목록입니다.

다음과 같이 키스페이스를 변경합니다.

ALTER KEYSPACE "myGSGKeyspace" ADD TAGS {'key1':'val1', 'key2':'val2'};

DROP KEYSPACE

DROP KEYSPACE 문을 사용하여 테이블과 같은 모든 콘텐츠를 포함한 키스페이스를 제거합니다.

구문

drop_keyspace_statement ::= DROP KEYSPACE [ IF EXISTS ] keyspace_name

위치:

  • keyspace_name은 삭제할 키스페이스의 이름입니다.

DROP KEYSPACE "myGSGKeyspace";

테이블은 Amazon Keyspaces의 기본 데이터 구조입니다. 테이블의 데이터는 행과 열로 구성됩니다. 이러한 열의 하위 집합은 파티션 키 지정을 통해 파티셔닝(및 데이터 배치)을 결정하는 데 사용됩니다.

또 다른 열 집합을 클러스터링 열로 정의할 수 있습니다. 즉, 이러한 열 집합을 쿼리 실행 시 조건자로 사용할 수 있습니다.

기본적으로 온디맨드 처리량 용량을 갖춘 새 테이블이 생성됩니다. 새 테이블과 기존 테이블의 용량 모드를 변경할 수 있습니다. 읽기/쓰기 용량 처리량 모드에 대한 자세한 내용은 Amazon Keyspaces의 읽기/쓰기 용량 모드를 참조하세요.

프로비저닝 모드의 테이블의 경우 선택 사항을 구성할 수 있습니다. AUTOSCALING_SETTINGS Amazon Keyspaces 자동 크기 조정 및 사용 가능한 옵션에 대한 자세한 내용은 을 참조하십시오. 카산드라 쿼리 언어 (CQL) 를 사용한 Amazon Keyspaces 오토 스케일링 관리

Amazon Keyspaces 테이블의 할당량 한도 및 제약 조건에 대한 자세한 내용은 Amazon Keyspaces(Apache Cassandra용)에 대한 할당량을 참조하세요.

CREATE TABLE

CREATE TABLE 문을 사용하여 새 테이블을 만듭니다.

구문

create_table_statement ::= CREATE TABLE [ IF NOT EXISTS ] table_name '(' column_definition ( ',' column_definition )* [ ',' PRIMARY KEY '(' primary_key ')' ] ')' [ WITH table_options ] column_definition ::= column_name cql_type [ FROZEN ][ STATIC ][ PRIMARY KEY] primary_key ::= partition_key [ ',' clustering_columns ] partition_key ::= column_name | '(' column_name ( ',' column_name )* ')' clustering_columns ::= column_name ( ',' column_name )* table_options ::= [table_options] | CLUSTERING ORDER BY '(' clustering_order ')' [ AND table_options ] | options | CUSTOM_PROPERTIES | AUTOSCALING_SETTINGS | default_time_to_live | TAGS clustering_order ::= column_name (ASC | DESC) ( ',' column_name (ASC | DESC) )*

위치:

  • table_name은 생성할 테이블의 이름입니다.

  • column_definition은 다음 항목으로 구성됩니다.

    • column_name – 열의 이름입니다.

    • cql_type — An Amazon Keyspaces 데이터 유형(데이터 타입 참조)

    • FROZENcollection 유형의 열(예: LIST, SET, MAP)을 프로즌으로 지정합니다. 프로즌 수집은 변경할 수 없는 단일 값으로 직렬화되고 BLOB처럼 취급됩니다. 자세한 정보는 컬렉션 유형을 참조하세요.

    • STATIC — 이 열을 정적 열로 지정합니다. 정적 열에는 동일한 파티션의 모든 행이 공유하는 값이 저장됩니다.

    • PRIMARY KEY — 이 열을 테이블의 프라이머리 키로 지정합니다.

  • primary_key은 다음 항목으로 구성됩니다.

    • partition_key

    • clustering_columns

  • partition_key:

    • 파티션 키는 단일 열이거나 둘 이상의 열로 구성된 복합 값일 수 있습니다. 프라이머리 키의 파티션 키 부분은 필수 입력 항목이며 이에 따라 Amazon Keyspaces가 데이터를 저장하는 방식이 결정됩니다.

  • clustering_columns:

    • 프라이머리 키의 선택적 클러스터링 열 부분에 따라 각 파티션 내에서 데이터가 클러스터링되고 정렬되는 방식이 결정됩니다.

  • table_options은 다음 항목으로 구성됩니다.

    • CLUSTERING ORDER BY — 테이블의 기본 클러스터링 순서는 ASC(오름차순) 정렬 방향의 클러스터링 키로 구성됩니다. 기본 정렬 동작을 재정의하도록 지정합니다.

    • CUSTOM_PROPERTIES — Amazon Keyspace에만 적용되는 설정 맵.

      • capacity_mode: 테이블에 읽기/쓰기 처리량 용량 모드를 지정합니다. 옵션은 throughput_mode:PAY_PER_REQUESTthroughput_mode:PROVISIONED입니다. 프로비저닝된 용량 모드에는 read_capacity_unitswrite_capacity_units가 입력으로 필요합니다. 기본값은 throughput_mode:PAY_PER_REQUEST입니다.

      • client_side_timestamps: 테이블에 대해 클라이언트 측 타임스탬프를 활성화할지 여부를 지정합니다. 옵션은 {'status': 'enabled'}{'status': 'disabled'}입니다. 지정하지 않으면 기본값으로 status:disabled이 지정됩니다. 테이블에 대해 클라이언트 측 타임스탬프를 활성화한 후에는 이 설정을 비활성화할 수 없습니다.

      • encryption_specification: 저장된 암호화에 대한 암호화 옵션을 지정합니다. 지정하지 않으면 기본값으로 encryption_type:AWS_OWNED_KMS_KEY이 지정됩니다. 고객 관리 키 암호화 옵션을 사용하려면 Amazon 리소스 이름 (ARN) 형식의 AWS KMS 키를 입력해야 합니다. kms_key_identifier:ARN kms_key_identifier:ARN

      • point_in_time_recovery: 테이블에 대한 point-in-time 복원 활성화 또는 비활성화 여부를 지정합니다. 옵션은 status:enabledstatus:disabled입니다. 지정하지 않으면 기본값으로 status:disabled이 지정됩니다.

      • replica_updates: 특정 다중 지역 테이블의 설정을 지정합니다. AWS 리전다중 지역 테이블의 경우 테이블의 읽기 용량을 각각 다르게 구성할 수 있습니다. AWS 리전다음 파라미터를 구성하여 이 작업을 수행할 수 있습니다. 자세한 정보와 지침은 프로비저닝된 용량 모드 및 CQL (Auto Scaling) 을 사용하여 멀티 리전 테이블 생성 섹션을 참조하세요.

        • region— 다음과 같은 설정을 가진 테이블 복제본의. AWS 리전

          • read_capacity_units

      • TTL: 테이블에 대한 Time to Live 사용자 정의 설정을 활성화합니다. 활성화하려면 status:enabled을 사용합니다. 기본값은 status:disabled입니다. TTL이 활성화된 후에는 테이블에 대해 이 설정을 비활성화할 수 없습니다.

    • AUTOSCALING_SETTINGS프로비저닝 모드의 테이블에 대한 다음과 같은 선택적 설정을 포함합니다. 자세한 정보와 지침은 CQL을 사용하여 자동 크기 조정이 가능한 새 테이블을 생성합니다. 섹션을 참조하세요.

      • provisioned_write_capacity_autoscaling_update:

        • autoscaling_disabled— 쓰기 용량에 대한 Auto Scaling을 활성화하려면 값을 로 설정합니다false. 기본값은 true입니다. (선택 사항)

        • minimum_units— 테이블이 항상 지원할 준비가 되어 있어야 하는 최소 쓰기 처리량 수준입니다. 값은 1에서 계정의 초당 최대 처리량 할당량 (기본값 40,000) 사이여야 합니다.

        • maximum_units— 테이블이 항상 지원할 준비가 되어 있어야 하는 쓰기 처리량의 최대 수준입니다. 값은 1에서 계정의 초당 최대 처리량 할당량 (기본값 40,000) 사이여야 합니다.

        • scaling_policy— Amazon Keyspace는 대상 추적 정책을 지원합니다. Auto Scaling 타겟은 테이블의 프로비저닝된 쓰기 용량입니다.

          • target_tracking_scaling_policy_configuration— 대상 추적 정책을 정의하려면 대상 값을 정의해야 합니다. 대상 추적 및 휴지 기간에 대한 자세한 내용은 Application Auto Scaling 사용 설명서의 대상 추적 조정 정책을 참조하십시오.

            • target_value— 표의 목표 사용률. Amazon Keyspaces Auto Scaling은 사용 용량과 프로비저닝된 용량의 비율이 이 값 이하로 유지되도록 합니다. target_value를 백분율로 지정합니다. 20에서 90 사이의 두 배입니다. (필수)

            • scale_in_cooldown— 스케일링 활동 사이의 휴지 기간 (초) 으로, 다른 규모의 활동이 시작되기 전에 테이블을 안정화할 수 있습니다. 값을 제공하지 않는 경우 기본값은 0입니다. (선택 사항)

            • scale_out_cooldown— 스케일링 활동 사이의 휴지 기간 (초) 으로, 다른 스케일 아웃 활동이 시작되기 전에 테이블을 안정화할 수 있습니다. 값을 제공하지 않는 경우 기본값은 0입니다. (선택 사항)

            • disable_scale_in: A: 테이블에 대한 비활성화 또는 활성화 여부를 boolean scale-in 지정하는 A. 이 매개변수는 기본적으로 비활성화되어 있습니다. scale-in켜려면 boolean 값을 로 설정합니다FALSE. 즉, 사용자 대신 테이블의 용량이 자동으로 축소됩니다. (선택 사항)

      • provisioned_read_capacity_autoscaling_update:

        • autoscaling_disabled— 읽기 용량에 대해 Auto Scaling을 활성화하려면 값을 로 설정합니다false. 기본값은 true입니다. (선택 사항)

        • minimum_units— 테이블이 항상 지원할 준비가 되어 있어야 하는 최소 처리량 수준입니다. 값은 1에서 계정의 초당 최대 처리량 할당량 (기본값 40,000) 사이여야 합니다.

        • maximum_units— 테이블이 항상 지원할 준비가 되어 있어야 하는 최대 처리량 수준입니다. 값은 1에서 계정의 초당 최대 처리량 할당량 (기본값 40,000) 사이여야 합니다.

        • scaling_policy— Amazon Keyspace는 대상 추적 정책을 지원합니다. Auto Scaling 목표는 테이블의 프로비저닝된 읽기 용량입니다.

          • target_tracking_scaling_policy_configuration— 대상 추적 정책을 정의하려면 목표 값을 정의해야 합니다. 대상 추적 및 휴지 기간에 대한 자세한 내용은 Application Auto Scaling 사용 설명서의 대상 추적 조정 정책을 참조하십시오.

            • target_value— 표의 목표 사용률. Amazon Keyspaces Auto Scaling은 사용 용량과 프로비저닝된 용량의 비율이 이 값 이하로 유지되도록 합니다. target_value를 백분율로 지정합니다. 20에서 90 사이의 두 배입니다. (필수)

            • scale_in_cooldown— 스케일링 활동 사이의 휴지 기간 (초) 으로, 다른 규모의 활동이 시작되기 전에 테이블을 안정화할 수 있습니다. 값을 제공하지 않는 경우 기본값은 0입니다. (선택 사항)

            • scale_out_cooldown— 스케일링 활동 사이의 휴지 기간 (초) 으로, 다른 스케일 아웃 활동이 시작되기 전에 테이블을 안정화할 수 있습니다. 값을 제공하지 않는 경우 기본값은 0입니다. (선택 사항)

            • disable_scale_in: A: 테이블에 대한 비활성화 또는 활성화 여부를 boolean scale-in 지정하는 A. 이 매개변수는 기본적으로 비활성화되어 있습니다. scale-in켜려면 boolean 값을 로 설정합니다FALSE. 즉, 사용자 대신 테이블의 용량이 자동으로 축소됩니다. (선택 사항)

      • replica_updates: 다중 지역 테이블의 AWS 리전 특정 Auto Scaling 설정을 지정합니다. 다중 지역 테이블의 경우 테이블의 읽기 용량을 각각 다르게 구성할 수 있습니다. AWS 리전다음 파라미터를 구성하여 이 작업을 수행할 수 있습니다. 자세한 정보와 지침은 프로비저닝된 용량 모드 및 CQL (Auto Scaling) 을 사용하여 멀티 리전 테이블 생성 섹션을 참조하세요.

        • region— 다음과 같은 설정을 가진 테이블 복제본의. AWS 리전

          • provisioned_read_capacity_autoscaling_update

            • autoscaling_disabled— 테이블의 읽기 용량에 대해 Auto Scaling을 활성화하려면 값을 로 설정합니다false. 기본값은 true입니다. (선택 사항)

              참고

              다중 지역 테이블의 자동 크기 조정은 테이블의 모든 복제본에 대해 활성화하거나 비활성화해야 합니다.

            • minimum_units— 테이블이 항상 지원할 준비가 되어 있어야 하는 최소 읽기 처리량 수준. 값은 1에서 계정의 초당 최대 처리량 할당량 (기본값 40,000) 사이여야 합니다.

            • maximum_units— 테이블이 항상 지원할 준비가 되어 있어야 하는 읽기 처리량의 최대 수준입니다. 값은 1에서 계정의 초당 최대 처리량 할당량 (기본값 40,000) 사이여야 합니다.

            • scaling_policy— Amazon Keyspace는 대상 추적 정책을 지원합니다. Auto Scaling 목표는 테이블의 프로비저닝된 읽기 용량입니다.

              • target_tracking_scaling_policy_configuration— 대상 추적 정책을 정의하려면 목표 값을 정의해야 합니다. 대상 추적 및 휴지 기간에 대한 자세한 내용은 Application Auto Scaling 사용 설명서의 대상 추적 조정 정책을 참조하십시오.

                • target_value— 표의 목표 사용률. Amazon Keyspaces Auto Scaling은 사용된 읽기 용량과 프로비저닝된 읽기 용량의 비율이 이 값 이하로 유지되도록 합니다. target_value를 백분율로 지정합니다. 20에서 90 사이의 두 배입니다. (필수)

                • scale_in_cooldown— 스케일링 활동 사이의 휴지 기간 (초) 으로, 다른 규모의 활동이 시작되기 전에 테이블을 안정화할 수 있습니다. 값을 제공하지 않는 경우 기본값은 0입니다. (선택 사항)

                • scale_out_cooldown— 스케일링 활동 사이의 휴지 기간 (초) 으로, 다른 스케일 아웃 활동이 시작되기 전에 테이블을 안정화할 수 있습니다. 값을 제공하지 않는 경우 기본값은 0입니다. (선택 사항)

                • disable_scale_in: A: 테이블에 대한 비활성화 또는 활성화 여부를 boolean scale-in 지정하는 A. 이 매개변수는 기본적으로 비활성화되어 있습니다. scale-in켜려면 boolean 값을 로 설정합니다FALSE. 즉, 사용자 대신 테이블의 읽기 용량이 자동으로 축소됩니다. (선택 사항)

    • default_time_to_live — 테이블의 기본 Time to Live 설정(초 단위)입니다.

    • TAGS – 리소스를 생성할 때 연결할 키-값 페어 태그의 목록입니다.

  • clustering_order은 다음 항목으로 구성됩니다.

    • column_name – 열의 이름입니다.

    • ASC | DESC — 오름차순(ASC) 또는 내림차순(DESC) 순서 수정자를 설정합니다. 지정하지 않으면 기본 순서로 ASC가 지정됩니다.

CREATE TABLE IF NOT EXISTS "my_keyspace".my_table ( id text, name text, region text, division text, project text, role text, pay_scale int, vacation_hrs float, manager_id text, PRIMARY KEY (id,division)) WITH CUSTOM_PROPERTIES={ 'capacity_mode':{ 'throughput_mode': 'PROVISIONED', 'read_capacity_units': 10, 'write_capacity_units': 20 }, 'point_in_time_recovery':{'status': 'enabled'}, 'encryption_specification':{ 'encryption_type': 'CUSTOMER_MANAGED_KMS_KEY', 'kms_key_identifier':'arn:aws:kms:eu-west-1:5555555555555:key/11111111-1111-111-1111-111111111111' } } AND CLUSTERING ORDER BY (division ASC) AND TAGS={'key1':'val1', 'key2':'val2'} AND default_time_to_live = 3024000;

클러스터링 열을 사용하는 테이블의 경우 테이블 정의에서 클러스터링이 아닌 열을 고정으로 선언할 수 있습니다. 정적 열에 대한 자세한 내용은 Amazon Keyspaces의 정적 열을 참조하세요.

CREATE TABLE "my_keyspace".my_table ( id int, name text, region text, division text, project text STATIC, PRIMARY KEY (id,division));

ALTER TABLE

ALTER TABLE 문을 사용하여 새 열을 추가하거나, 태그를 추가하거나, 테이블의 사용자 지정 속성을 변경합니다.

구문

alter_table_statement ::= ALTER TABLE table_name [ ADD ( column_definition | column_definition_list) ] [[ADD | DROP] TAGS {'key1':'val1', 'key2':'val2'}] [ WITH table_options [ , ... ] ] ; column_definition ::= column_name cql_type

위치:

  • table_name는 변경할 테이블의 이름입니다.

  • column_definition는 추가할 열 이름 및 데이터 유형입니다.

  • column_definition_list는 괄호 안에 있는 쉼표로 구분된 열 목록입니다.

  • table_options은 다음 항목으로 구성됩니다.

    • CUSTOM_PROPERTIES— Amazon Keyspace와 관련된 설정 맵입니다.

      • capacity_mode: 테이블에 읽기/쓰기 처리량 용량 모드를 지정합니다. 옵션은 throughput_mode:PAY_PER_REQUESTthroughput_mode:PROVISIONED입니다. 프로비저닝된 용량 모드에는 read_capacity_unitswrite_capacity_units가 입력으로 필요합니다. 기본값은 throughput_mode:PAY_PER_REQUEST입니다.

      • client_side_timestamps: 테이블에 대해 클라이언트 측 타임스탬프를 활성화할지 여부를 지정합니다. 옵션은 {'status': 'enabled'}{'status': 'disabled'}입니다. 지정하지 않으면 기본값으로 status:disabled이 지정됩니다. 테이블에 대해 클라이언트 측 타임스탬프를 활성화한 후에는 이 설정을 비활성화할 수 없습니다.

      • encryption_specification: 저장된 암호화에 대한 암호화 옵션을 지정합니다. 옵션은 encryption_type:AWS_OWNED_KMS_KEYencryption_type:CUSTOMER_MANAGED_KMS_KEY입니다. 암호화 옵션 고객 관리형 키를 사용하려면 Amazon 리소스 이름(ARN) 형식의 AWS KMS 키(kms_key_identifier:ARN)를 입력해야 합니다.

      • point_in_time_recovery: 테이블에 대한 point-in-time 복원 활성화 또는 비활성화 여부를 지정합니다. 옵션은 status:enabledstatus:disabled입니다. 기본값은 status:disabled입니다.

      • replica_updates: 다중 지역 테이블의 AWS 리전 특정 설정을 지정합니다. 다중 지역 테이블의 경우 테이블의 읽기 용량을 각각 다르게 구성할 수 있습니다. AWS 리전다음 파라미터를 구성하여 이 작업을 수행할 수 있습니다. 자세한 정보와 지침은 멀티 리전 테이블 (CQL) 의 프로비저닝된 용량 및 Auto Scaling 설정 업데이트 섹션을 참조하세요.

        • region— 다음과 같은 설정을 가진 테이블 복제본의. AWS 리전

          • read_capacity_units

      • ttl: 테이블에 대한 Time to Live 사용자 정의 설정을 활성화합니다. 활성화하려면 status:enabled을 사용합니다. 기본값은 status:disabled입니다. ttl이 활성화된 후에는 테이블에 대해 이 설정을 비활성화할 수 없습니다.

    • AUTOSCALING_SETTINGS프로비저닝된 테이블에 대한 선택적 Auto Scaling 설정을 포함합니다. 구문 및 자세한 설명은 을 참조하십시오. CREATE TABLE 예를 보려면 CQL을 사용하여 기존 테이블의 자동 크기 조정을 활성화합니다.을 참조하세요.

  • default_time_to_live: 테이블의 기본 Time to Live 설정(초 단위)입니다.

  • TAGS는 리소스에 연결할 키-값 페어 태그의 목록입니다.

참고

ALTER TABLE을 사용하면 단일 사용자 지정 속성만 변경할 수 있습니다. 동일한 문에 ALTER TABLE 명령을 두 개 이상 조합할 수 없습니다.

예제

다음 문은 기존 테이블에 열을 추가하는 방법을 보여줍니다.

ALTER TABLE mykeyspace.mytable ADD (ID int);

이 문은 기존 테이블에 두 개의 수집 열을 추가하는 방법을 보여줍니다.

  • 중첩된 프로즌 수집이 포함된 프로즌 수집 열 col_frozen_list

  • 중첩된 프로즌 수집이 포함된 비프로즌 수집 열 col_map

ALTER TABLE my_Table ADD(col_frozen_list FROZEN<LIST<FROZEN<SET<TEXT>>>>, col_map MAP<INT, FROZEN<SET<INT>>>);

테이블의 용량 모드를 변경하고 읽기 및 쓰기 용량 단위를 지정하려면 다음 문을 사용할 수 있습니다.

ALTER TABLE mykeyspace.mytable WITH CUSTOM_PROPERTIES={'capacity_mode':{'throughput_mode': 'PROVISIONED', 'read_capacity_units': 10, 'write_capacity_units': 20}};

다음 문은 테이블의 고객 관리형 KMS 키를 지정합니다.

ALTER TABLE mykeyspace.mytable WITH CUSTOM_PROPERTIES={ 'encryption_specification':{ 'encryption_type': 'CUSTOMER_MANAGED_KMS_KEY', 'kms_key_identifier':'arn:aws:kms:eu-west-1:5555555555555:key/11111111-1111-111-1111-111111111111' } };

테이블 point-in-time 복원을 활성화하려면 다음 명령문을 사용할 수 있습니다.

ALTER TABLE mykeyspace.mytable WITH CUSTOM_PROPERTIES={'point_in_time_recovery': {'status': 'enabled'}};

테이블의 기본 Time to Live 값을 초 단위로 설정하려면 다음 문을 사용할 수 있습니다.

ALTER TABLE my_table WITH default_time_to_live = 2592000;

이 문을 사용하면 테이블의 Time to Live 설정을 사용자 지정할 수 있습니다.

ALTER TABLE mytable WITH CUSTOM_PROPERTIES={'ttl':{'status': 'enabled'}};

RESTORE TABLE

RESTORE TABLE 문을 사용하여 테이블을 특정 시점으로 복원합니다. 이 명령문을 사용하려면 테이블에서 point-in-time 복구를 활성화해야 합니다. 자세한 정보는 Amazon Keyspaces(Apache Cassandra용)에 대한 시점 복구을 참조하세요.

구문

restore_table_statement ::= RESTORE TABLE restored_table_name FROM TABLE source_table_name [ WITH table_options [ , ... ] ];

위치:

  • restored_table_name은 복원된 테이블의 이름입니다.

  • source_table_name은 소스 테이블의 이름입니다.

  • table_options은 다음 항목으로 구성됩니다.

    • restore_timestamp는 ISO 8601 형식의 복원 시점입니다. 지정하지 않을 경우 현재 타임스탬프가 사용됩니다.

    • CUSTOM_PROPERTIES— Amazon Keyspace와 관련된 설정 맵입니다.

      • capacity_mode: 테이블에 읽기/쓰기 처리량 용량 모드를 지정합니다. 옵션은 throughput_mode:PAY_PER_REQUESTthroughput_mode:PROVISIONED입니다. 프로비저닝된 용량 모드에는 read_capacity_unitswrite_capacity_units가 입력으로 필요합니다. 기본값은 소스 테이블의 현재 설정입니다.

      • encryption_specification: 저장된 암호화에 대한 암호화 옵션을 지정합니다. 옵션은 encryption_type:AWS_OWNED_KMS_KEYencryption_type:CUSTOMER_MANAGED_KMS_KEY입니다. 고객 관리 키 암호화 옵션을 사용하려면 Amazon 리소스 이름 (ARN) 형식의 AWS KMS 키를 입력해야 합니다. kms_key_identifier:ARN 고객 관리 키로 암호화된 테이블을 로 암호화된 테이블로 복원하려면 Amazon Keyspaces에서 원본 테이블의 키에 액세스할 수 있어야 합니다. AWS 소유 키 AWS KMS

      • point_in_time_recovery: 테이블에 대한 point-in-time 복원 활성화 또는 비활성화 여부를 지정합니다. 옵션은 status:enabledstatus:disabled입니다. 새 테이블을 생성할 때와 달리 복원된 테이블의 기본 상태는 설정이 소스 테이블에서 상속되기 때문에 status:enabled입니다. 복원된 테이블의 PITR을 비활성화하려면 status:disabled을 명시적으로 설정해야 합니다.

      • replica_updates: 다중 지역 테이블의 AWS 리전 특정 설정을 지정합니다. 다중 지역 테이블의 경우 테이블의 읽기 용량을 각각 다르게 구성할 수 있습니다. AWS 리전다음 파라미터를 구성하여 이 작업을 수행할 수 있습니다.

        • region— 다음과 같은 설정을 가진 테이블 복제본의. AWS 리전

          • read_capacity_units

    • AUTOSCALING_SETTINGS프로비저닝된 테이블에 대한 선택적 Auto Scaling 설정을 포함합니다. 자세한 구문 및 설명은 을 참조하십시오. CREATE TABLE

    • TAGS는 리소스에 연결할 키-값 페어 태그의 목록입니다.

참고

삭제된 테이블은 삭제 시점까지만 복원할 수 있습니다.

RESTORE TABLE mykeyspace.mytable_restored from table mykeyspace.my_table WITH restore_timestamp = '2020-06-30T04:05:00+0000' AND custom_properties = {'point_in_time_recovery':{'status':'disabled'}, 'capacity_mode':{'throughput_mode': 'PROVISIONED', 'read_capacity_units': 10, 'write_capacity_units': 20}} AND TAGS={'key1':'val1', 'key2':'val2'};

DROP TABLE

DROP TABLE 문을 사용하여 키스페이스에서 테이블을 제거합니다.

구문

drop_table_statement ::= DROP TABLE [ IF EXISTS ] table_name

위치:

  • IF EXISTS은 테이블이 존재하지 않는 경우 DROP TABLE의 실패를 방지합니다. (선택 사항)

  • table_name는 삭제할 테이블의 이름입니다.

DROP TABLE "myGSGKeyspace".employees_tbl;