Amazon DynamoDB
开发人员指南 (API 版本 2012-08-10)
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

.NET 和 DAX

执行以下步骤,以在 Amazon EC2 实例上运行 .NET 示例。

注意

本教程使用 .NET Core 开发工具包。它介绍如何在默认 Amazon VPC 中运行程序,以访问您的 Amazon DynamoDB Accelerator (DAX) 集群。如果您愿意,可以使用 AWS Toolkit for Visual Studio 编写 .NET 应用程序并将其部署到您的 VPC 上。

有关更多信息,请参阅 AWS Elastic Beanstalk 开发人员指南 中的在 .NET 中使用 AWS Toolkit for Visual Studio 创建和部署 Elastic Beanstalk 应用程序

  1. 转到 https://www.microsoft.com/net/download/linux 并下载适用于 Linux 的最新 .NET Core 开发工具包。下载文件命名如下:dotnet-sdk-N.N.N-linux-x64.tar.gz

  2. 提取 .NET Core 文件:

    mkdir dotnet tar zxvf dotnet-sdk-N.N.N-linux-x64.tar.gz -C dotnet

    N.N.N 替换为 .NET Core 开发工具包的实际版本号,例如:2.1.4

  3. 验证安装:

    alias dotnet=$HOME/dotnet/dotnet dotnet --version

    这应输出 .NET Core 开发工具包的版本号。

    注意

    您收到的可能不是版本号而是以下错误:

    error: libunwind.so.8: cannot open shared object file: No such file or directory

    要解决此错误,请安装 libunwind 包:

    sudo yum install -y libunwind

    完成此操作后,您应该能够运行 dotnet --version 命令而且不会出现任何错误。

  4. 创建新的 .NET 项目:

    dotnet new console -o myApp

    这需要几分钟时间以执行一次性设置。完成后,请运行示例项目:

    dotnet run --project myApp

    您应该会收到以下消息:Hello World!

  5. myApp/myApp.csproj 文件包含有关您的项目的元数据。要在应用程序中使用 DAX 客户端,您需要修改文件,以便它看上去如下所示:

    <Project Sdk="Microsoft.NET.Sdk"> <PropertyGroup> <OutputType>Exe</OutputType> <TargetFramework>netcoreapp2.0</TargetFramework> </PropertyGroup> <ItemGroup> <PackageReference Include="AWSSDK.DAX.Client" Version="1.0.0" /> </ItemGroup> </Project>
  6. 下载示例程序源代码 (.zip 文件):

    wget http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/samples/TryDax.zip

    下载完成后,解压缩源文件:

    unzip TryDax.zip
  7. 现在,运行示例程序,一次运行一个。对于每个程序,将其内容复制到 myApp/Program.cs,然后运行 MyApp 项目。

    运行以下 .NET 程序:

    cp 01-CreateTable.cs myApp/Program.cs dotnet run --project myApp cp 02-Write-Data.cs myApp/Program.cs dotnet run --project myApp

    第一个程序将创建一个名为 TryDaxTable 的 DynamoDB 表。第二个程序将向表中写入数据。

  8. 现在,运行一些程序以在您的 DAX 集群上执行 GetItemQueryScan 操作。要确定 DAX 集群的终端节点,请选择下列选项之一:

    • 使用 DynamoDB 控制台 — 选择您的 DAX 集群。集群终端节点将显示在控制台中,例如:

      mycluster.frfx8h.clustercfg.dax.usw2.amazonaws.com:8111
    • 使用 AWS CLI — 键入以下命令:

      aws dax describe-clusters --query "Clusters[*].ClusterDiscoveryEndpoint"

      集群终端节点端口和地址显示在输出中,例如:

      { "Port": 8111, "Address":"mycluster.frfx8h.clustercfg.dax.usw2.amazonaws.com" }

    现在运行以下程序,将您的集群终端节点指定为命令行参数。(将示例终端节点替换为您的实际 DAX 集群终端节点。)

    cp 03-GetItem-Test.cs myApp/Program.cs dotnet run --project myApp mycluster.frfx8h.clustercfg.dax.usw2.amazonaws.com:8111 cp 04-Query-Test.cs myApp/Program.cs dotnet run --project myApp mycluster.frfx8h.clustercfg.dax.usw2.amazonaws.com:8111 cp 05-Scan-Test.cs myApp/Program.cs dotnet run --project myApp mycluster.frfx8h.clustercfg.dax.usw2.amazonaws.com:8111

    记下计时信息 — GetItemQueryScan 测试所需的时间(以毫秒为单位)。

  9. 运行以下 .NET 程序删除 TryDaxTable

    cp 06-DeleteTable.cs myApp/Program.cs dotnet run --project myApp

有关这些程序的更多信息,请参阅以下各部分: