

# Acessar o DynamoDB
<a name="AccessingDynamoDB"></a>

 Você pode acessar o Amazon DynamoDB usando o Console de gerenciamento da AWS, a AWS Command Line Interface (AWS CLI) ou a API do DynamoDB.

**Topics**
+ [Utilizar o console](#ConsoleDynamoDB)
+ [Como usar o AWS CLI](#Tools.CLI)
+ [Usar a API](#Using.API)
+ [Usar o NoSQL Workbench para DynamoDB](#Using.Workbench)
+ [Intervalos de endereços IP](#Using.IPRanges)
+ [Endpoints de pilha dupla para o Protocolo de Internet versão 6 (IPv6)](#dual-stackipv4-6)

## Utilizar o console
<a name="ConsoleDynamoDB"></a>

Você pode acessar o Console de gerenciamento da AWS para Amazon DynamoDB em [https://console.aws.amazon.com/dynamodb/home](https://console.aws.amazon.com/dynamodb/home).

Aqui estão algumas das ações que você pode realizar no console do DynamoDB:
+ **Gerenciar tabelas**: crie, atualize e exclua tabelas. A calculadora de capacidade pode ajudar a estimar os requisitos de capacidade.
+ **Interagir com dados**: visualize, adicione, atualize e exclua itens das tabelas. Gerencie as configurações de vida útil (TTL).
+ **Monitorar e analisar**: visualize painéis, monitore e configure alarmes e analise métricas e alertas das tabelas do DynamoDB.
+ **Otimizar e ampliar**: gerencie índices secundários, fluxos, acionadores, capacidade reservada e outros recursos avançados para aprimorar o uso do DynamoDB.

O console do DynamoDB fornece uma interface abrangente para gerenciar os recursos do DynamoDB. Recomendamos que você acesse o console e interaja com ele para saber mais.

## Como usar o AWS CLI
<a name="Tools.CLI"></a>

 Você pode usar a AWS Command Line Interface (AWS CLI) para controlar vários serviços da AWS via linha de comando e automatizá-los usando scripts. Use o AWS CLI para operações ad hoc, como a criação de uma tabela. Ela também pode ser usada para incorporar operações do Amazon DynamoDB em scripts utilitários.

 Antes de usar a AWS CLI com o DynamoDB, você deve obter um ID de chave de acesso e uma chave de acesso secreta. Para obter mais informações, consulte [Conceder acesso programático](SettingUp.DynamoWebService.md#SettingUp.DynamoWebService.GetCredentials). 

Para obter uma lista completa de todos os comandos disponíveis para o DynamoDB na AWS CLI, consulte a [Referência de comandos da AWS CLI](https://docs.aws.amazon.com/cli/latest/reference/dynamodb/index.html).

**Topics**

### Download e configuração da AWS CLI
<a name="Tools.CLI.DownloadingAndRunning"></a>

O AWS CLI está disponível em [http://aws.amazon.com/cli](https://aws.amazon.com/cli). Ela é executada no Windows, macOS ou Linux. Depois de fazer download da AWS CLI, siga estas etapas para instalá-la e configurá-la:

1. Acesse o [Guia do usuário do AWS Command Line Interface](https://docs.aws.amazon.com/cli/latest/userguide/).

1. Siga as instruções de [Instalação da AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/installing.html) e [Configuração da AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-getting-started.html).

### Como usar a AWS CLI com o DynamoDB
<a name="Tools.CLI.UsingWithDDB"></a>

O formato de linha de comando consiste em um nome de operação do DynamoDB seguido pelos parâmetros dessa operação. O AWS CLI suporta uma sintaxe abreviada para os valores de parâmetro, assim como JSON.

Por exemplo, o comando a seguir cria uma tabela chamada *Music*. A chave de partição é *Artist*, e a chave de classificação é *SongTitle*. (Para facilitar a leitura, comandos longos nesta seção são divididos em linhas separadas.)

```
aws dynamodb create-table \
    --table-name Music \
    --attribute-definitions \
        AttributeName=Artist,AttributeType=S \
        AttributeName=SongTitle,AttributeType=S \
    --key-schema AttributeName=Artist,KeyType=HASH AttributeName=SongTitle,KeyType=RANGE \
    --billing-mode PAY_PER_REQUEST \
    --table-class STANDARD
```

Os comandos a seguir adicionam novos itens à tabela. Esses exemplos usam uma combinação de sintaxe abreviada e JSON.

```
aws dynamodb put-item \
    --table-name Music \
    --item \
        '{"Artist": {"S": "No One You Know"}, "SongTitle": {"S": "Call Me Today"}, "AlbumTitle": {"S": "Somewhat Famous"}}' \
    --return-consumed-capacity TOTAL

aws dynamodb put-item \
    --table-name Music \
    --item '{
        "Artist": {"S": "Acme Band"},
        "SongTitle": {"S": "Happy Day"},
        "AlbumTitle": {"S": "Songs About Life"} }' \
    --return-consumed-capacity TOTAL
```

Na linha de comando, pode ser difícil compor um JSON válido. No entanto, a AWS CLI pode ler arquivos JSON. Por exemplo, considere o seguinte trecho de código JSON, que é armazenado em um arquivo chamado *key-conditions.json*.

```
{
    "Artist": {
        "AttributeValueList": [
            {
                "S": "No One You Know"
            }
        ],
        "ComparisonOperator": "EQ"
    },
    "SongTitle": {
        "AttributeValueList": [
            {
                "S": "Call Me Today"
            }
        ],
        "ComparisonOperator": "EQ"
    }
}
```

Agora você pode emitir uma solicitação `Query` usando a AWS CLI. Neste exemplo, o conteúdo do arquivo *key-conditions.json* é usado para o parâmetro `--key-conditions`.

```
aws dynamodb query --table-name Music --key-conditions file://key-conditions.json
```

### Usar a AWS CLI com o DynamoDB local
<a name="Tools.CLI.UsingWithDDBLocal"></a>

A AWS CLI também pode interagir com o DynamoDB local (versão para download) executado no computador. Para ativar isso, adicione o parâmetro a seguir em cada comando:

`--endpoint-url http://localhost:8000`

O exemplo a seguir usa a AWS CLI para listar as tabelas em um banco de dados local.

```
aws dynamodb list-tables --endpoint-url http://localhost:8000
```

Se o DynamoDB estiver usando um número de porta diferente do padrão (8000), modifique o valor `--endpoint-url` de acordo com a necessidade.

**nota**  
A AWS CLI não pode usar o DynamoDB local (versão para download) como um endpoint padrão. Portanto, você deve especificar `--endpoint-url` com cada comando. 

## Usar a API
<a name="Using.API"></a>

 Você pode usar o Console de gerenciamento da AWS e a AWS Command Line Interface para trabalhar de forma interativa com o Amazon DynamoDB. No entanto, para aproveitar ao máximo o DynamoDB, você pode escrever o código da aplicação usando os AWS SDKs.

Os SDKs da AWS oferecem amplo suporte para o DynamoDB em [ Java](https://aws.amazon.com/sdk-for-java), [JavaScript no navegador](https://aws.amazon.com/sdk-for-browser), [.NET](https://aws.amazon.com/sdk-for-net), [Node.js](https://aws.amazon.com/sdk-for-node-js), [PHP](https://aws.amazon.com/sdk-for-php), [Python](https://aws.amazon.com/sdk-for-python), [Ruby](https://aws.amazon.com/sdk-for-ruby), [C\$1\$1](https://aws.amazon.com/sdk-for-cpp), [Go](https://aws.amazon.com/sdk-for-go), [Android](https://aws.amazon.com/mobile/sdk/) e [iOS](https://aws.amazon.com/mobile/sdk/).

Antes de usar os AWS SDKs com o DynamoDB, você deve obter um ID de chave de acesso da AWS e uma chave de acesso secreta. Para obter mais informações, consulte [Configurar o DynamoDB (serviço da Web)](SettingUp.DynamoWebService.md). 

 Para obter uma visão geral de alto nível da programação de aplicações do DynamoDB com AWS SDKs, consulte [Programação com o DynamoDB e os AWS SDKs](Programming.md). 

## Usar o NoSQL Workbench para DynamoDB
<a name="Using.Workbench"></a>

Também é possível acessar o DynamoDB baixando e usando o [NoSQL Workbench para DynamoDB](workbench.md).

O NoSQL Workbench para Amazon DynamoDB é uma aplicação GUI multiplataforma do lado do cliente para operações e desenvolvimento de bancos de dados modernos. Ele está disponível para Windows, macOS e Linux. O NoSQL Workbench é uma ferramenta de desenvolvimento visual que fornece recursos de modelagem de dados, visualização de dados e desenvolvimento de consultas para ajudar você a projetar, criar, consultar e gerenciar tabelas do DynamoDB. O NoSQL Workbench agora inclui o DynamoDB local como parte opcional do processo de instalação, o que facilita a modelagem de dados no DynamoDB local. Para saber mais sobre o DynamoDB local e seus requisitos, consulte [Configurar o DynamoDB local (versão para download)](DynamoDBLocal.md).

**nota**  
No momento, o NoSQL Workbench para DynamoDB não comporta logins da AWS configurados com a autenticação de dois fatores (2FA).

**Modelagem de dados**  
Com o NoSQL Workbench para DynamoDB, você pode criar novos modelos de dados a partir de ou projetar modelos com base em modelos de dados existentes que satisfaçam os padrões de acesso a dados das suas aplicações. Pode também importar e exportar o modelo de dados designado no final do processo. Para obter mais informações, consulte [Criar modelos de dados com o NoSQL Workbench](workbench.Modeler.md).

**Criação de operação**  
O NoSQL Workbench oferece uma avançada interface gráfica do usuário para você desenvolver e testar consultas. Você pode usar o *criador de operações* para visualizar, explorar e consultar conjuntos de dados dinâmicos. Você também pode usar o criador de operações estruturadas para criar e executar operações de plano de dados. Ele oferece suporte para expressões de projeção e condição e permite que você gere código de exemplo em várias linguagens. Para obter mais informações, consulte [Explorar conjuntos de dados e criar operações com o NoSQL Workbench](workbench.querybuilder.md).

## Intervalos de endereços IP
<a name="Using.IPRanges"></a>

A Amazon Web Services (AWS) publica seus intervalos de endereços IP atuais em formato JSON. Para visualizar os intervalos atuais, faça download do arquivo [ip-ranges.json](https://ip-ranges.amazonaws.com/ip-ranges.json). Para acessar mais informações, consulte [Intervalos de endereços IP da AWS](https://docs.aws.amazon.com/general/latest/gr/aws-ip-ranges.html) na Referência geral da AWS.

Para encontrar os intervalos de endereços IP que podem ser usados para [acessar os índices e as tabelas do DynamoDB](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_Operations_Amazon_DynamoDB.html), procure no arquivo ip-ranges.json a seguinte string: `"service": "DYNAMODB"`.

**nota**  
Os intervalos de endereços IP não se aplicam ao DynamoDB Streams ou ao DynamoDB Accelerator (DAX). 

## Endpoints de pilha dupla para o Protocolo de Internet versão 6 (IPv6)
<a name="dual-stackipv4-6"></a>

O DynamoDB oferece endpoints de pilha dupla compatíveis com IPv4 e IPv6. As convenções de nomenclatura de endpoints são:
+ `dynamodb.<region>.api.aws`
+ `<account-id>.ddb.<region>.api.aws`
+ `streams-dynamodb.<region>.api.aws`
+ `dax.<region>.api.aws`
+ `dynamodb-fips.<region>.api.aws`

Para ver uma lista completa de endpoints do DynamoDB e disponibilidade regional, consulte [Endpoints e cotas do Amazon DynamoDB](https://docs.aws.amazon.com/general/latest/gr/ddb.html) no *Guia de referência geral da AWS*.

Para acessar mais informações sobre como configurar a AWS CLI para usar endpoints de pilha dupla, consulte a seção [Configurar para usar endpoints de pilha dupla para todos os serviços da AWS](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-endpoints.html#endpoints-dual-stack) no *Guia da AWS Command Line Interface*.

Para acessar mais informações sobre como configurar seus clientes SDK para usar endpoints de pilha dupla, consulte o tópico [Endpoints de pilha dupla e FIPS](https://docs.aws.amazon.com/sdkref/latest/guide/feature-endpoints.html) no guia *AWS SDKs e ferramentas*.

Antes de usar o DynamoDB com IPv6, você deve atualizar seu perfil de usuário do IAM ou as políticas baseadas em recursos que você usa para a filtragem de endereços IP para incluir intervalos de endereços IPv6. As políticas de filtragem de endereços IP que não levam em conta o endereço IPv6 podem gerar problemas de acesso. Para acessar mais informações, consulte [Operadores de condição de endereço IP](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html#Conditions_IPAddress) no *Guia do usuário do AWS Identity and Access Management*.