DDLdeclarações (linguagem de definição de dados) no Amazon Keyspaces - Amazon Keyspaces (para Apache Cassandra)

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

DDLdeclarações (linguagem de definição de dados) no Amazon Keyspaces

A linguagem de definição de dados (DDL) é o conjunto de instruções da Cassandra Query Language (CQL) que você usa para gerenciar estruturas de dados no Amazon Keyspaces (para Apache Cassandra), como keyspaces e tabelas. Você usa DDL para criar essas estruturas de dados, modificá-las depois de criadas e removê-las quando não estiverem mais em uso. O Amazon Keyspaces executa DDL operações de forma assíncrona. Para obter mais informações sobre como confirmar se uma operação assíncrona foi concluída, consulte Criação e exclusão assíncronas de espaços de chave e tabelas.

As seguintes DDL declarações são apoiadas:

Keyspaces

Um espaço de chaves agrupa tabelas relacionadas que são relevantes para um ou mais aplicativos. Em termos de um sistema de gerenciamento de banco de dados relacional (RDBMS), os espaços-chave são aproximadamente semelhantes aos bancos de dados, espaços de tabela ou construções similares.

nota

No Apache Cassandra, os espaços de chave determinam como os dados são replicados entre vários nós de armazenamento. No entanto, o Amazon Keyspaces é um serviço totalmente gerenciado: os detalhes de sua camada de armazenamento são gerenciados em seu nome. Por esse motivo, os espaços de chave no Amazon Keyspaces são apenas estruturas lógicas e não estão relacionados ao armazenamento físico subjacente.

Para informações sobre limites e restrições de cota para os espaços de chaves do Amazon Keyspaces, consulte Cotas para Amazon Keyspaces (para Apache Cassandra).

Declarações para espaços chave

CREATE KEYSPACE

Use a instrução CREATE KEYSPACE para criar um novo espaço de chaves.

Sintaxe

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

Em que:

  • keyspace_name é o nome do espaço de chaves a ser criado.

  • opções são uma ou mais das seguintes:

    • REPLICATION: um mapa que indica a estratégia de replicação para o espaço de chaves:

      • SingleRegionStrategy: para um espaço de chaves de região única. (Obrigatório)

      • NetworkTopologyStrategy— Especifique pelo menos dois e até seis Regiões da AWS. O fator de replicação para cada região é três. (Optional)

    • DURABLE_WRITES: as gravações no Amazon Keyspaces são sempre duráveis, portanto, essa opção não é necessária. No entanto, se especificado, o valor deve ser true.

    • TAGS: uma lista de tags de pares de chave-valor a serem anexadas ao recurso ao ser criado. (Optional)

Exemplo

Crie um espaço de chaves da seguinte forma.

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

Para criar um espaço de chave multirregional, especifique NetworkTopologyStrategy e inclua pelo menos dois e até seis Regiões da AWS. O fator de replicação para cada região é três.

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

ALTER KEYSPACE

Você pode usar ALTER KEYSPACE para adicionar ou remover tags de um keyspace.

Para adicionar ou remover tags, você pode usar a sintaxe a seguir.

Sintaxe

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

Em que:

  • keyspace_name é o nome do espaço de chaves a ser alterado.

  • TAGS: uma lista de tags de pares chave-valor a serem adicionadas ou removidas do espaço de chaves.

Exemplo

Altere um espaço de chaves da seguinte forma.

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

DROP KEYSPACE

Use a instrução DROP KEYSPACE para remover um espaço de chaves, incluindo todo o seu conteúdo, como tabelas.

Sintaxe

drop_keyspace_statement ::= DROP KEYSPACE [ IF EXISTS ] keyspace_name

Em que:

  • keyspace_name é o nome do espaço de chaves a ser eliminado.

Exemplo

DROP KEYSPACE "myGSGKeyspace";

Tabelas

As tabelas são as principais estruturas de dados no Amazon Keyspaces. Os dados em uma tabela são organizados em linhas e colunas. Um subconjunto dessas colunas é usado para determinar o particionamento (e, em última análise, o posicionamento dos dados) por meio da especificação de uma chave de partição.

