Todos os produtos
Search
Central de documentação

:Conectar-se a uma instância compatível com DynamoDB usando código

Última atualização: Jul 04, 2026

Este tópico descreve como se conectar a uma instância compatível com DynamoDB usando AWS CLI, Python e Java.

Pré-requisitos

É necessária uma instância compatível com DynamoDB. Ao criar a instância, selecione DynamoDB como tipo de protocolo. Para mais informações, consulte Criar uma instância de cluster fragmentado.

Endpoint de conexão

Obtenha o endpoint de conexão da sua instância compatível com DynamoDB.

  1. Faça login no console do ApsaraDB for MongoDB.

  2. No canto superior esquerdo da página, selecione o grupo de recursos e a região da instância.

  3. No painel de navegação à esquerda, clique em List of Shard cluster instances.

  4. Localize a instância desejada e clique em seu ID.

  5. No painel de navegação à esquerda, clique em Database Connection.

  6. Na seção VPC Connection, visualize o endpoint de conexão da instância. O Protocol Type deste endpoint é DynamoDB-compatible protocol, e o endereço começa com dds-.

Se sua aplicação estiver implantada em uma instância ECS, a instância do ApsaraDB for MongoDB e a instância ECS devem atender às seguintes condições para garantir a conectividade de rede:

Conectar usando AWS CLI

Esta seção demonstra como usar a AWS Command Line Interface (AWS CLI) em um sistema Ubuntu 16.04.6 LTS para se conectar a uma instância compatível com DynamoDB. Para mais informações sobre a AWS CLI, consulte O que é a AWS Command Line Interface?.

  1. Instale o cliente AWS CLI.

    1. Execute o comando abaixo para baixar a versão mais recente da AWS CLI e salvá-la como awscliv2.zip:

      curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
    2. Execute o seguinte comando para descompactar o arquivo awscliv2.zip:

      unzip awscliv2.zip
      Nota

      Caso não tenha o unzip instalado, execute o comando sudo apt install unzip para instalá-lo.

    3. Execute o comando a seguir para instalar a AWS CLI:

      sudo ./aws/install

    Quando a mensagem You can now run: /usr/local/bin/aws --version aparecer, a AWS CLI estará instalada. Em seguida, execute o comando /usr/local/bin/aws --version para verificar a versão atual da AWS CLI.

  2. Execute o comando /usr/local/bin/aws configure para configurar a AWS CLI. Insira os valores abaixo e pressione Enter após cada um.

    Parâmetro

    Descrição

    Exemplo

    AWS Access Key ID

    Insira um ID de chave de acesso. O serviço compatível com DynamoDB não valida essa chave; portanto, qualquer string de caracteres é aceita.

    XXXXXXXXXX

    AWS Secret Access Key

    Insira uma chave de acesso secreta. O serviço compatível com DynamoDB não valida essa chave, então você pode inserir qualquer sequência de caracteres.

    XXXXXXXXXX

    Default region name

    Informe o nome de uma região padrão da AWS.

    us-west-2

    Default output format

    Formato de saída padrão. Você pode deixar este parâmetro em branco.

    json

    Nota

    Para mais detalhes sobre como configurar a AWS CLI, consulte Noções básicas de configuração.

  3. Execute o comando abaixo para se conectar à instância compatível com DynamoDB desejada e criar uma tabela.

    aws dynamodb --endpoint-url <connection-endpoint-of-your-DynamoDB-compatible-instance> \ 
        create-table --table-name <your-table-name> \
        --attribute-definitions AttributeName=<attribute-name>,AttributeType=<attribute-data-type> \
        --key-schema AttributeName=<primary-key-attribute-name>,KeyType=<key-role> \
        --provisioned-throughput ReadCapacityUnits=<provisioned-read-throughput>,WriteCapacityUnits=<provisioned-write-throughput>

    Parâmetro

    Descrição

    --endpoint-url

    Endpoint da instância compatível com DynamoDB de destino. O endpoint deve começar com http://.

    create-table

    Comando para criar uma tabela.

    Nota

    Para mais informações, consulte create-table.

    --table-name

    Nome da tabela a ser criada.

    --attribute-definitions

    Array de atributos que descrevem o esquema de chaves da tabela ou índice. Este parâmetro exige os seguintes subparâmetros:

    • AttributeName: Nome do atributo.

    • AttributeType: Tipo de dados do atributo.

      Nota

      Para mais informações, consulte create-table.

    --key-schema

    Atributos que compõem a chave primária de uma tabela ou índice. Este parâmetro requer os seguintes subparâmetros:

    • AttributeName: Nome de um atributo de chave. O atributo é definido por meio do parâmetro --attribute-definitions.

    • KeyType: Função da chave. Valores válidos: HASH e RANGE. HASH especifica a chave de partição e RANGE define a chave de ordenação.

      Nota

      Para mais informações, consulte create-table.

    --provisioned-throughput

    Configurações de throughput provisionado para a tabela ou índice. Este parâmetro necessita dos seguintes subparâmetros:

    • ReadCapacityUnits: Throughput de leitura provisionado.

    • WriteCapacityUnits: Throughput de escrita provisionado.

    Nota

    Para mais informações, consulte create-table.

    Exemplo:

    /usr/local/bin/aws dynamodb --endpoint-url http://dds-xxxx.mongodb.rds.aliyuncs.com:3717 \ # Connect to the specified endpoint of the DynamoDB-compatible instance.
        create-table --table-name student \ # Create a table named student.
        --attribute-definitions AttributeName=name,AttributeType=S AttributeName=age,AttributeType=N \ # The table schema includes a 'name' attribute of type String (S) and an 'age' attribute of type Number (N).
        --key-schema AttributeName=name,KeyType=HASH AttributeName=age,KeyType=RANGE \ # Specify 'name' as the partition key and 'age' as the sort key.
        --provisioned-throughput ReadCapacityUnits=5,WriteCapacityUnits=5 # Set the provisioned read throughput and provisioned write throughput to 5.

    Se a saída abaixo for retornada, a conexão com a instância compatível com DynamoDB foi estabelecida e a tabela criada com sucesso.

    {
        "TableDescription": {
            "TableName": "student",
            "KeySchema": [
                {
                    "AttributeName": "name",
                    "KeyType": "HASH"
                },
                {
                    "AttributeName": "age",
                    "KeyType": "RANGE"
                }
            ],
            "TableStatus": "CREATING",
            "TableSizeBytes": 0,
            "ItemCount": 0
        }
    }
                            

