

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á.

# Solução de problemas do Amazon Keyspaces (para Apache Cassandra)
<a name="troubleshooting"></a>

Este guia aborda as etapas de solução de problemas para vários cenários ao trabalhar com o Amazon Keyspaces (para Apache Cassandra). Ele inclui informações sobre como resolver erros gerais, problemas de conexão, problemas de gerenciamento de capacidade e erros de linguagem de definição de dados (DDL).
+ **Erros gerais** 
  + Solução de problemas de exceções de alto nível como `NoNodeAvailableException`, `NoHostAvailableException` e `AllNodesFailedException`. 
  + Como isolar erros subjacentes das exceções do driver Java. 
  + Como implementar políticas de repetição e configurar conexões corretamente. 
+ **Problemas de conexão** 
  + Como resolver erros ao se conectar aos endpoints do Amazon Keyspaces usando drivers de cliente `cqlsh` ou Apache Cassandra. 
  + Como solucionar problemas de conexões de endpoints da VPC, conexões Cassandra-stress e erros de configuração do IAM.
  + Como lidar com perdas de conexão durante a importação de dados.
+ **Erros de gerenciamento de capacidade** 
  + Como reconhecer e resolver erros de capacidade insuficiente relacionados a tabelas, partições e conexões.
  + Monitoramento de métricas relevantes do Amazon Keyspaces no Amazon CloudWatch Logs. 
  + Como otimizar as conexões e o throughput para melhorar o desempenho.
+ **Erros de linguagem de definição de dados (DDL)** 
  + Como solucionar erros ao criar, acessar ou restaurar tabelas e espaços de chaves.
  + Como lidar com falhas relacionadas a configurações de tempo de vida (TTL) personalizadas, limites de coluna e exclusões de intervalo.
  + Considerações sobre workloads de exclusão pesada. 

Para obter orientações de solução de problemas específicas para o acesso ao IAM, consulte [Solução de problemas de identidade e acesso do Amazon Keyspaces](security_iam_troubleshoot.md). Para obter mais informações sobre as melhores práticas de segurança, consulte [Práticas recomendadas de segurança para o Amazon Keyspaces](best-practices-security.md).

**Topics**
+ [Erros gerais](troubleshooting.general.md)
+ [Erros de conexão](troubleshooting.connecting.md)
+ [Erros de gerenciamento de capacidade](troubleshooting.serverless.md)
+ [Erros de linguagem de definição de dados](troubleshooting.cql.md)

# Como solucionar problemas gerais no Amazon Keyspaces
<a name="troubleshooting.general"></a>

Recebendo erros gerais? Aqui estão alguns problemas comuns e como resolvê-los.

## Erros gerais
<a name="troubleshooting-general"></a>

Você está recebendo uma das seguintes exceções de alto nível que podem ocorrer devido a vários motivos diferentes.
+ `NoNodeAvailableException`
+ `NoHostAvailableException`
+ `AllNodesFailedException`

Essas exceções são geradas pelo driver do cliente e podem ocorrer quando você está estabelecendo a conexão de controle ou quando está executando read/write/prepare/execute/batch solicitações. 

Quando o erro ocorre ao estabelecer a conexão de controle, é um sinal de que todos os pontos de contato especificados em seu aplicativo estão inacessíveis. Quando o erro ocorre durante a execução de read/write/prepare/execute consultas, ele indica que todas as novas tentativas dessa solicitação foram esgotadas. Cada nova tentativa é tentada em um nó diferente quando você está usando a política de repetição padrão. 

### Como isolar o erro subjacente das exceções do driver Java de nível superior
<a name="troubleshooting-general-isolation"></a>

Esses erros gerais podem ser causados por problemas de conexão ou durante a execução de read/write/prepare/execute operações. Falhas transitórias devem ser esperadas em sistemas distribuídos e devem ser tratadas repetindo a solicitação. O driver Java não tenta novamente automaticamente quando são encontrados erros de conexão, portanto, é recomendável implementar a política de repetição ao estabelecer a conexão do driver em seu aplicativo. Para obter uma visão geral detalhada das melhores práticas de conexão, consulte [Otimize as conexões do driver do cliente para o ambiente sem servidor](connections.md).

Por padrão, o driver Java é definido como false `idempotence` para todas as solicitações, o que significa que o driver Java não repete automaticamente a read/write/prepare solicitação com falha. Para configurar `idempotence` para `true` e solicitar ao driver que repita solicitações com falha, você pode fazer isso de algumas maneiras diferentes. Aqui está um exemplo de como você pode definir a idempotência de forma programática para uma única solicitação em seu aplicativo Java.

```
Statement s = new SimpleStatement("SELECT * FROM my_table WHERE id = 1");
s.setIdempotent(true);
```

Ou é possível definir a idempotência padrão para todo o aplicativo Java de forma programática, conforme mostrado no exemplo a seguir.

```
// Make all statements idempotent by default:
cluster.getConfiguration().getQueryOptions().setDefaultIdempotence(true);
//Set the default idempotency to true in your Cassandra configuration
basic.request.default-idempotence = true
```

Outra recomendação é criar uma política de repetição no nível do aplicativo. Nesse caso, o aplicativo precisa capturar o `NoNodeAvailableException` e repetir a solicitação. Recomendamos 10 novas tentativas com recuo exponencial começando em 10 ms e trabalhando até 100 ms com um tempo total de 1 segundo para todas as tentativas.