Outro conjunto de colunas pode ser definido em colunas de cluster, o que significa que elas podem participar como predicados na execução da consulta.

Por padrão, novas tabelas são criadas com capacidade de throughput sob demanda. Você pode alterar o modo de capacidade de tabelas novas e existentes. Para obter mais informações sobre os modos de throughput da capacidade de leitura/gravação, consulte Configure os modos de capacidade de leitura/gravação no Amazon Keyspaces.

Para tabelas no modo provisionado, você pode configurar opcionais. AUTOSCALING_SETTINGS Para obter mais informações sobre o auto scaling do Amazon Keyspaces e as opções disponíveis, consulte. Configurar o escalonamento automático em uma tabela existente

Para informações sobre limites e restrições de cotas para tabelas do Amazon Keyspaces, consulte Cotas para Amazon Keyspaces (para Apache Cassandra).

CREATE TABLE

Use a instrução do CREATE TABLE para criar uma nova tabela.

Sintaxe

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) )*

Em que:

  • table_name é o nome da tabela a ser criada.

  • column_definition consiste no seguinte:

    • column_name: o nome da coluna.

    • cql_type: um tipo de dados do Amazon Keyspaces (consulteTipos de dados).

    • FROZEN: designa essa coluna do tipo collection (por exemplo, LIST, SET ouMAP) como congelada. Uma coleção congelada é serializada em um único valor imutável e tratada como a BLOB. Para obter mais informações, consulte Tipos de coleção.

    • STATIC: designa essa coluna como estática. As colunas estáticas armazenam valores que são compartilhados por todas as linhas na mesma partição.

    • PRIMARY KEY: designa essa coluna como a chave primária da tabela.

  • primary_key consiste no seguinte:

    • partition_key

    • clustering_columns

  • partition_key:

    • A chave de partição pode ser uma única coluna ou um valor composto formado por duas ou mais colunas. A parte da chave de partição da chave primária é necessária e determina como o Amazon Keyspaces armazena seus dados.

  • clustering_columns:

    • A parte opcional da coluna de cluster da sua chave primária determina como os dados são agrupados e classificados em cada partição.

  • table_options consiste no seguinte:

    • CLUSTERING ORDER BY— O padrão CLUSTERING ORDER em uma tabela é composto por suas chaves de agrupamento na direção de classificação ASC (ascendente). Especifique-o para substituir o comportamento de classificação padrão.

    • CUSTOM_PROPERTIES: um mapa de configurações específicas do Amazon Keyspaces.

      • capacity_mode: especifica o modo de capacidade de throughput de leitura/gravação da tabela. As opções são throughput_mode:PAY_PER_REQUEST e throughput_mode:PROVISIONED. O modo de capacidade provisionada requer read_capacity_units e write_capacity_units como entradas. O padrão é throughput_mode:PAY_PER_REQUEST.

      • client_side_timestamps: especifica se os carimbos de data/hora do lado do cliente estão habilitados ou desabilitados para a tabela. As opções são {'status': 'enabled'} e {'status': 'disabled'}. Se não especificado, o padrão será status:disabled. Depois que os carimbos de data/hora do lado do cliente forem habilitados para uma tabela, essa configuração não poderá ser desativada.

      • encryption_specification: especifica as opções de criptografia para criptografia em repouso. Se não especificado, o padrão será encryption_type:AWS_OWNED_KMS_KEY. A opção de criptografia chave gerenciada pelo cliente exige a AWS KMS chave no formato Amazon Resource Name (ARN) como entrada:kms_key_identifier:ARN:kms_key_identifier:ARN.

      • point_in_time_recovery: especifica se a point-in-time restauração está ativada ou desativada para a tabela. As opções são status:enabled e status:disabled. Se não especificado, o padrão será status:disabled.

      • replica_updates: especifica as configurações de uma tabela multirregional que são específicas de uma. Região da AWS Para uma tabela multirregional, você pode configurar a capacidade de leitura da tabela de forma diferente por Região da AWS. Você pode fazer isso configurando os seguintes parâmetros. Para ter mais informações e exemplos, consulte Crie uma tabela multirregional no modo provisionado com escalabilidade automática no Amazon Keyspaces.

        • region— A réplica Região da AWS da tabela com as seguintes configurações:

          • read_capacity_units

      • TTL: habilita as configurações personalizadas de tempo de vida para a tabela. Para habilitá-la, use status:enabled. O padrão é status:disabled. Depois de habilitado o TTL, você não poderá desabilitá-lo para a tabela.

    • AUTOSCALING_SETTINGSinclui as seguintes configurações opcionais para tabelas no modo provisionado. Para ter mais informações e exemplos, consulte Crie uma nova tabela com escalonamento automático.

      • provisioned_write_capacity_autoscaling_update:

        • autoscaling_disabled— Para ativar o escalonamento automático para capacidade de gravação, defina o valor como. false O padrão é true. (Optional)

        • minimum_units— O nível mínimo de taxa de transferência de gravação que a tabela deve estar sempre pronta para suportar. O valor deve estar entre 1 e a cota máxima de taxa de transferência por segundo da sua conta (40.000 por padrão).

        • maximum_units— O nível máximo de taxa de transferência de gravação que a tabela deve estar sempre pronta para suportar. O valor deve estar entre 1 e a cota máxima de taxa de transferência por segundo da sua conta (40.000 por padrão).

        • scaling_policy— O Amazon Keyspaces oferece suporte à política de rastreamento de alvos. A meta do auto scaling é a capacidade de gravação provisionada da tabela.

          • target_tracking_scaling_policy_configuration— Para definir a política de rastreamento de metas, você deve definir o valor alvo. Para obter mais informações sobre metas de rastreamento e períodos de espera, consulte Políticas de escalabilidade de rastreamento de metas no Guia do usuário do Application Auto Scaling.

            • target_value— A meta de taxa de utilização da tabela. O escalonamento automático do Amazon Keyspaces garante que a proporção entre a capacidade consumida e a capacidade provisionada permaneça igual ou próxima a esse valor. Você define target_value como uma porcentagem. Um duplo entre 20 e 90. (Obrigatório)

            • scale_in_cooldown— Um período de espera em segundos entre as atividades de escalonamento que permite que a tabela se estabilize antes que outra escala na atividade comece. Se nenhum valor for fornecido, o padrão será 0. (Optional)

            • scale_out_cooldown— Um período de espera em segundos entre as atividades de escalonamento que permite que a tabela se estabilize antes que outra atividade de escalabilidade comece. Se nenhum valor for fornecido, o padrão será 0. (Optional)

            • disable_scale_in: Um boolean que especifica se scale-in está desativado ou ativado para a tabela. Esse parâmetro está desativado por padrão. Para ativarscale-in, defina o boolean valor comoFALSE. Isso significa que a capacidade é reduzida automaticamente para uma tabela em seu nome. (Optional)

      • provisioned_read_capacity_autoscaling_update:

        • autoscaling_disabled— Para ativar o escalonamento automático da capacidade de leitura, defina o valor como. false O padrão é true. (Optional)

        • minimum_units— O nível mínimo de produtividade que a mesa deve estar sempre pronta para suportar. O valor deve estar entre 1 e a cota máxima de taxa de transferência por segundo da sua conta (40.000 por padrão).

        • maximum_units— O nível máximo de produtividade que a mesa deve estar sempre pronta para suportar. O valor deve estar entre 1 e a cota máxima de taxa de transferência por segundo da sua conta (40.000 por padrão).

        • scaling_policy— O Amazon Keyspaces oferece suporte à política de rastreamento de alvos. A meta do auto scaling é a capacidade de leitura provisionada da tabela.

          • target_tracking_scaling_policy_configuration— Para definir a política de rastreamento de metas, você deve definir o valor alvo. Para obter mais informações sobre metas de rastreamento e períodos de espera, consulte Políticas de escalabilidade de rastreamento de metas no Guia do usuário do Application Auto Scaling.

            • target_value— A meta de taxa de utilização da tabela. O escalonamento automático do Amazon Keyspaces garante que a proporção entre a capacidade consumida e a capacidade provisionada permaneça igual ou próxima a esse valor. Você define target_value como uma porcentagem. Um duplo entre 20 e 90. (Obrigatório)

            • scale_in_cooldown— Um período de espera em segundos entre as atividades de escalonamento que permite que a tabela se estabilize antes que outra escala na atividade comece. Se nenhum valor for fornecido, o padrão será 0. (Optional)

            • scale_out_cooldown— Um período de espera em segundos entre as atividades de escalonamento que permite que a tabela se estabilize antes que outra atividade de escalabilidade comece. Se nenhum valor for fornecido, o padrão será 0. (Optional)

            • disable_scale_in: Um boolean que especifica se scale-in está desativado ou ativado para a tabela. Esse parâmetro está desativado por padrão. Para ativarscale-in, defina o boolean valor comoFALSE. Isso significa que a capacidade é reduzida automaticamente para uma tabela em seu nome. (Optional)

      • replica_updates: especifica as configurações Região da AWS específicas de escalonamento automático de uma tabela multirregional. Para uma tabela multirregional, você pode configurar a capacidade de leitura da tabela de forma diferente por Região da AWS. Você pode fazer isso configurando os seguintes parâmetros. Para ter mais informações e exemplos, consulte Atualize a capacidade provisionada e as configurações de auto scaling para uma tabela multirregional no Amazon Keyspaces.

        • region— A réplica Região da AWS da tabela com as seguintes configurações:

          • provisioned_read_capacity_autoscaling_update

            • autoscaling_disabled— Para ativar o escalonamento automático da capacidade de leitura da tabela, defina o valor como. false O padrão é true. (Optional)

              nota

              O escalonamento automático de uma tabela multirregional precisa estar ativado ou desativado para todas as réplicas da tabela.

            • minimum_units— O nível mínimo de taxa de transferência de leitura que a tabela deve estar sempre pronta para suportar. O valor deve estar entre 1 e a cota máxima de taxa de transferência por segundo da sua conta (40.000 por padrão).

            • maximum_units— O nível máximo de taxa de transferência de leitura que a tabela deve estar sempre pronta para suportar. O valor deve estar entre 1 e a cota máxima de taxa de transferência por segundo da sua conta (40.000 por padrão).

            • scaling_policy— O Amazon Keyspaces oferece suporte à política de rastreamento de alvos. A meta do auto scaling é a capacidade de leitura provisionada da tabela.

              • target_tracking_scaling_policy_configuration— Para definir a política de rastreamento de metas, você deve definir o valor alvo. Para obter mais informações sobre metas de rastreamento e períodos de espera, consulte Políticas de escalabilidade de rastreamento de metas no Guia do usuário do Application Auto Scaling.

                • target_value— A meta de taxa de utilização da tabela. O escalonamento automático do Amazon Keyspaces garante que a proporção entre a capacidade de leitura consumida e a capacidade de leitura provisionada permaneça igual ou próxima a esse valor. Você define target_value como uma porcentagem. Um duplo entre 20 e 90. (Obrigatório)

                • scale_in_cooldown— Um período de espera em segundos entre as atividades de escalonamento que permite que a tabela se estabilize antes que outra escala na atividade comece. Se nenhum valor for fornecido, o padrão será 0. (Optional)

                • scale_out_cooldown— Um período de espera em segundos entre as atividades de escalonamento que permite que a tabela se estabilize antes que outra atividade de escalabilidade comece. Se nenhum valor for fornecido, o padrão será 0. (Optional)

                • disable_scale_in: Um boolean que especifica se scale-in está desativado ou ativado para a tabela. Esse parâmetro está desativado por padrão. Para ativarscale-in, defina o boolean valor comoFALSE. Isso significa que a capacidade de leitura é reduzida automaticamente para uma tabela em seu nome. (Optional)

    • default_time_to_live: a configuração padrão de tempo de vida em segundos para a tabela.

    • TAGS: uma lista de tags de pares de chave-valor a serem anexadas ao recurso ao ser criado.

  • clustering_order consiste no seguinte:

    • column_name: o nome da coluna.

    • ASC | DESC: define o modificador de ordem ascendente (ASC) ou descendente (DESC). Se não for especificado, o pedido padrão seráASC.