Conectar usando Python

O código a seguir demonstra como se conectar a uma instância compatível com DynamoDB usando Python e criar uma tabela chamada Book:

import boto3

def create_book_table(dynamodb=None):
 if not dynamodb:
 # Replace the endpoint_url with the actual endpoint of your DynamoDB-compatible instance.
 dynamodb = boto3.resource('dynamodb', endpoint_url="http://dds-xxxx.mongodb.rds.aliyuncs.com:3717")
 table = dynamodb.create_table(
 TableName='Book',
 KeySchema=[
 {
 'AttributeName':'title',
 'KeyType':'HASH'
 },
 {
 'AttributeName':'year',
 'KeyType':'RANGE'
 }
 ],
 AttributeDefinitions=[
 {
 'AttributeName':'title',
 'AttributeType':'S'
 },
 {
 'AttributeName':'year',
 'AttributeType':'N'
 },
 ],
 ProvisionedThroughput={
 'ReadCapacityUnits':5,
 'WriteCapacityUnits':5
 }
 )
 return table

if __name__ == '__main__':
 book_table =create_book_table()
 print("Table status:", book_table.table_status)

Conectar usando Java

É necessário ter o AWS SDK for Java. Para mais informações, consulte Configurar o AWS SDK for Java.

O código abaixo ilustra como usar Java para se conectar a uma instância compatível com DynamoDB e criar uma tabela denominada Book:

package com.amazonaws.codesamples.gsg;

import java.util.Arrays;
import com.amazonaws.client.builder.AwsClientBuilder;
import com.amazonaws.services.dynamodbv2.AmazonDynamoDB;
import com.amazonaws.services.dynamodbv2.AmazonDynamoDBClientBuilder;
import com.amazonaws.services.dynamodbv2.document.DynamoDB;
import com.amazonaws.services.dynamodbv2.document.Table;
import com.amazonaws.services.dynamodbv2.model.AttributeDefinition;
import com.amazonaws.services.dynamodbv2.model.KeySchemaElement;
import com.amazonaws.services.dynamodbv2.model.KeyType;
import com.amazonaws.services.dynamodbv2.model.ProvisionedThroughput;
import com.amazonaws.services.dynamodbv2.model.ScalarAttributeType;

public class MoviesCreateTable {
 public static void main(String[] args) throws Exception {
 
        // Replace the endpoint and region with the actual values for your DynamoDB-compatible instance.
        AmazonDynamoDB client =AmazonDynamoDBClientBuilder.standard()
            .withEndpointConfiguration(new AwsClientBuilder.EndpointConfiguration("http://dds-xxxx.mongodb.rds.aliyuncs.com:3717",
"us-east-1"))
            .build();

 DynamoDB dynamoDB = new DynamoDB(client);

 String tableName ="Book";

 try {
 System.out.println("Creating table...");
 Table table =dynamoDB.createTable(tableName,
 Arrays.asList(new
KeySchemaElement("title", KeyType.HASH), // partition key
 new KeySchemaElement("year", KeyType.RANGE)), // sort key
 Arrays.asList(new AttributeDefinition("title", ScalarAttributeType.S),
 new AttributeDefinition("year", ScalarAttributeType.N)),
 new ProvisionedThroughput(5L, 5L));
 table.waitForActive();
System.out.println("OK. Table status: " + table.getDescription().getTableStatus());
 }
 catch (Exception e) {
System.err.println("Unable to create table: ");
System.err.println(e.getMessage());
 }
 }
}

Exemplos de conexão em outras linguagens

Para mais exemplos, consulte Introdução ao DynamoDB e aos AWS SDKs.