DAX SDK for Go
Siga este procedimento para executar o exemplo do SDK for Go para Amazon DynamoDB Accelerator (DAX) em sua instância do Amazon EC2.
Para executar o exemplo do SDK for Go para DAX
-
Configure o SDK for Go em sua instância do Amazon EC2:
-
Instale a linguagem de programação Go (
Golang).sudo yum install -y golang -
Verifique se o Golang está instalado e funcionando corretamente.
go versionUma mensagem semelhante a esta deve ser mostrada.
go version go1.15.5 linux/amd64As instruções restantes dependem do suporte do módulo, o qual se tornou o padrão com o Go versão 1.13.
-
-
Instale o aplicativo de exemplo do Golang.
go get github.com/aws-samples/aws-dax-go-sample -
Execute os seguintes programas do Golang. O primeiro programa cria uma tabela do DynamoDB chamada
TryDaxGoTable. O segundo programa grava dados na tabela.go run ~/go/pkg/mod/github.com/aws-samples/aws-dax-go-sample@v1.0.2/try_dax.go -service dynamodb -command create-tablego run ~/go/pkg/mod/github.com/aws-samples/aws-dax-go-sample@v1.0.2/try_dax.go -service dynamodb -command put-item -
Execute os seguintes programas do Golang.
go run ~/go/pkg/mod/github.com/aws-samples/aws-dax-go-sample@v1.0.2/try_dax.go -service dynamodb -command get-itemgo run ~/go/pkg/mod/github.com/aws-samples/aws-dax-go-sample@v1.0.2/try_dax.go -service dynamodb -command querygo run ~/go/pkg/mod/github.com/aws-samples/aws-dax-go-sample@v1.0.2/try_dax.go -service dynamodb -command scanAnote as informações de tempo: o número de milissegundos necessários para os testes
GetItem,QueryeScan. -
Na etapa anterior, você executou os programas no endpoint do DynamoDB. Agora, execute os programas novamente, mas, desta vez, as operações
GetItem,QueryeScansão processadas pelo cluster do DAX.Para determinar o endpoint do cluster do DAX, escolha uma das seguintes opções:
-
Usando o console do DynamoDB: escolha seu cluster do DAX. O endpoint do cluster é mostrado no console, como no exemplo a seguir.
dax://my-cluster.l6fzcv.dax-clusters.us-east-1.amazonaws.com -
Usando a AWS CLI: insira o comando a seguir.
aws dax describe-clusters --query "Clusters[*].ClusterDiscoveryEndpoint"O endpoint do cluster é mostrado na saída, como no exemplo a seguir.
{ "Address": "my-cluster.l6fzcv.dax-clusters.us-east-1.amazonaws.com", "Port": 8111, "URL": "dax://my-cluster.l6fzcv.dax-clusters.us-east-1.amazonaws.com" }
Agora, execute os programas novamente, mas, desta vez, especifique o endpoint do cluster como um parâmetro de linha de comando.
go run ~/go/pkg/mod/github.com/aws-samples/aws-dax-go-sample@v1.0.2/try_dax.go -service dax -command get-item -endpoint my-cluster.l6fzcv.dax-clusters.us-east-1.amazonaws.com:8111go run ~/go/pkg/mod/github.com/aws-samples/aws-dax-go-sample@v1.0.2/try_dax.go -service dax -command query -endpoint my-cluster.l6fzcv.dax-clusters.us-east-1.amazonaws.com:8111go run ~/go/pkg/mod/github.com/aws-samples/aws-dax-go-sample@v1.0.2/try_dax.go -service dax -command scan -endpoint my-cluster.l6fzcv.dax-clusters.us-east-1.amazonaws.com:8111Observe o restante da saída e anote as informações de tempo. Os tempos decorridos para
GetItem,QueryeScandevem ser significativamente mais baixos com o DAX do que com o DynamoDB. -
-
Execute o seguinte programa Golang para excluir a
TryDaxGoTable.go run ~/go/pkg/mod/github.com/aws-samples/aws-dax-go-sample@v1.0.2/try_dax.go -service dynamodb -command delete-table