DynamoDB初体验

2024-01-21 01:32
文章标签 初体验 dynamodb

本文主要是介绍DynamoDB初体验,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

前言

DynamoDB作为AWS云服务一部分,也支持本地化应用,本章将介绍如何在本地构建基础运行环境。

本章概要

  • 安装DynamoDB Local;
  • AWS CLI安装;
  • AWS CLI使用

安装DynamoDB Local

  • 通过官方下载安装文件,下载完成后直接解压即可;

启动服务

  • 通过如下命令即可启动:java -Djava.library.path=./DynamoDBLocal_lib -jar DynamoDBLocal.jar -sharedDb
    image

  • 其默认端口为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查看安装的是否是最新版本以及确认安装完成:
    image

AWS CLI使用

通过上面两个步骤已经确认DynamoDB服务、AWS CLI安装成功,下面就来尝试连接新建一个表。

  • 首先通过自定义的startup.bat批处理启动服务
    image
  • CLI连接,此时可能会看到如下错误
You must specify a region. You can also configure your region by running "aws configure".
  • 我们需要通过aws configure配置CLI,但由于是本地服务应用,其参数配置可以随意:
    image
  • 我们尝试创建一个musiccollection表
    image
    可以看到其并没有创建成功,而是提示我们认证token是无效的请求。没关系,说明连接成功了。
  • 继续通过aws dynamodb list-tables –endpoint-url http://localhost:8765指令查看所有的表列表:
    image
    没有任何表,命令执行成功。

总结

通过本章完成了本地DynamoDB的基本使用,为后续的研究提供了基础。

这篇关于DynamoDB初体验的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/627974

相关文章

Node.js初体验 Kali安装Node.js

背景:偶然看到node.js开发微信公众号的视频,有些好奇,想要接触下。然后花了两个小时在实验楼网站上在线学习了JavaScript的基础知识,以及Node.js的基础 接着本着从实践出发的原则 先去本地kali下安装个Node.js玩玩 下载地址:https://nodejs.org/en/download/ 网页最下面有提示:Note: Python 2.6 or 2.7 is requ

html初体验标准标签

<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><title>Document</title></head><body><input type="text"></body></html> 内容展示

【 OpenHarmony 4.1 Launcher 源码解析 】-- 初体验

前言 最近因为业务需要,需要做一款 UI 定制的鸿蒙 Launcher,于是就开始了「找到代码」、「研究代码」、「魔改代码」的套路流程,仅以此文章作为知识备份和技术探讨所用,也希望能给其他小伙伴提供一些源码的解析思路,方法大家各自魔改! 一、官方简介 Gitee codes:应用子系统/Launcher Launcher 作为系统人机交互的首要入口,提供应用图标的显示、点击启动、卸载应

通义千问AI PPT初体验:一句话、万字文档、长文本一键生成PPT!

大家好,我是木易,一个持续关注AI领域的互联网技术产品经理,国内Top2本科,美国Top10 CS研究生,MBA。我坚信AI是普通人变强的“外挂”,专注于分享AI全维度知识,包括但不限于AI科普,AI工具测评,AI效率提升,AI行业洞察。关注我,AI之路不迷路,2024我们一起变强。 你有多久没有听到国内AI大模型的最新消息了? 不是国内AI领域不卷了,而是“卷”的方向变了。2023年卷

华为云 Flexus X 实例使用测评:上手初体验,比想象的更丝滑

华为云 Flexus 云服务是华为云推出的一款主打柔性算力,高效性能,高安全,高性价比的旗舰级云服务产品。主要面向金融、游戏、零售、直播等高负载业务场景,比较适合当前绝大数企业的一些云上需求。你可以根据你应用需要的性能,配置不同的规格。 上手初体验 现在,我们以一款实例配置为例,介绍华为云 Flexus X 的上手体验。 进入到华为云 Flexus 云服务的首页,点击购买按钮,进入配置页

GPT-SoVITS-WebUI 初体验

一、安装   conda create -n GPTSoVits python=3.9 #

Pyhton3+openCV3初体验

其中python3采用的anaconda进行Python的安装与库的管理。 安装好anaconda后,就可以通过anaconda来安装opencv了。打开Anaconda Prompt命令行程序,输入conda list,可以查看已安装的库。 输入conda install --channel https://conda.anaconda.org/menpo opencv3 可以对opencv

DynamoDB 小结

DynamoDB 简介 DynamoDB 是AWS 提供一个 NoSql 数据库服务。它是一个Region级别的服务,针对用户对读写性能的要求进行不同的收费。 注意 dynamodb 库中对一些数据类型支持不友好,dynamodb2 中对这些问题进行了完善。 遇到的问题 表项并发更新问题 dyanmo 数据表中数据进行 partial_save 时,产生ConditionChec

2019idea 创建springboot项目初体验

一.创建一个springboot工程 1.创建工程 2、选择Spring Initrializr 点击Next 3.设置包名,项目名,以及最后需要打包的类型,这里设置成war,点击Next 4.选择web,web,点击Next5.添加项目本地路径配置信息 6.项目已经创建完成.创建Test类,添加@RestCOntroller注解,方法上添加@GetMapping或者PostMapping等

jpa初体验

近期在做项目的时候,项目框架已定,底层都是手写的mapper,哪怕是最最简单的单表增删改,而且在接手这个项目的时候发现,前人在写这个项目的时候没有注意项目的封装性,真是想到哪里写到哪里,没有抽出公共的。于是乎这块但凡加个新的功能,就需要重新写sql,比较的麻烦,维护的时候感觉也很糟糕。     于是想到了之前在前一家公司的时候采取的做法,都是直接用的公共的,有直接使用generator直