Exemplo

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;

Em uma tabela que usa colunas de cluster, as colunas sem cluster podem ser declaradas como estáticas na definição da tabela. Para obter mais informações sobre as colunas estáticas, consulte Estime o consumo de capacidade para colunas estáticas no Amazon Keyspaces.

Exemplo

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

ALTER TABLE

Use a instrução ALTER TABLE para adicionar novas colunas, adicionar tags ou alterar as propriedades personalizadas da tabela.

Sintaxe

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

Em que:

  • table_name é o nome da tabela a ser alterada.

  • column_definition é o nome da coluna e do tipo de dado a ser adicionado.

  • column_definition_list é uma lista de colunas separadas por vírgulas colocadas entre parênteses.

  • table_options consiste no seguinte:

    • CUSTOM_PROPERTIES: um mapa de configurações específicas para o Amazon Keyspaces.

      • capacity_mode: especifica o modo de capacidade de throughput de leitura/gravação da tabela. As opções são throughput_mode:PAY_PER_REQUEST e throughput_mode:PROVISIONED. O modo de capacidade provisionada requer read_capacity_units e write_capacity_units como entradas. O padrão é throughput_mode:PAY_PER_REQUEST.

      • client_side_timestamps: especifica se os carimbos de data/hora do lado do cliente estão habilitados ou desabilitados para a tabela. As opções são {'status': 'enabled'} e {'status': 'disabled'}. Se não especificado, o padrão será status:disabled. Depois que os carimbos de data/hora do lado do cliente forem habilitados para uma tabela, essa configuração não poderá ser desativada.

      • encryption_specification: especifica a opção de criptografia para criptografia em repouso. As opções são encryption_type:AWS_OWNED_KMS_KEY e encryption_type:CUSTOMER_MANAGED_KMS_KEY. A opção de criptografia chave gerenciada pelo cliente exige a AWS KMS chave no formato Amazon Resource Name (ARN) como entrada:kms_key_identifier:ARN.

      • point_in_time_recovery: especifica se a point-in-time restauração está ativada ou desativada para a tabela. As opções são status:enabled e status:disabled. O padrão é status:disabled.

      • replica_updates: especifica as configurações Região da AWS específicas de uma tabela multirregional. Para uma tabela multirregional, você pode configurar a capacidade de leitura da tabela de forma diferente por Região da AWS. Você pode fazer isso configurando os seguintes parâmetros. Para ter mais informações e exemplos, consulte Atualize a capacidade provisionada e as configurações de auto scaling para uma tabela multirregional no Amazon Keyspaces.

        • region— A réplica Região da AWS da tabela com as seguintes configurações:

          • read_capacity_units

      • ttl: habilita as configurações personalizadas de tempo de vida para a tabela. Para habilitá-la, use status:enabled. O padrão é status:disabled. Depois de habilitado o ttl, você não poderá desabilitá-lo para a tabela.

    • AUTOSCALING_SETTINGSinclui as configurações opcionais de auto scaling para tabelas provisionadas. Para obter a sintaxe e as descrições detalhadas, consulteCREATE TABLE. Para ver exemplos, consulte Configurar o escalonamento automático em uma tabela existente.

  • default_time_to_live: A configuração padrão de tempo de vida em segundos para a tabela.

  • TAGS é uma lista de tags de pares de chave-valor a serem anexadas ao recurso.

nota

Com ALTERTABLE, você só pode alterar uma única propriedade personalizada. Você não pode combinar mais de um ALTER TABLE comando na mesma instrução.

Exemplos

A instrução a seguir mostra como adicionar uma coluna a uma tabela existente.

ALTER TABLE mykeyspace.mytable ADD (ID int);

Essa instrução mostra como adicionar duas colunas de coleção a uma tabela existente:

  • Uma coluna de coleção congelada col_frozen_list que contém uma coleção congelada aninhada

  • Uma coluna de coleção não congelada col_map que contém uma coleção congelada aninhada

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

Para alterar o modo de capacidade de uma tabela e especificar unidades de capacidade de leitura e gravação, você pode usar a seguinte declaração.

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

A declaração a seguir especifica uma KMS chave gerenciada pelo cliente para a tabela.

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' } };

Para ativar a point-in-time restauração de uma tabela, você pode usar a instrução a seguir.

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

Para definir um valor padrão de tempo de vida em segundos para uma tabela, você pode usar a seguinte declaração.

ALTER TABLE my_table WITH default_time_to_live = 2592000;

Essa instrução habilita configurações personalizadas de tempo de vida para uma tabela.

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

RESTORE TABLE

Use a instrução do RESTORE TABLE ou restaure uma tabela para um ponto no tempo. Essa declaração exige que a point-in-time recuperação seja ativada em uma tabela. Para obter mais informações, consulte Faça backup e restaure dados com point-in-time recuperação para Amazon Keyspaces.

