本文主要是介绍DynamoDB初体验,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
前言
DynamoDB作为AWS云服务一部分,也支持本地化应用,本章将介绍如何在本地构建基础运行环境。
本章概要
- 安装DynamoDB Local;
- AWS CLI安装;
- AWS CLI使用
安装DynamoDB Local
- 通过官方下载安装文件,下载完成后直接解压即可;
启动服务
通过如下命令即可启动:java -Djava.library.path=./DynamoDBLocal_lib -jar DynamoDBLocal.jar -sharedDb
其默认端口为8000,且默认的数据存储路径为其根目录;
自定义服务参数
和mongodb非常类似,其在启动时提供了诸多参数协助我们进行服务优化,首先查看官方,其说明如下, DynamoDB 接受以下命令行选项:
- -cors value - 启用适用于 JavaScript 的 CORS 支持(跨源资源共享)。您必须提供特定域的逗号分隔“允许”列表。-cors 的默认设置是星号 (*),这将允许公开访问。
- -dbPath value - DynamoDB 将用于写入其数据库文件的目录。如果不指定此选项,则文件将写入当前目录。请注意,不能同时指定 -dbPath 和 -inMemory。
- -delayTransientStatuses - 使 DynamoDB 为某些操作引入延迟。DynamoDB 几乎可以即时执行某些任务,例如,对表和索引执行创建/更新/删除操作;但是,实际 DynamoDB 服务需要更多时间才能完成这些任务。设置此参数有助于 DynamoDB 更逼真地模拟 Amazon DynamoDB Web 服务的行为。(目前,此参数仅为处于 CREATING 或 DELETING 状态的全局二级索引引入延迟。)
- -help – 打印使用摘要和选项。
- -inMemory – DynamoDB 将在内存中运行,而不使用数据库文件。停止 DynamoDB 时,不会保存任何数据。请注意,不能同时指定 -dbPath 和 -inMemory。
- -optimizeDbBeforeStartup – 在计算机上启动 DynamoDB 之前优化底层数据库表。使用此参数时,必须还要指定 -dbPath。
- -port value - DynamoDB 将用于与应用程序通信的端口号。如果不指定此选项,则默认端口是 8000。
注意:默认情况下,DynamoDB 使用端口 8000。如果端口 8000 不可用,此命令将引发异常。您可以使用 -port 选项指定其他端口号。有关 DynamoDB 运行时选项的完整列表(包括 -port),请键入此命令:- java -Djava.library.path=./DynamoDBLocal_lib -jar DynamoDBLocal.jar -help
- -sharedDb - DynamoDB 将使用单个数据库文件,而不是针对每个证书和区域使用不同的文件。如果指定 -sharedDb,那么所有 DynamoDB 客户端都将与同一组表交互,无论其区域和证书配置如何。
定制化本地启动批处理
避免我们每次均需要切换文件目录通过指令启动服务,我们可以自定义如下批处理文件,实现服务一键启动:
java -Djava.library.path=./DynamoDBLocal_lib -jar DynamoDBLocal.jar -sharedDb -port 8765 -dbPath ./dbdata/
AWS CLI安装
服务安装了,客户端连接工具也是必须的,能够协助我们进行简单的服务测试验证与应用,通过官方地址,其介绍了详细的安装过程。
- 目前的系统版本均比较高,我这里直接通过MSI方式安装;
- 直接运行MSI安装程序;
- 在进行aws –version命令之前,我们优先配置环境变量,避免目录切换之苦;
在环境变量path中添加C:\Program Files\Amazon\AWSCLI\
- 打开cmd,通过aws –version查看安装的是否是最新版本以及确认安装完成:
AWS CLI使用
通过上面两个步骤已经确认DynamoDB服务、AWS CLI安装成功,下面就来尝试连接新建一个表。
- 首先通过自定义的startup.bat批处理启动服务
- CLI连接,此时可能会看到如下错误
You must specify a region. You can also configure your region by running "aws configure".
- 我们需要通过aws configure配置CLI,但由于是本地服务应用,其参数配置可以随意:
- 我们尝试创建一个musiccollection表
可以看到其并没有创建成功,而是提示我们认证token是无效的请求。没关系,说明连接成功了。 - 继续通过aws dynamodb list-tables –endpoint-url http://localhost:8765指令查看所有的表列表:
没有任何表,命令执行成功。
总结
通过本章完成了本地DynamoDB的基本使用,为后续的研究提供了基础。
这篇关于DynamoDB初体验的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!