Amazon DocumentDB 入门 - Amazon DocumentDB
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

Amazon DocumentDB 入门

可通过多种方式进行连接和开始使用 Amazon DocumentDB。我们创建此指南是因为我们发现这种方式是用户开始使用我们强大的文档数据库的最快捷、最简单和最简单的方法。本指南使用Amazon Cloud9,这是一个基于 Web 的终端,用于直接从Amazon Web Services Management Console. 有资格使用 Amazon 免费套餐的 Amazon 新客户可免费使用 Amazon Cloud9。如果您的Amazon Cloud9环境使用免费套餐之外的资源,您需要以正常的Amazon这些资源的利率。本指南将帮助您在不到 15 分钟的时间内开始使用 Amazon DocumentDB,预期成本低于 0.10 美元/小时。

注意

Amazon DocumentDB 没有免费套餐。有关定价的更多信息,请参阅Amazon DocumentDB(与 MongoDB 兼容)定价.

如果您希望通过创建到 Amazon EC2 实例的 SSH 连接从本地计算机连接到 Amazon DocumentDB,请参阅使用 EC2 指令 Connect

Prerequisites

在创建第一个 Amazon DocumentDB 集群之前,您必须执行以下操作:

创建 Amazon Web Services (Amazon) 帐户

开始使用 Amazon DocumentDB 之前,您必须具有 Amazon Web Services (Amazon) 帐户。Amazon 账户是免费的。您只需为使用的服务和资源付费。

如果您还没有 Amazon Web Services 账户,请完成以下步骤创建一个。

注册 Amazon Web Services 账户

  1. 打开 https://portal.aws.amazon.com/billing/signup

  2. 按照屏幕上的说明进行操作。

    在注册时,您将接到一通电话,要求您使用电话键盘输入一个验证码。

设置所需的Amazon Identity and Access Management(IAM) 权限。

访问以管理 Amazon DocumentDB 资源(如集群、实例和集群参数组)时需要提供Amazon可以使用对您的请求进行身份验证。有关更多信息,请参阅 Amazon DocumentDB 中的 Identity and Access Management

  1. 在Amazon Web Services Management Console,在 IAM 中键入并选择IAM在显示的下拉菜单中。

  2. 在 IAM 控制台中,选择用户从导航窗格中。

  3. 选择您的用户名。

  4. 单击按钮添加权限.

  5. 选择 Attach existing policies directly (直接附加现有策略)

  6. 类型AmazonDocDBFullAccess,然后在搜索结果中出现后将其选中。

  7. 点击底部的蓝色按钮后续:审核

  8. 点击底部的蓝色按钮添加权限.

创建 Amazon Virtual Private Cloud (Amazon VPC)

仅当您还没有默认 Amazon VPC 时才需要执行此步骤。如果未安装,则完成Amazon VPC 入门中的Amazon VPC User Guide. 这将需要不到五分钟的时间。

第 1 步:创建 Amazon Cloud9 环境

Amazon Cloud9提供了基于 Web 的终端,您可以使用该终端来连接和查询 Amazon DocumentDB 集群。

  1. 从Amazon Web Services Management Console导航到Amazon Cloud9控制台并选择创建 环境.

  2. 环境名称和描述部分,在名称字段中,输入DocumentDBCloud9.

  3. 选择下一步

  4. 配置设置部分中,选择下一步.

  5. 审核部分,选择。创建 环境.

注意

预配置Amazon Cloud9环境需要最多三分钟。

第 2 步:创建安全组

通过此安全组,Amazon DocumentDB 可以从Amazon Cloud9环境。

  1. 在存储库的Amazon EC2 管理控制台,在下网络和安全性中,选择安全组.

  2. 选择创建安全组

  3. 基本细节框中,为每个字段输入以下内容:

    • For 安全组名称, enter 演示数据库.
    • For 说明, enter a description.
    • For VPC, accept the usage of your default VPC.
  4. 入站规则部分中,选择添加规则

  5. 对于 Type,选择 Custom TCP Rule

  6. 适用于端口范围,输入27017.

  7. 源是Amazon Cloud9您刚刚创建的环境。要查看可用安全组的列表,请输入cloud9在目标字段中。选择名称为aws-cloud9-<environment name>.

  8. 接受所有其他默认值,然后选择创建安全组.

注意

端口 27017 是 Amazon DocumentDB 的默认端口。

第 3 步:创建 Amazon DocumentDB 集群

在此步骤中,您将使用您在上一步中创建的安全组来创建 Amazon DocumentDB 集群。

  1. 在 Amazon DocumentDB 管理控制台上,在集群中,选择Create.

  2. 在 “创建 Amazon DocumentDB 集群” 页面上的配置部分,选择。1对于 来说为实例的数量. 选择一个实例有助于将成本降至最低 如果这是一个生产系统,建议预配置三个实例以实现高可用性。您可以将其他设置保留在配置部分的默认值。

  3. 身份验证部分中,输入用户名和密码。

  4. 启用 。显示高级设置.

  5. Network settings (网络设置)部分,用于VPC 安全组中,选择演示数据库.

  6. 选择 Create Cluster (创建集群)

Amazon DocumentDB 现在正在配置您的集群,这可能需要几分钟的时间才能完成。当集群和实例状态显示为Available.

