

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

# Estimar o consumo de capacidade para colunas estáticas no Amazon Keyspaces
<a name="static-columns"></a>

Em uma tabela do Amazon Keyspaces com colunas de clustering, você pode usar a palavra-chave `STATIC` para criar uma coluna estática. O valor armazenado em uma coluna estática é compartilhado entre todas as linhas em uma partição lógica. Quando você atualiza o valor dessa coluna, o Amazon Keyspaces aplica a alteração automaticamente a todas as linhas na partição. 

Esta seção descreve como calcular o tamanho codificado dos dados ao gravar em colunas estáticas. Esse processo é tratado separadamente do processo que grava dados nas colunas não estáticas de uma linha. Além das cotas de tamanho para dados estáticos, as operações de leitura e gravação em colunas estáticas também afetam a medição e capacidade de throughput das tabelas de forma independente. Para diferenças funcionais com o Apache Cassandra ao usar colunas estáticas e resultados de leitura de intervalos paginados, consulte [Paginação](functional-differences.md#functional-differences.paging).

**Topics**
+ [Calcular o tamanho da coluna estática por partição lógica no Amazon Keyspaces](static-columns-estimate.md)
+ [Estime os requisitos de capacidade e taxa de transferência para read/write operações com dados estáticos no Amazon Keyspaces](static-columns-metering.md)

# Calcular o tamanho da coluna estática por partição lógica no Amazon Keyspaces
<a name="static-columns-estimate"></a>

Esta seção fornece detalhes sobre como estimar o tamanho codificado das colunas estáticas no Amazon Keyspaces. O tamanho codificado é usado ao calcular o uso da fatura e da cota. Você também deve usar o tamanho codificado ao calcular os requisitos de capacidade de throughput provisionada para tabelas. Para calcular o tamanho codificado das colunas estáticas no Amazon Keyspaces, é possível usar as diretrizes a seguir.
+ As chaves de partição podem conter até 2.048 bytes de dados. Cada coluna de chave na chave de partição requer até 3 bytes de metadados. Esses bytes de metadados contam para sua cota de tamanho de dados estáticos de 1 MB por partição. Ao calcular o tamanho de seus dados estáticos, você deve assumir que cada coluna de chave de partição usa os 3 bytes completos de metadados.
+ Use o tamanho bruto dos valores de dados da coluna estática com base no tipo de dados. Para obter informações sobre tipos de dados, consulte [Tipos de dados](cql.elements.md#cql.data-types).
+ Adicione 104 bytes ao tamanho dos dados estáticos para metadados.
+ Colunas de clustering e colunas de chave não primária regulares não contam para o tamanho dos dados estáticos. Para saber como estimar o tamanho dos dados não estáticos dentro das linhas, consulte [Estimar o tamanho da linha no Amazon Keyspaces](calculating-row-size.md).

O tamanho total codificado de uma coluna estática é baseado na seguinte fórmula:

```
partition key columns + static columns + metadata = total encoded size of static data
```

Considere o exemplo a seguir de uma tabela em que todas as colunas são do tipo inteiro. A tabela tem duas colunas de chave de partição, duas colunas de clustering, uma coluna regular e uma coluna estática.

```
CREATE TABLE mykeyspace.mytable(pk_col1 int, pk_col2 int, ck_col1 int, ck_col2 int, reg_col1 int, static_col1 int static, primary key((pk_col1, pk_col2),ck_col1, ck_col2));
```

Neste exemplo, calculamos o tamanho dos dados estáticos da seguinte instrução:

```
INSERT INTO mykeyspace.mytable (pk_col1, pk_col2, static_col1) values(1,2,6);
```

Para estimar o total de bytes exigidos por essa operação de gravação, você pode usar as etapas a seguir.

1. Calcule o tamanho de uma coluna de chave de partição adicionando os bytes do tipo de dados armazenado na coluna e os bytes de metadados. Repita isso para todas as colunas da chave de partição.

   1. Calcule o tamanho da primeira coluna da chave de partição (pk\$1col1):

      ```
      4 bytes for the integer data type + 3 bytes for partition key metadata = 7 bytes
      ```

   1. Calcule o tamanho da segunda coluna da chave de partição (pk\$1col2): 

      ```
      4 bytes for the integer data type + 3 bytes for partition key metadata = 7 bytes
      ```

   1. Adicione as duas colunas para obter o tamanho total estimado das colunas da chave de partição: 

      ```
      7 bytes + 7 bytes = 14 bytes for the partition key columns
      ```

1. Adicione o tamanho das colunas estáticas. Neste exemplo, temos apenas uma coluna estática que armazena um número inteiro (o que exige 4 bytes).

1. Por fim, para obter o tamanho total codificado dos dados da coluna estática, some os bytes das colunas da chave primária e das colunas estáticas e adicione os 104 bytes adicionais dos metadados:

   ```
   14 bytes for the partition key columns + 4 bytes for the static column + 104 bytes for metadata = 122 bytes.
   ```

Você também pode atualizar dados estáticos e não estáticos com a mesma instrução. Para estimar o tamanho total da operação de gravação, você deve primeiro calcular o tamanho da atualização não estática de dados. Em seguida, calcule o tamanho da atualização da linha, conforme mostrado no exemplo em [Estimar o tamanho da linha no Amazon Keyspaces](calculating-row-size.md), e adicione os resultados. 

Nesse caso, você pode gravar um total de 2 MB — 1 MB é a cota máxima de tamanho de linha e 1 MB é a cota para o tamanho máximo de dados estáticos por partição lógica.

Para calcular o tamanho total de uma atualização de dados estáticos e não estáticos na mesma instrução, você pode usar a seguinte fórmula:

```
(partition key columns + static columns + metadata = total encoded size of static data) + (partition key columns + clustering columns + regular columns + row metadata = total encoded size of row)
= total encoded size of data written
```

Considere o exemplo a seguir de uma tabela em que todas as colunas são do tipo inteiro. A tabela tem duas colunas de chave de partição, duas colunas de clustering, uma coluna regular e uma coluna estática.

```
CREATE TABLE mykeyspace.mytable(pk_col1 int, pk_col2 int, ck_col1 int, ck_col2 int, reg_col1 int, static_col1 int static, primary key((pk_col1, pk_col2),ck_col1, ck_col2));
```

Neste exemplo, calculamos o tamanho dos dados quando escrevemos uma linha na tabela, conforme mostrado na instrução a seguir:

```
INSERT INTO mykeyspace.mytable (pk_col1, pk_col2, ck_col1, ck_col2, reg_col1, static_col1) values(2,3,4,5,6,7);
```

Para estimar o total de bytes exigidos por essa operação de gravação, você pode usar as etapas a seguir.

1. Calcule o tamanho total codificado dos dados estáticos conforme mostrado anteriormente. Neste exemplo, são 122 bytes.

1. Adicione o tamanho do tamanho total codificado da linha com base na atualização de dados não estáticos, seguindo as etapas em [Estimar o tamanho da linha no Amazon Keyspaces](calculating-row-size.md). Neste exemplo, o tamanho total da atualização da linha é 134 bytes.

   ```
   122 bytes for static data + 134 bytes for nonstatic data = 256 bytes.
   ```

# Estime os requisitos de capacidade e taxa de transferência para read/write operações com dados estáticos no Amazon Keyspaces
<a name="static-columns-metering"></a>

Os dados estáticos estão associados a partições lógicas no Cassandra, não a linhas individuais. As partições lógicas no Amazon Keyspaces podem ter tamanho praticamente ilimitado, abrangendo várias partições de armazenamento físico. Como resultado, os medidores do Amazon Keyspaces gravam operações em dados estáticos e não estáticos separadamente. Além disso, gravações que incluem dados estáticos e não estáticos exigem operações subjacentes adicionais para fornecer consistência de dados. 

Se você realizar uma operação de gravação mista de dados estáticos e não estáticos, isso resultará em duas operações de gravação separadas — uma para dados não estáticos e outra para dados estáticos. Isso se aplica aos modos de capacidade sob demanda e provisionada. read/write 

O exemplo a seguir fornece detalhes sobre como estimar as unidades de capacidade de leitura (RCUs) e unidades de capacidade de gravação (WCUs) necessárias ao calcular os requisitos de capacidade de transferência provisionada para tabelas no Amazon Keyspaces que têm colunas estáticas. Você pode estimar quanta capacidade sua tabela precisa para processar gravações que incluam dados estáticos e não estáticos usando a seguinte fórmula:

```
2 x WCUs required for nonstatic data + 2 x WCUs required for static data
```

Por exemplo, se seu aplicativo grava 27% KBs de dados por segundo e cada gravação inclui 25,5 KBs de dados não estáticos e 1,5 KBs de dados estáticos, sua tabela exige 56 WCUs (2 x 26 WCUs \$1 2 x 2 WCUs).

O Amazon Keyspaces mede as leituras de dados estáticos e não estáticos da mesma forma que as leituras de várias linhas. Como resultado, o preço da leitura de dados estáticos e não estáticos na mesma operação é baseado no tamanho agregado dos dados processados para realizar a leitura.

Para saber como monitorar recursos sem servidor com a Amazon CloudWatch, consulte. [Monitorando o Amazon Keyspaces com a Amazon CloudWatch](monitoring-cloudwatch.md)