Outra opção é aplicar a política de repetição exponencial do Amazon Keyspaces ao estabelecer a conexão do driver Java disponível no [Github](https://github.com/aws-samples/amazon-keyspaces-java-driver-helpers/blob/main/src/main/java/com/aws/ssa/keyspaces/retry/AmazonKeyspacesExponentialRetryPolicy.java).

Confirme se você estabeleceu conexões com mais de um nó ao usar a política de repetição padrão. Para isso, use a consulta a seguir no Amazon Keyspaces.

```
SELECT * FROM system.peers;
```

Se a resposta para essa consulta estiver vazia, isso indica que você está trabalhando com um único nó para o Amazon Keyspaces. Se você estiver usando a política de repetição padrão, não haverá novas tentativas porque a nova tentativa padrão sempre ocorre em um nó diferente. Para saber mais sobre como estabelecer conexões em endpoints da VPC, consulte [Como configurar conexões por meio de endpoints da VPC no Amazon Keyspaces](connections.md#connections.VPCendpoints).

Para ver um step-by-step tutorial que mostra como estabelecer uma conexão com o Amazon Keyspaces usando o driver Datastax 4.x Cassandra, consulte. [Step-by-step tutorial para se conectar ao Amazon Keyspaces usando o driver DataStax Java 4.x para Apache Cassandra e o plug-in de autenticação SigV4](using_java_driver.md#java_tutorial.SigV4)

# Como solucionar problemas de conexões no Amazon Keyspaces
<a name="troubleshooting.connecting"></a>

Está tendo problemas para se conectar? Aqui estão alguns problemas comuns e como resolvê-los.

## Erros na conexão com um endpoint do Amazon Keyspaces
<a name="troubleshooting-connecting"></a>

Falhas e erros de conexão podem resultar em mensagens de erro diferentes. A seção a seguir aborda os cenários mais comuns. 

**Topics**
+ [Não consigo me conectar ao Amazon Keyspaces com o cqlsh](#troubleshooting.connection.cqlsh)
+ [Não consigo me conectar ao Amazon Keyspaces usando os drivers do cliente Cassandra](#troubleshooting.connection.driver)

### Não consigo me conectar ao Amazon Keyspaces com o cqlsh
<a name="troubleshooting.connection.cqlsh"></a>

**Você está tentando se conectar a um endpoint do Amazon Keyspaces usando cqlsh e a conexão falha com um `Connection error`.**

Se você tentar se conectar a uma tabela do Amazon Keyspaces e o cqlsh não tiver sido configurado corretamente, a conexão falhará. A seção a seguir fornece exemplos dos problemas de configuração mais comuns que resultam em erros de conexão quando você tenta estabelecer uma conexão usando cqlsh.

**nota**  
Se você estiver tentando se conectar ao Amazon Keyspaces a partir de uma VPC, serão necessárias permissões adicionais. Para configurar com êxito uma conexão usando endpoints da VPC, siga as etapas no [Tutorial: Conecte-se ao Amazon Keyspaces usando uma interface VPC endpoint](vpc-endpoints-tutorial.md). 

**Você está tentando se conectar ao Amazon Keyspaces usando cqlsh, mas recebe um erro de conexão `timed out`.**

Esse pode ser o caso se você não tiver fornecido a porta correta, o que resultará no erro a seguir.

```
#  cqlsh cassandra.us-east-1.amazonaws.com 9140 -u "USERNAME" -p "PASSWORD" --ssl
Connection error: ('Unable to connect to any servers', {'3.234.248.199': error(None, "Tried connecting to [('3.234.248.199', 9140)]. Last error: timed out")})
```

Para resolver esse problema, verifique se você está usando a porta 9142 para a conexão.

**Você está tentando se conectar ao Amazon Keyspaces usando cqlsh, mas recebe um erro `Name or service not known`.**

Esse pode ser o caso se você usou um endpoint com ortografia incorreta ou que não existe. No exemplo a seguir, o nome do endpoint está escrito incorretamente.

```
#  cqlsh cassandra.us-east-1.amazon.com 9142 -u "USERNAME" -p "PASSWORD" --ssl
Traceback (most recent call last):
  File "/usr/bin/cqlsh.py", line 2458, in >module>
    main(*read_options(sys.argv[1:], os.environ))
  File "/usr/bin/cqlsh.py", line 2436, in main
    encoding=options.encoding)
  File "/usr/bin/cqlsh.py", line 484, in __init__
    load_balancing_policy=WhiteListRoundRobinPolicy([self.hostname]),
  File "/usr/share/cassandra/lib/cassandra-driver-internal-only-3.11.0-bb96859b.zip/cassandra-driver-3.11.0-bb96859b/cassandra/policies.py", line 417, in __init__
socket.gaierror: [Errno -2] Name or service not known
```

Para resolver esse problema ao usar endpoints públicos para se conectar, selecione um endpoint disponível a partir de [Endpoints de serviço para Amazon Keyspaces](programmatic.endpoints.md) e verifique se o nome do endpoint não tem erros. Se você estiver usando endpoints da VPC para se conectar, verifique se as informações do endpoint da VPC estão corretas em sua configuração cqlsh.

**Você está tentando se conectar ao Amazon Keyspaces usando cqlsh, mas recebe um erro `OperationTimedOut`.**

O Amazon Keyspaces exige que o SSL esteja habilitado para conexões para garantir uma segurança forte. O parâmetro SSL pode estar ausente se você receber o erro a seguir.

```
# cqlsh cassandra.us-east-1.amazonaws.com -u "USERNAME" -p "PASSWORD"
Connection error: ('Unable to connect to any servers', {'3.234.248.192': OperationTimedOut('errors=Timed out creating connection (5 seconds), last_host=None',)})
#
```

Para resolver esse problema, adicione o seguinte sinalizador ao comando de conexão cqlsh.

```
--ssl
```

**Você está tentando se conectar ao Amazon Keyspaces usando cqlsh e recebe um erro `SSL transport factory requires a valid certfile to be specified`.**

Nesse caso, o caminho para o SSL/TLS certificado está ausente, o que resulta no seguinte erro.

```
# cat .cassandra/cqlshrc
[connection]
port = 9142
factory = cqlshlib.ssl.ssl_transport_factory
#


# cqlsh cassandra.us-east-1.amazonaws.com -u "USERNAME" -p "PASSWORD" --ssl
Validation is enabled; SSL transport factory requires a valid certfile to be specified. Please provide path to the certfile in [ssl] section as 'certfile' option in /root/.cassandra/cqlshrc (or use [certfiles] section) or set SSL_CERTFILE environment variable.
#
```

Para resolver esse problema, adicione o caminho para o arquivo de certificado em seu computador. Para obter mais informações, consulte [Como configurar manualmente as conexões `cqlsh` para o TLS](programmatic.cqlsh.md#encrypt_using_tls).

```
certfile =  path_to_file/keyspaces-bundle.pem
```

**Você está tentando se conectar ao Amazon Keyspaces usando cqlsh, mas recebe um erro `No such file or directory`.**

Esse pode ser o caso se o caminho para o arquivo de certificado em seu computador estiver errado, o que resulta no erro a seguir.

```
# cat .cassandra/cqlshrc
[connection]
port = 9142
factory = cqlshlib.ssl.ssl_transport_factory

[ssl]
validate = true
certfile = /root/wrong_path/keyspaces-bundle.pem
#



# cqlsh cassandra.us-east-1.amazonaws.com -u "USERNAME" -p "PASSWORD" --ssl
Connection error: ('Unable to connect to any servers', {'3.234.248.192': IOError(2, 'No such file or directory')})
#
```

Para resolver esse problema, verifique se o caminho para o arquivo de certificado em seu computador está correto. Para obter mais informações, consulte [Como configurar manualmente as conexões `cqlsh` para o TLS](programmatic.cqlsh.md#encrypt_using_tls).

**Você está tentando se conectar ao Amazon Keyspaces usando cqlsh, mas recebe um erro `[X509] PEM lib`.**

Esse pode ser o caso se o `pem` arquivo do certificado SSL/TLS não for válido, o que resultará no seguinte erro.

```
# cqlsh cassandra.us-east-1.amazonaws.com -u "USERNAME" -p "PASSWORD" --ssl
Connection error: ('Unable to connect to any servers', {'3.234.248.241': error(185090057, u"Tried connecting to [('3.234.248.241', 9142)]. Last error: [X509] PEM lib (_ssl.c:3063)")})
#
```

Para resolver esse problema, verifique se você baixou os certificados digitais necessários. Para obter mais informações, consulte [Como configurar manualmente as conexões `cqlsh` para o TLS](programmatic.cqlsh.md#encrypt_using_tls).

**Você está tentando se conectar ao Amazon Keyspaces usando cqlsh, mas recebe um erro SSL `unknown`.**

Esse pode ser o caso se o `pem` arquivo do certificado SSL/TLS estiver vazio, o que resultará no seguinte erro.

```
# cqlsh cassandra.us-east-1.amazonaws.com -u "USERNAME" -p "PASSWORD" --ssl
Connection error: ('Unable to connect to any servers', {'3.234.248.220': error(0, u"Tried connecting to [('3.234.248.220', 9142)]. Last error: unknown error (_ssl.c:3063)")})
#
```

Para resolver esse problema, verifique se você baixou os certificados digitais necessários. Você pode confirmar isso usando as etapas do tópico a seguir[Como configurar manualmente as conexões `cqlsh` para o TLS](programmatic.cqlsh.md#encrypt_using_tls).

**Você está tentando se conectar ao Amazon Keyspaces usando cqlsh, mas recebe um erro `SSL: CERTIFICATE_VERIFY_FAILED`.**

Esse pode ser o caso se o arquivo do certificado SSL/TLS não puder ser verificado, o que resulta no erro a seguir.

```
Connection error: ('Unable to connect to any servers', {'3.234.248.223': error(1, u"Tried connecting to [('3.234.248.223', 9142)]. Last error: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:727)")})
```

Para resolver esse problema, verifique se você baixou os certificados digitais necessários. Você pode confirmar isso usando as etapas do tópico a seguir[Como configurar manualmente as conexões `cqlsh` para o TLS](programmatic.cqlsh.md#encrypt_using_tls).

**Você está tentando se conectar ao Amazon Keyspaces usando cqlsh, mas você está recebendo um erro`Last error: timed out`.**

Esse pode ser o caso se você não configurou uma regra de saída para o Amazon Keyspaces em seu grupo de segurança do Amazon EC2, o que resulta no erro a seguir.

```
# cqlsh cassandra.us-east-1.amazonaws.com 9142 -u  "USERNAME" -p "PASSWORD" --ssl
Connection error: ('Unable to connect to any servers', {'3.234.248.206': error(None, "Tried connecting to [('3.234.248.206', 9142)]. Last error: timed out")})
#
```

Para confirmar se esse problema é causado pela configuração da instância do Amazon EC2 ou não`cqlsh`, você pode tentar se conectar ao seu keyspace usando o AWS CLI, por exemplo, com o comando a seguir.

```
aws keyspaces list-tables --keyspace-name 'my_keyspace'
```

Se esse comando também atingir o tempo limite, a instância do Amazon EC2 não está configurada corretamente.

Para confirmar que você tem permissões suficientes para acessar o Amazon Keyspaces, você pode usar o AWS CloudShell para se conectar. `cqlsh` Se essas conexões forem estabelecidas, você precisará configurar a instância do Amazon EC2.

Para resolver esse problema, verifique se sua instância do Amazon EC2 uma regra de saída que permite o tráfego para o Amazon Keyspaces. Se esse não for o caso, você precisa criar um grupo de segurança da instância do EC2 e adicionar uma regra que permita tráfego de saída para os recursos do Amazon Keyspaces. Para atualizar a regra de saída para permitir o tráfego para o Amazon Keyspaces escolha **CQLSH/CASSANDRA** no menu suspenso **Tipo**. 

Depois de criar o grupo de segurança com a regra de tráfego de saída, você precisa adicioná-lo à instância. Selecione a instância e, em seguida, escolha **Ações**, **Segurança** e **Mudar grupos de segurança**. Adicione o grupo de segurança com a regra de saída, mas certifique-se de que o grupo padrão também permaneça disponível.

Para obter mais informações sobre como exibir e editar regras de saída do EC2, consulte [Adicionar regras a um grupo de segurança no Guia do usuário do Amazon EC2](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/working-with-security-groups.html#adding-security-group-rule).

**Você está tentando se conectar ao Amazon Keyspaces usando cqlsh, mas recebe um erro `Unauthorized`.**

Esse pode ser o caso se você não tiver permissões do Amazon Keyspaces na política de usuário do IAM, o que resulta no erro a seguir.

```
# cqlsh cassandra.us-east-1.amazonaws.com 9142 -u  "testuser-at-12345678910" -p "PASSWORD" --ssl
Connection error: ('Unable to connect to any servers', {'3.234.248.241': AuthenticationFailed('Failed to authenticate to 3.234.248.241: Error from server: code=2100 [Unauthorized] message="User arn:aws:iam::12345678910:user/testuser has no permissions."',)})
#
```

Para resolver esse problema, verifique se o usuário do IAM `testuser-at-12345678910` tem permissões para acessar o Amazon Keyspaces. Para obter exemplos de políticas do IAM que concedem acesso ao Amazon Keyspaces, consulte [Exemplos de políticas baseadas em identidade do Amazon Keyspaces](security_iam_id-based-policy-examples.md).

Para obter orientações de solução de problemas específicas para o acesso ao IAM, consulte [Solução de problemas de identidade e acesso do Amazon Keyspaces](security_iam_troubleshoot.md).

**Você está tentando se conectar ao Amazon Keyspaces usando cqlsh, mas recebe um erro `Bad credentials`.**

Esse pode ser o caso se o nome de usuário ou a senha estiverem incorretos, o que resultará no erro a seguir.

```
# cqlsh cassandra.us-east-1.amazonaws.com 9142 -u  "USERNAME" -p "PASSWORD" --ssl
Connection error: ('Unable to connect to any servers', {'3.234.248.248': AuthenticationFailed('Failed to authenticate to 3.234.248.248: Error from server: code=0100 [Bad credentials] message="Provided username USERNAME and/or password are incorrect"',)})
#
```

Para resolver esse problema, verifique se o *USERNAME* e *PASSWORD* em seu código corresponde ao nome de usuário e à senha que você obteve ao gerar [credenciais específicas do serviço](programmatic.credentials.ssc.md).

**Importante**  
Se você continuar vendo erros ao tentar se conectar com cqlsh, execute novamente o comando com a opção `--debug` e inclua a saída detalhada ao entrar em contato com Suporte.

### Não consigo me conectar ao Amazon Keyspaces usando os drivers do cliente Cassandra
<a name="troubleshooting.connection.driver"></a>

As seções a seguir mostram os erros mais comuns ao se conectar a um driver do cliente Cassandra.

**Você está tentando se conectar a uma tabela do Amazon Keyspaces usando o driver DataStax Java, mas você recebe um `NodeUnavailableException` erro.**

Se a conexão na qual a solicitação foi tentada for interrompida, isso resultará no erro a seguir.

```
[com.datastax.oss.driver.api.core.NodeUnavailableException: No connection was available to Node(endPoint=vpce-22ff22f2f22222fff-aa1bb234.cassandra.us-west-2.vpce.amazonaws.com/11.1.1111.222:9142, hostId=1a23456b-c77d-8888-9d99-146cb22d6ef6, hashCode=123ca4567)]
```

Para resolver esse problema, encontre o valor da pulsação e diminua-o para 30 segundos, se for maior que isso.

```
advanced.heartbeat.interval = 30 seconds
```

Em seguida, procure o tempo limite associado e verifique se o valor está definido para pelo menos 5 segundos.

```
advanced.connection.init-query-timeout = 5 seconds
```

**Você está tentando se conectar a uma tabela do Amazon Keyspaces usando um driver e o complemento SigV4, mas recebe um erro `AttributeError`.**

Se as credenciais não estiverem configuradas corretamente, isso resultará no erro a seguir.

```
cassandra.cluster.NoHostAvailable: (‘Unable to connect to any servers’,
 {‘44.234.22.154:9142’: AttributeError(“‘NoneType’ object has no attribute ‘access_key’“)})
```

Para resolver esse problema, verifique se você está passando as credenciais associadas ao seu usuário ou perfil do IAM ao usar o complemento SigV4. O complemento SigV4 exige as seguintes credenciais.
+ `AWS_ACCESS_KEY_ID`— Especifica uma chave de AWS acesso associada a um usuário ou função do IAM. 
+ `AWS_SECRET_ACCESS_KEY`: especifica a chave secreta associada à chave de acesso. Essencialmente, essa é a “senha” para a chave de acesso.

Para saber mais sobre as chaves de acesso e o complemento SigV4, consulte [Crie e configure AWS credenciais para o Amazon Keyspaces](access.credentials.md).

**Você está tentando se conectar a uma tabela do Amazon Keyspaces usando um driver, mas recebe um erro `PartialCredentialsError`.**

Se o `AWS_SECRET_ACCESS_KEY` estiver ausente, isso pode resultar no seguinte erro.

```
cassandra.cluster.NoHostAvailable: (‘Unable to connect to any servers’, {‘44.234.22.153:9142’: 
 PartialCredentialsError(‘Partial credentials found in config-file, missing: aws_secret_access_key’)})
```

Para resolver esse problema, verifique se você está transmitindo o `AWS_ACCESS_KEY_ID` e o `AWS_SECRET_ACCESS_KEY` ao usar o complemento SigV4. Para saber mais sobre as chaves de acesso e o complemento SigV4, consulte [Crie e configure AWS credenciais para o Amazon Keyspaces](access.credentials.md).

**Você está tentando se conectar a uma tabela do Amazon Keyspaces usando um driver, mas recebe um erro `Invalid signature`.**

Esse pode ser o caso se algum dos componentes necessários para a assinatura estiver errado ou não estiver definido corretamente para a sessão.
+ `AWS_ACCESS_KEY_ID`
+ `AWS_SECRET_ACCESS_KEY`
+ `AWS_DEFAULT_REGION`

Veja a seguir um exemplo de chaves de acesso inválidas.

```
cassandra.cluster.NoHostAvailable: (‘Unable to connect to any servers’, {‘11.234.11.234:9142’: 
 AuthenticationFailed(‘Failed to authenticate to 11.234.11.234:9142: Error from server: code=0100 
 [Bad credentials] message=“Authentication failure: Invalid signature”’)})
```

Para resolver esse problema, verifique se as chaves de acesso e as Região da AWS foram configuradas corretamente para que o plug-in SigV4 acesse o Amazon Keyspaces. Para saber mais sobre as chaves de acesso e o complemento SigV4, consulte [Crie e configure AWS credenciais para o Amazon Keyspaces](access.credentials.md).

#### Minha conexão de endpoint da VPC não funciona corretamente
<a name="troubleshooting.connection.vpce"></a>

**Você está tentando se conectar ao Amazon Keyspaces usando endpoints da VPC, mas está recebendo erros no mapa de tokens ou está tendo baixo throughput.**

Esse pode ser o caso se a conexão do endpoint da VPC não estiver configurada corretamente.

Para resolver esses problemas, verifique os detalhes de configuração a seguir. Para seguir um step-by-step tutorial para aprender como configurar uma conexão por meio de endpoints VPC de interface para Amazon Keyspaces, consulte. [Tutorial: Conecte-se ao Amazon Keyspaces usando uma interface VPC endpoint](vpc-endpoints-tutorial.md)

1. Confirme se a entidade IAM usada para se conectar ao Amazon Keyspaces tem read/write acesso à tabela de usuários e acesso de leitura às tabelas do sistema, conforme mostrado no exemplo a seguir.

   ```
   {
      "Version":"2012-10-17",		 	 	 
      "Statement":[
         {
            "Effect":"Allow",
            "Action":[
               "cassandra:Select",
               "cassandra:Modify"
            ],
            "Resource":[
               "arn:aws:cassandra:us-east-1:111122223333:/keyspace/mykeyspace/table/mytable",
               "arn:aws:cassandra:us-east-1:111122223333:/keyspace/system*"
            ]
         }
      ]
   }
   ```

1. Confirme se a entidade IAM usada para se conectar ao Amazon Keyspaces tem as permissões de leitura necessárias para acessar as informações do endpoint da VPC na sua instância do Amazon EC2, conforme mostrado no exemplo a seguir.

   ```
   {
      "Version":"2012-10-17",		 	 	 
      "Statement":[
         {
            "Sid":"ListVPCEndpoints",
            "Effect":"Allow",
            "Action":[
               "ec2:DescribeNetworkInterfaces",
               "ec2:DescribeVpcEndpoints"
            ],
            "Resource":"*"
         }
      ]
   }
   ```
**nota**  
As políticas gerenciadas `AmazonKeyspacesReadOnlyAccess_v2` e `AmazonKeyspacesFullAccess` incluem as permissões necessárias para permitir que o Amazon Keyspaces acesse a instância do Amazon EC2 para ler informações sobre os endpoints da VPC de interface disponíveis.

   Para saber mais sobre endpoints da VPC, consulte [Como usar o endpoint da VPC para o Amazon Keyspaces](vpc-endpoints.md#using-interface-vpc-endpoints)

1. Confirme se a configuração SSL do driver Java define a validação do nome do host como falsa, conforme mostrado neste exemplo.

   ```
   hostname-validation = false
   ```

   Para obter mais informações sobre a configuração do driver, consulte [Etapa 2: configurar o driver](using_java_driver.md#java_tutorial.driverconfiguration).

1. Para confirmar se o endpoint da VPC foi configurado corretamente, você pode executar a instrução a seguir de *dentro* da sua VPC.
**nota**  
Você não pode usar seu ambiente de desenvolvedor local ou o editor de CQL do Amazon Keyspaces para confirmar essa configuração, porque eles usam o endpoint público.

   ```
   SELECT peer FROM system.peers;
   ```

   A saída deve ser semelhante a este exemplo e retornar entre 2 a 6 nós com IPv4 endereços privados ao se conectar a partir de uma IPv4 rede, dependendo da configuração da VPC e AWS da região.

   ```
   peer
   ---------------
    192.0.2.0.15
    192.0.2.0.24
    192.0.2.0.13
    192.0.2.0.7
    192.0.2.0.8
   
   (5 rows)
   ```

#### Não consigo me conectar usando `cassandra-stress`
<a name="troubleshooting.connection.cassandra-stress"></a>

**Você está tentando se conectar ao Amazon Keyspaces usando o comando `cassandra-stress`, mas está recebendo um erro `SSL context`.**

Isso acontece se você tentar se conectar ao Amazon Keyspaces, mas não tiver a configuração correta do trustStore. O Amazon Keyspaces requer o uso do Transport Layer Security (TLS) para ajudar a proteger as conexões com os clientes.

Nesse caso, você verá o erro a seguir.

```
Error creating the initializing the SSL Context
```

Para resolver esse problema, siga as instruções para configurar um trustStore conforme mostrado neste tópico [Antes de começar](using_java_driver.md#using_java_driver.BeforeYouBegin).

Depois que o trustStore estiver configurado, você deverá ser capaz de se conectar com o comando a seguir.

```
./cassandra-stress user profile=./profile.yaml n=100 "ops(insert=1,select=1)" cl=LOCAL_QUORUM -node "cassandra.eu-north-1.amazonaws.com" -port native=9142 -transport ssl-alg="PKIX" truststore="./cassandra_truststore.jks" truststore-password="trustStore_pw" -mode native cql3 user="user_name" password="password"
```

#### Não consigo me conectar usando identidades IAM
<a name="troubleshooting.connection.IAM"></a>

**Você está tentando se conectar ao Amazon Keyspaces usando uma identidade IAM, mas está recebendo um erro `Unauthorized`.**

Isso acontece se você tentar se conectar a uma tabela do Amazon Keyspaces usando uma identidade do IAM (por exemplo, um usuário do IAM) sem implementar a política e fornecer primeiro ao usuário as permissões necessárias. 

Nesse caso, você verá o erro a seguir.

```
Connection error: ('Unable to connect to any servers', {'3.234.248.202': AuthenticationFailed('Failed to authenticate to 3.234.248.202: 
Error from server: code=2100 [Unauthorized] message="User arn:aws:iam::1234567890123:user/testuser has no permissions."',)})
```

Para resolver esse problema, verifique as permissões do usuário do IAM. Para se conectar a um driver padrão, o usuário deve ter pelo menos `SELECT` acesso às tabelas do sistema, pois a maioria dos drivers lê o sistema keyspaces/tables quando estabelece a conexão. 

Para obter exemplos de políticas do IAM que concedem acesso ao sistema Amazon Keyspaces e às tabelas de usuários, consulte [Como acessar as tabelas do Amazon Keyspaces](security_iam_id-based-policy-examples.md#security_iam_id-based-policy-examples-access-one-table).

Para revisar a seção de solução de problemas específica do IAM, consulte [Solução de problemas de identidade e acesso do Amazon Keyspaces](security_iam_troubleshoot.md).

#### Estou tentando importar dados com cqlsh e a conexão com minha tabela Amazon Keyspaces foi perdida
<a name="troubleshooting.connection.import"></a>

**Você está tentando se conectar ao Amazon Keyspaces usando cqlsh, mas está recebendo erros de conexão.**

A conexão com o Amazon Keyspaces falha depois que o cliente cqlsh recebe três erros consecutivos de qualquer tipo do servidor. O cliente cqlsh falha com a seguinte mensagem. 

```
Failed to import 1 rows: NoHostAvailable - , will retry later, attempt 3 of 100
```

Para resolver esse erro, você precisa garantir que os dados a serem importados correspondam ao esquema da tabela no Amazon Keyspaces. Verifique se há erros de análise no arquivo de importação. Você pode tentar usar uma única linha de dados usando uma instrução INSERT para isolar o erro.

O cliente tenta automaticamente restabelecer a conexão.

# Como solucionar erros de gerenciamento de capacidade no Amazon Keyspaces
<a name="troubleshooting.serverless"></a>

Está tendo problemas com a capacidade de tecnologia sem servidor? Aqui estão alguns problemas comuns e como resolvê-los.

## Erros de capacidade de tecnologia sem servidor
<a name="troubleshooting-serverless"></a>

Esta seção descreve como reconhecer erros relacionados ao gerenciamento de capacidade de tecnologia sem servidor e como resolvê-los. Por exemplo, você poderá observar eventos de capacidade insuficiente quando seu aplicativo exceder a capacidade de throughput provisionada. 

Como o Apache Cassandra é um software baseado em cluster projetado para ser executado em uma frota de nós, ele não tem mensagens de exceção relacionadas a recursos de tecnologia sem servidor, como capacidade de throughput. A maioria dos drivers só entende os códigos de erro que estão disponíveis no Apache Cassandra, então o Amazon Keyspaces usa esse mesmo conjunto de códigos de erro para manter a compatibilidade. 

Para mapear os erros do Cassandra para os eventos de capacidade subjacentes, você pode usar CloudWatch a Amazon para monitorar as métricas relevantes do Amazon Keyspaces. Eventos de capacidade insuficiente que resultam em erros do lado do cliente podem ser categorizados nesses três grupos com base no recurso que está causando o evento: 
+ **Tabela**: se você escolher o modo de capacidade **Provisionada** para uma tabela e seu aplicativo exceder o throughput provisionado, você poderá observar erros de capacidade insuficiente. Para obter mais informações, consulte [Configurar modos de read/write capacidade no Amazon Keyspaces](ReadWriteCapacityMode.md).
+ **Partição** — Você pode enfrentar eventos de capacidade insuficiente se o tráfego em uma determinada partição exceder RCUs 3.000 ou 1.000. WCUs Recomendamos distribuir o tráfego uniformemente entre partições como uma prática recomendada. Para obter mais informações, consulte [Melhores práticas de modelagem de dados: recomendações para projetar modelos de dados](data-modeling.md).
+ **Conexão**: você pode ter um throughput insuficiente se exceder a cota para o número máximo de operações por segundo, por conexão. Para aumentar o throughput, você pode aumentar o número de conexões padrão ao configurar a conexão com o driver.

  Saiba como configurar conexões para o Amazon Keyspaces, consulte [Como configurar conexões no Amazon Keyspaces](connections.md#connections.howtoconfigure). Para obter mais informações sobre como otimizar conexões nos endpoints da VPC, consulte [Como configurar conexões por meio de endpoints da VPC no Amazon Keyspaces](connections.md#connections.VPCendpoints).

Para determinar qual recurso está causando o evento de capacidade insuficiente que está retornando o erro do lado do cliente, você pode verificar o painel no console do Amazon Keyspaces. Por padrão, o console fornece uma visão agregada das CloudWatch métricas mais comuns relacionadas à capacidade e ao tráfego na seção **Capacidade e métricas relacionadas** na guia **Capacidade** da tabela. 

Para criar seu próprio painel usando a Amazon CloudWatch, verifique as seguintes métricas do Amazon Keyspaces. 
+ `PerConnectionRequestRateExceeded`: solicitações para o Amazon Keyspaces que excedam a cota de taxa de solicitação por conexão. Cada conexão do cliente com o Amazon Keyspaces pode suportar até 3 mil solicitações de CQL por segundo. Você pode realizar mais de 3 mil solicitações por segundo criando várias conexões.
+ `ReadThrottleEvents`: solicitações para Amazon Keyspaces que excedem a capacidade de leitura de uma tabela.
+ `StoragePartitionThroughputCapacityExceeded`: solicitações para uma partição de armazenamento do Amazon Keyspaces que excedam a capacidade de throughput da partição. As partições de armazenamento do Amazon Keyspaces podem suportar até 1.000 WCU/WRU por segundo e 3.000 RCU/RRU por segundo. Para mitigar essas exceções, recomendamos que você revise seu modelo de dados para distribuir o read/write tráfego em mais partições.
+ `WriteThrottleEvents`: solicitações para Amazon Keyspaces que excedem a capacidade de gravação de uma tabela.

Para saber mais sobre CloudWatch, consulte[Monitorando o Amazon Keyspaces com a Amazon CloudWatch](monitoring-cloudwatch.md). Para obter uma lista de todas as CloudWatch métricas disponíveis para o Amazon Keyspaces, consulte. [Métricas e dimensões do Amazon Keyspaces](metrics-dimensions.md) 

**nota**  
[Para começar com um painel personalizado que mostra todas as métricas comumente observadas para o Amazon Keyspaces, você pode usar um CloudWatch modelo pré-criado disponível GitHub no AWS repositório de amostras.](https://github.com/aws-samples/amazon-keyspaces-cloudwatch-cloudformation-templates)

**Topics**
+ [Erros no lado do cliente,](#troubleshooting.serverless.clientside)
+ [Erros de tempo limite de gravação durante a importação de dados](#troubleshooting.serverless.writetimeout)
+ [Tamanho de armazenamento de espaço de chaves ou tabela](#troubleshooting.serverless.storagesize)

### Estou recebendo erros de capacidade insuficientes `NoHostAvailable` do driver do meu cliente
<a name="troubleshooting.serverless.clientside"></a>

**Você está vendo exceções `Read_Timeout` ou `Write_Timeout` para uma tabela.**

Tentar repetidamente gravar ou ler uma tabela do Amazon Keyspaces com capacidade insuficiente pode resultar em erros do lado do cliente que são específicos do driver.

Use CloudWatch para monitorar suas métricas de taxa de transferência provisionadas e reais e eventos de capacidade insuficientes para a tabela. Por exemplo, uma solicitação de leitura que não tem capacidade de throughput suficiente falha com uma exceção `Read_Timeout` e é publicada na métrica `ReadThrottleEvents`. Uma solicitação de gravação que não tem capacidade de throughput suficiente falha com uma exceção `Write_Timeout` e é publicada na métrica `WriteThrottleEvents`. Para ter mais informações sobre essas métricas, consulte [Métricas e dimensões do Amazon Keyspaces](metrics-dimensions.md).

Para resolver esses problemas, considere uma das opções a seguir.
+ Aumente o *throughput provisionado* para a tabela, que é a quantidade máxima de capacidade de throughput que um aplicativo pode consumir. Para obter mais informações, consulte [Unidades de capacidade de leitura e unidades de capacidade de gravação](ReadWriteCapacityMode.Provisioned.md#ReadWriteCapacityMode.Provisioned.Units).
+ Permita que o serviço gerencie a capacidade de throughput em seu nome com o escalonamento automático. Para obter mais informações, consulte [Gerencia automaticamente a capacidade de throughput com o ajuste de escala automático do Amazon Keyspaces](autoscaling.md).
+ Escolha o modo de capacidade **sob demanda** para a tabela. Para obter mais informações, consulte [Configurar o modo de capacidade sob demanda](ReadWriteCapacityMode.OnDemand.md).

Se você precisar aumentar a cota de capacidade padrão da sua conta, consulte [Cotas para Amazon Keyspaces (para Apache Cassandra)](quotas.md).

**Você está vendo erros relacionados à capacidade excedida da partição.**

Quando você vê o erro `StoragePartitionThroughputCapacityExceeded`, a capacidade da partição é temporariamente excedida. Isso pode ser controlado automaticamente pela capacidade adaptativa ou pela capacidade sob demanda. Recomendamos revisar seu modelo de dados para distribuir o read/write tráfego em mais partições para mitigar esses erros. As partições de armazenamento do Amazon Keyspaces podem suportar até 1.000 WCU/WRU por segundo e 3.000 RCU/RRU por segundo. Para saber mais sobre como melhorar seu modelo de dados para distribuir o read/write tráfego em mais partições, consulte[Melhores práticas de modelagem de dados: recomendações para projetar modelos de dados](data-modeling.md).

Exceções `Write_Timeout` também podem ser causadas por uma taxa elevada de operações de gravação simultâneas que incluem dados estáticos e não estáticos na mesma partição lógica. Se é esperado que o tráfego execute várias operações de gravação simultâneas que incluam dados estáticos e não estáticos na mesma partição lógica, recomendamos gravar dados estáticos e não estáticos separadamente. Gravar os dados separadamente também ajuda a otimizar os custos de throughput.

**Você está vendo erros relacionados à taxa de solicitação de conexão excedida.**

Você está vendo `PerConnectionRequestRateExceeded` devido a uma das seguintes causas.
+ Talvez você não tenha conexões suficientes configuradas por sessão.
+ Talvez você esteja obtendo menos conexões do que os pares disponíveis, porque não tem as permissões do endpoint da VPC configuradas corretamente. Para obter mais informações sobre as políticas de endpoint da VPC, consulte [Como usar o endpoint da VPC para o Amazon Keyspaces](vpc-endpoints.md#using-interface-vpc-endpoints).
+ Se você estiver usando um driver 4.x, verifique se a validação do nome do host está ativada. O driver habilita a verificação do nome do host TLS por padrão. Essa configuração faz com que o Amazon Keyspaces apareça como um cluster de nó único para o driver. Recomendamos que você desative a verificação do nome de host.

Recomendamos que você siga estas práticas recomendadas para garantir que suas conexões e seu throughput sejam otimizados:
+ **Configure o ajuste do throughput de consultas CQL.**

  O Amazon Keyspaces suporta até 3.000 consultas CQL por conexão TCP por segundo, mas não há limite no número de conexões que um driver pode estabelecer. 

  A maioria dos drivers de código aberto do Cassandra estabelece um pool de conexões com o Cassandra e balanceia a carga das consultas sobre esse pool de conexões. O Amazon Keyspaces expõe 9 endereços IP emparelhados aos drivers. O comportamento padrão da maioria dos drivers é estabelecer uma única conexão com cada endereço IP emparelhado. Portanto, o throughput máximo de consultas CQL de um driver usando as configurações padrão será de 27.000 consultas CQL por segundo. 

  Para aumentar esse número, recomendamos aumentar o número de conexões por endereço IP que seu driver mantém no grupo de conexões. Por exemplo, definir o máximo de conexões por endereço IP como 2 dobrará o throughput máximo do seu driver para 54.000 consultas CQL por segundo. 
+ **Otimize suas conexões de nó único.**

  Por padrão, a maioria dos drivers Cassandra de código aberto estabelece uma ou mais conexões com cada endereço IP anunciado na tabela `system.peers` ao estabelecer uma sessão. No entanto, certas configurações podem fazer com que um driver se conecte a um único endereço IP do Amazon Keyspaces. Isso pode acontecer se o driver estiver tentando validar o nome de host SSL dos nós pares (por exemplo, drivers DataStax Java) ou quando estiver se conectando por meio de um VPC endpoint.

  Para obter a mesma disponibilidade e desempenho de um driver com conexões para vários endereços IP, recomendamos fazer o seguinte:
  + Aumente o número de conexões por IP para 9 ou mais, dependendo do throughput desejado do cliente.
  + Crie uma política de repetição personalizada que garanta que as novas tentativas sejam executadas no mesmo nó. Para obter mais informações, consulte . 

    [Como configurar a política de nova tentativa para conexões no Amazon Keyspaces](connections.md#connections.retry-policies).
  + Se você usa endpoints da VPC, conceda à entidade IAM que é usada para se conectar ao Amazon Keyspaces permissões de acesso para consultar sua VPC para obter informações sobre o endpoint e a interface de rede. Isso melhora o balanceamento de carga e aumenta a read/write produtividade. Para obter mais informações, consulte [Como preencher entradas da tabela `system.peers` com informações do endpoint da VPC de interface](vpc-endpoints.md#system_peers). 

### Estou recebendo erros de tempo limite de gravação durante a importação de dados
<a name="troubleshooting.serverless.writetimeout"></a>

**Você está recebendo um erro de tempo limite ao carregar dados usando o comando `cqlsh` `COPY`.**

```
Failed to import 1 rows: WriteTimeout - Error from server: code=1100 [Coordinator node timed out waiting for replica nodes' responses]
 message="Operation timed out - received only 0 responses." info={'received_responses': 0, 'required_responses': 2, 'write_type': 'SIMPLE', 'consistency': 
 'LOCAL_QUORUM'}, will retry later, attempt 1 of 100
```

O Amazon Keyspaces usa as exceções `ReadTimeout` e `WriteTimeout` para indicar quando uma solicitação de gravação falha devido à capacidade de throughput insuficiente. Para ajudar a diagnosticar exceções de capacidade insuficiente, o Amazon Keyspaces publica as seguintes métricas na Amazon. CloudWatch
+ `WriteThrottleEvents`
+ `ReadThrottledEvents`
+ `StoragePartitionThroughputCapacityExceeded`

Para resolver erros de capacidade insuficiente durante um carregamento de dados, diminua a taxa de gravação por trabalhador ou a taxa total de ingestão e, em seguida, tente carregar as linhas novamente. Para obter mais informações, consulte [Etapa 4: Definir configurações de `cqlsh COPY FROM`](bulk-upload-config.md). Para uma opção de upload de dados mais robusta, considere usar DSBulk, que está disponível no [GitHub repositório](https://github.com/datastax/dsbulk). Para step-by-step obter instruções, consulte[Tutorial: Carregando dados no Amazon Keyspaces usando DSBulk](dsbulk-upload.md).

### Não consigo ver o tamanho real do armazenamento de um espaço de chaves ou uma tabela
<a name="troubleshooting.serverless.storagesize"></a>

**Você não consegue ver o tamanho real de armazenamento de um espaço de chaves ou uma tabela.**

Para saber mais sobre o tamanho de armazenamento da sua tabela, consulte [Avaliar seus custos no nível da tabela](CostOptimization_TableLevelCostAnalysis.md). Você também pode estimar o tamanho do armazenamento começando a calcular o tamanho da linha em uma tabela. Instruções detalhadas para calcular o tamanho da linha estão disponíveis em[Estimar o tamanho da linha no Amazon Keyspaces](calculating-row-size.md).

# Como solucionar erros da linguagem de definição de dados no Amazon Keyspaces
<a name="troubleshooting.cql"></a>

Está tendo problemas para criar recursos? Aqui estão alguns problemas comuns e como resolvê-los.

## Erros de linguagem de definição de dados
<a name="troubleshooting-cql"></a>

O Amazon Keyspaces executa operações de linguagem de definição de dados (DDL) de forma assíncrona, por exemplo, criando e excluindo espaços de chaves e tabelas. Se um aplicativo estiver tentando usar o recurso antes de estar pronto, a operação falhará.

Você pode monitorar o status de criação de novos espaços de chave e tabelas no Console de gerenciamento da AWS, o que indica quando um espaço de teclas ou tabela está pendente ou ativo. Você também pode monitorar programaticamente o status de criação de um novo espaço de chaves ou tabela consultando a tabela do esquema do sistema. Um espaço de chaves ou tabela fica visível no esquema do sistema quando está pronto para uso. 

**nota**  
Para otimizar a criação de espaços de chave usando CloudFormation, você pode usar esse utilitário para converter scripts CQL em CloudFormation modelos. A ferramenta está disponível no [GitHub repositório.](https://github.com/aws/amazon-keyspaces-cql-to-cfn-converter)

**Topics**
+ [Erros de criação de espaço de chaves](#troubleshooting.cql.keyspace)
+ [Erros de criação de tabela](#troubleshooting.cql.table)
+ [Estou tentando restaurar uma tabela usando a point-in-time recuperação do Amazon Keyspaces (PITR), mas a restauração falha](#troubleshooting.cql.pitr)
+ [Estou tentando usar INSERT/UPDATE para editar configurações personalizadas de Time to Live (TTL), mas a operação falha](#troubleshooting.cql.ttl)
+ [Colunas excedidas](#troubleshooting.cql.upload)
+ [Erro de exclusão do intervalo](#troubleshooting.cql.rangedelete)

### Eu criei um espaço de chaves, mas não consigo visualizá-lo nem o acessar
<a name="troubleshooting.cql.keyspace"></a>

**Você está recebendo erros do seu aplicativo que está tentando acessar um novo espaço de chaves.**

Se você tentar acessar um espaço de chaves recém-criado do Amazon Keyspaces que ainda está sendo criado de forma assíncrona, você receberá um erro. Veja a seguir um exemplo de log de erros.

```
InvalidRequest: Error from server: code=2200 [Invalid query] message="unconfigured keyspace mykeyspace"
```

O padrão de design recomendado para verificar quando um novo espaço de chaves está pronto para uso é pesquisar as tabelas de esquema do sistema do Amazon Keyspaces (system\$1schema\$1mcs.\$1). 

Para obter mais informações, consulte [Verifique o status de criação do keyspace no Amazon Keyspaces](keyspaces-create.md).

### Eu criei uma nova tabela, mas não consigo visualizá-la nem a acessar
<a name="troubleshooting.cql.table"></a>

**Você está recebendo erros do seu aplicativo que está tentando acessar uma nova tabela.**

Se você tentar acessar uma tabela recém-criada do Amazon Keyspaces que ainda está sendo criado de forma assíncrona, você receberá um erro. Por exemplo, tentar consultar uma tabela que ainda não está disponível falha com um erro `unconfigured table`. 

```
InvalidRequest: Error from server: code=2200 [Invalid query] message="unconfigured table mykeyspace.mytable"
```

Tentando ver a tabela com falhas `sync_table()` com um `KeyError`.

```
KeyError: 'mytable'
```

O padrão de design recomendado para verificar quando uma nova tabela está pronta para uso é pesquisar as tabelas de esquema do sistema do Amazon Keyspaces (system\$1schema\$1mcs.\$1). 

Esse é o exemplo de saída de uma tabela que está sendo criada.

```
user-at-123@cqlsh:system_schema_mcs> select table_name,status from system_schema_mcs.tables where keyspace_name='example_keyspace' and table_name='example_table';

table_name | status

------------+----------

example_table | CREATING

(1 rows)
```

Esse é o exemplo de saída de uma tabela que está ativa.

```
user-at-123@cqlsh:system_schema_mcs> select table_name,status from system_schema_mcs.tables where keyspace_name='example_keyspace' and table_name='example_table';

table_name | status

------------+----------

example_table | ACTIVE

(1 rows)
```

Para obter mais informações, consulte [Verifique o status de criação da tabela no Amazon Keyspaces](tables-create.md).

### Estou tentando restaurar uma tabela usando a point-in-time recuperação do Amazon Keyspaces (PITR), mas a restauração falha
<a name="troubleshooting.cql.pitr"></a>

Se você está tentando restaurar uma tabela do Amazon Keyspaces com point-in-time recuperação (PITR) e vê o processo de restauração começar, mas não ser concluído com sucesso, talvez você não tenha configurado todas as permissões necessárias para o processo de restauração dessa tabela específica. 

Além das permissões de usuário, o Amazon Keyspaces pode exigir permissões para realizar ações durante o processo de restauração em nome da sua entidade principal. Esse é o caso se a tabela for criptografada com uma chave gerenciada pelo cliente ou se você estiver usando políticas do IAM que restringem o tráfego de entrada. 

Por exemplo, se você estiver usando chaves de condição em sua política do IAM para restringir o tráfego de origem a endpoints ou intervalos de IP específicos, a operação de restauração falhará. Para permitir que o Amazon Keyspaces execute a operação de restauração da tabela em nome da sua entidade principal, você deve adicionar uma chave de condição `aws:ViaAWSService` global na política do IAM.

Para obter mais informações sobre as permissões para restaurar tabelas, consulte [Configurar permissões do IAM da tabela de restauração para o PITR do Amazon Keyspaces](howitworks_restore_permissions.md).

### Estou tentando usar INSERT/UPDATE para editar configurações personalizadas de Time to Live (TTL), mas a operação falha
<a name="troubleshooting.cql.ttl"></a>

Se você estiver tentando inserir ou atualizar um valor de TTL personalizado, a operação poderá falhar com o seguinte erro. 

```
TTL is not yet supported.
```

Para especificar valores TTL personalizados para linhas ou colunas as operações `INSERT` ou `UPDATE`, você deve primeiro habilitar a TTL para a tabela. Você pode habilitar a TTL para uma tabela usando a propriedade personalizada `ttl`.

Para obter mais informações sobre como habilitar configurações TTL personalizadas para tabelas, consulte [Atualizar tabela com vida útil (TTL) personalizada](TTL-how-to-enable-custom-alter.md).

### Estou tentando fazer o carregamento de dados para minha tabela do Amazon Keyspaces e recebo um erro sobre exceder o número de colunas
<a name="troubleshooting.cql.upload"></a>

**Você está carregando dados e excedeu o número de colunas que podem ser atualizadas simultaneamente.**

Esse erro ocorre quando o esquema da sua tabela excede o tamanho máximo de 350 KB. Para obter mais informações, consulte [Cotas para Amazon Keyspaces (para Apache Cassandra)](quotas.md).

### Estou tentando excluir dados na minha tabela do Amazon Keyspaces e a exclusão falha no intervalo
<a name="troubleshooting.cql.rangedelete"></a>

**Você está tentando excluir dados por chave de partição e recebe um erro de exclusão de intervalo.**

Esse erro ocorre quando você está tentando excluir mais de 1.000 linhas em uma operação de exclusão. 

```
Range delete requests are limited by the amount of items that can be deleted in a single range.
```

Para obter mais informações, consulte [Intervalo de exclusão](functional-differences.md#functional-differences.range-delete).

Para excluir mais de 1.000 linhas em uma única partição, considere as opções a seguir.
+ Excluir por partição – Se a maioria das partições tiver menos de 1.000 linhas, você poderá tentar excluir dados por partição. Se as partições contiverem mais de 1.000 linhas, tente excluí-las usando a coluna de clustering.
+ Excluir por coluna de clustering – Se seu modelo contiver várias colunas de clustering, você poderá usar a hierarquia de colunas para excluir várias linhas. As colunas de clustering são uma estrutura aninhada, e você pode excluir muitas linhas operando na coluna de nível superior.
+ Excluir por linha individual – Você pode iterar pelas linhas e excluir cada linha usando sua chave primária completa (colunas de partição e colunas de clustering).
+ Como melhor prática, considere dividir suas linhas em partições — No Amazon Keyspaces, recomendamos que você distribua seu throughput entre as partições da tabela. Isso distribui os dados e o acesso uniformemente entre os recursos físicos, o que proporciona melhor throughput. Para obter mais informações, consulte [Melhores práticas de modelagem de dados: recomendações para projetar modelos de dados](data-modeling.md).

Considere também as recomendações a seguir ao planejar operações de exclusão para workload pesadas.
+ Com o Amazon Keyspaces, as partições podem conter um número praticamente ilimitado de linhas. Isso permite que você escale partições de forma “mais ampla” do que a orientação tradicional do Cassandra de 100 MB. Não é incomum que séries temporais ou livros contábeis cresçam mais de um gigabyte de dados ao longo do tempo.
+ Com o Amazon Keyspaces, não há estratégias de compactação ou marcas de exclusão a serem consideradas quando você precisa realizar operações de exclusão para workloads pesadas. Você pode excluir quantos dados quiser sem afetar o desempenho de leitura.