第 4 步:安装 mongo shell

您现在将在您的Amazon Cloud9在步骤 1 中创建的环境。mongo shell 是一个命令行实用程序,您可以使用它连接和查询您的 Amazon DocumentDB 集群。

  1. 如果您的Amazon Cloud9环境仍在步骤 1 中打开,请返回到该环境并跳到指令 3。如果你导航远离你Amazon Cloud9环境中的Amazon Cloud9管理控制台,在您的环境,找到标记为文档数据库云 9. 选择打开 IDE.

  2. 在命令提示符处,使用以下命令创建存储库文件:

    echo -e "[mongodb-org-4.0] \nname=MongoDB Repository\nbaseurl=https://repo.mongodb.org/yum/amazon/2013.03/mongodb-org/4.0/x86_64/\ngpgcheck=1 \nenabled=1 \ngpgkey=https://www.mongodb.org/static/pgp/server-4.0.asc" | sudo tee /etc/yum.repos.d/mongodb-org-4.0.repo
  3. 完成后,使用以下命令安装 mongo shell:

    sudo yum install -y mongodb-org-shell
  4. 要加密传输中的数据,请从https://s3.amazonaws.com/rds-downloads/rds-combined-ca--cn-bundle.pem. 此操作将下载名为 rds-combined-ca-bundle.pem 的文件。

    wget https://s3.amazonaws.com/rds-downloads/rds-combined-ca-cn-bundle.pem
    注意

    默认情况下,在 Amazon DocumentDB 上启用了传输中的加密。您可以选择禁用 TLS。有关更多信息,请参阅 。管理 Amazon DocumentDB 集群 TLS 设置.

第 5 步:Connect 到 Amazon DocumentDB 集群

现在,您将使用您在步骤 4 中安装的 mongo shell 连接到您的 Amazon DocumentDB 集群。

  1. 在 Amazon DocumentDB 管理控制台上,在集群下,找到您的集群。通过单击集群标识符来选择您创建的集群。

  2. 连接性和安全性选项卡,在使用 mongo shell Connect 到此集群,复制提供的连接字符串。忽略复制<insertYourPassword>以便当您连接时,mongo shell 提示您输入密码。

  3. 返回到您的Amazon Cloud9环境并粘贴连接字符串。

当您输入密码时,您的提示将变为rs0:PRIMARY>提示时,您已成功连接到您的 Amazon DocumentDB 集群。

注意

有关排查故障的信息,请参阅Amazon DocumentDB 排查.

第 6 步:插入和查询数据

现在您已连接到集群,您可以运行几个查询以熟悉文档数据库的使用情况。

  1. 要插入单个文档,请输入以下内容:

    db.collection.insert({"hello":"DocumentDB"})
  2. 您将收到以下输出:

    WriteResult({ "nInserted" : 1 })

  3. 您可以阅读您使用findOne()命令(因为它只返回一个文档)。输入以下内容:

    db.collection.findOne()
  4. 您将收到以下输出:

    { "_id" : ObjectId("5e401fe56056fda7321fbd67"), "hello" : "DocumentDB" }

  5. 要执行更多的查询,请考虑游戏配置文件使用案例。首先,将几个条目插入到名为profiles. 输入以下内容:

    db.profiles.insertMany([ { "_id" : 1, "name" : "Matt", "status": "active", "level": 12, "score":202}, { "_id" : 2, "name" : "Frank", "status": "inactive", "level": 2, "score":9}, { "_id" : 3, "name" : "Karen", "status": "active", "level": 7, "score":87}, { "_id" : 4, "name" : "Katie", "status": "active", "level": 3, "score":27} ])
  6. 您将收到以下输出:

    { "acknowledged" : true, "insertedIds" : [ 1, 2, 3, 4 ] }

  7. 使用find()命令返回配置文件集合中的所有文档。输入以下内容:

    db.profiles.find()
  8. 您将获得一个与您在步骤 5 中键入的数据相匹配的输出。

  9. 使用筛选器查询单个文档。输入以下内容:

    db.profiles.find({name: "Katie"})
  10. 你应该得到这个输出:

    { "_id" : 4, "name" : "Katie", "status": "active", "level": 3, "score":27}

  11. 现在让我们尝试找到一个配置文件并使用findAndModify命令。我们将使用以下代码给用户 Matt 额外的十分:

    db.profiles.findAndModify({ query: { name: "Matt", status: "active"}, update: { $inc: { score: 10 } } })
  12. 你会得到以下输出(请注意,他的分数还没有增加):

    { "_id" : 1, "name" : "Matt", "status" : "active", "level" : 12, "score" : 202 }
  13. 您可以通过以下查询验证他的分数是否已更改:

    db.profiles.find({name: "Matt"})

  14. 您将收到以下输出:

    { "_id" : 1, "name" : "Matt", "status" : "active", "level" : 12, "score" : 212 }

步骤 7:了解

恭喜您!您已成功完成 Amazon DocumentDB 入门指南。

下一步是什么? 了解如何充分利用此数据库及其一些常用功能:

注意

通过此入门练习创建的集群将继续产生成本,除非您将其删除。有关指导,请参阅删除 Amazon DocumentDB 集群.