Sintaxe

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

Em que:

  • restored_table_name é o nome da tabela restaurada.

  • source_table_name é o nome da tabela de origem.

  • table_options consiste no seguinte:

    • restore_timestampé a hora do ponto de restauração no formato ISO 8601. Se não for especificado, o carimbo de data/hora atual será usado.

    • CUSTOM_PROPERTIES: um mapa de configurações específicas para o Amazon Keyspaces.

      • capacity_mode: especifica o modo de capacidade de throughput de leitura/gravação da tabela. As opções são throughput_mode:PAY_PER_REQUEST e throughput_mode:PROVISIONED. O modo de capacidade provisionada requer read_capacity_units e write_capacity_units como entradas. O padrão é a configuração atual da tabela de origem.

      • encryption_specification: especifica a opção de criptografia para criptografia em repouso. As opções são encryption_type:AWS_OWNED_KMS_KEY e encryption_type:CUSTOMER_MANAGED_KMS_KEY. A opção de criptografia chave gerenciada pelo cliente exige a AWS KMS chave no formato Amazon Resource Name (ARN) como entrada:kms_key_identifier:ARN. Para restaurar uma tabela criptografada com uma chave gerenciada pelo cliente para uma tabela criptografada com uma Chave pertencente à AWS, o Amazon Keyspaces requer acesso à AWS KMS chave da tabela de origem.

      • point_in_time_recovery: especifica se a point-in-time restauração está ativada ou desativada para a tabela. As opções são status:enabled e status:disabled. Diferentemente de quando você cria novas tabelas, o status padrão das tabelas restauradas é status:enabled porque a configuração é herdada da tabela de origem. PITRPara desativar as tabelas restauradas, você deve definir status:disabled explicitamente.

      • replica_updates: especifica as configurações Região da AWS específicas de uma tabela multirregional. Para uma tabela multirregional, você pode configurar a capacidade de leitura da tabela de forma diferente por Região da AWS. Você pode fazer isso configurando os seguintes parâmetros.

        • region— A réplica Região da AWS da tabela com as seguintes configurações:

          • read_capacity_units

    • AUTOSCALING_SETTINGSinclui as configurações opcionais de auto scaling para tabelas provisionadas. Para obter sintaxe e descrições detalhadas, consulteCREATE TABLE.

    • TAGS é uma lista de tags de pares de chave-valor a serem anexadas ao recurso.

nota

As tabelas excluídas só podem ser restauradas até o momento da exclusão.

Exemplo

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

Use a instrução DROP TABLE para remover uma tabela do espaço de chaves.

Sintaxe

drop_table_statement ::= DROP TABLE [ IF EXISTS ] table_name

Em que:

  • IF EXISTS evita que DROP TABLE falhe se a tabela não existir. (Optional)

  • table_name é o nome do banco de dados a ser descartado.

Exemplo

DROP TABLE "myGSGKeyspace".employees_tbl;