问题标签 [dynamo-local]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
amazon-dynamodb - 如何在 dynamo DB 上查询嵌套属性
我有以下方式的数据结构。我想检索所有具有subjectName PHYSICS PAPER-I 和marksGained 40 的记录。
是否可以查询此类记录?我们可以使用其他库来实现这一目标吗?
bash - DynamoDB Local - 以 bash 别名开头时缺少表
我已经在我的 Mac 上本地安装了 DynamoDB ( http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/DynamoDBLocal.html ),并且我编写了一个 bash 别名,旨在避免cd
进入 DynamoDB 目录和跑
$ java -Djava.library.path=./DynamoDBLocal_lib -jar DynamoDBLocal.jar -sharedDb
每次我想启动数据库。但是,别名似乎没有按预期工作......
首先,我写的别名是
alias ddb-start="java -Djava.library.path=~/Documents/dynamodb/DynamoDBLocal_lib -jar ~/Documents/dynamodb/DynamoDBLocal.jar -sharedDb"
当我运行时$ ddb-start
,数据库按预期启动:
问题是,除非我从 运行脚本,否则我的~/Documents/dynamodb/
所有表都丢失了。
所以如果我再跑cd
,一切都很完美。但是,如果我打开一个新的终端窗口并运行(或从 以外的任何地方运行它),Dynamo 似乎会正常启动,但是当我在 JavaScript Shell 中列出表时,没有表。Documents/dynamodb/
$ ddb-start
$ ddb-start
Documents/dynamodb/
我希望能够从任何目录运行别名并让 Dynamo 正确启动和运行。我必须cd
进入目录,即使有别名?还是我写的别名有问题?
*** 啊,我注意到,无论我从哪个目录运行它,shared-local-instance.db
都会在该目录中创建一个副本。我不希望这种情况发生,我希望它指向shared-local-instance.db
. ~/Documents/dynamodb/
我怎样才能做到这一点?
amazon-web-services - AWS 环境变量提供商不接受凭证
我正在使用以下代码在本地连接 dynamoDb
我的.env
档案
我收到此错误
access key
也尝试了&的基本硬编码,secret key
但它似乎并没有在每次从默认路径获取时都有效~/.aws/credentials
TIA
amazon-dynamodb - 根据日期从 dynamodb 中删除项目
我是 dynamodb 的新手,我可以根据密钥删除项目。
下面是代码片段:
我需要从我的表中删除不到 7 天的项目。我的表有一个名为“created_at”的字段,格式为“2017-10-25 14:54:52.278”
javascript - batchWriteItem() 返回不一致的结果
在节点 js 中,我尝试使用 batchWriteItem() 将记录写入 dynamoDB 表。
在我第一次调用函数 insertTransactionDetails() 时,我发送 9 条记录以插入,而在第二次调用同一函数时,我发送 2 条记录。
每次运行时插入到表中的最终记录都不同。
测试 1: 我看到第一次调用的 4 条记录,其次是第二次调用的 2 条记录,然后是第一次函数调用的 3 条记录。 测试 2: 我看到第一次调用的 2 条记录,其次是第二次调用的 2 条记录,然后是第一次函数调用的 5 条记录。
预期结果是从第一个函数调用中看到 9 条记录,然后是从第二次函数调用中看到 2 条记录。
我还注意到,由于某种原因,每次只插入 9 条记录,而不是总共 11 条记录(9+ 2)。
我已经尝试了很多调试和在线搜索,但无法理解根本原因。我将非常感谢有人帮助我在这里找到问题。非常感谢。
函数同时被称为insertTransactionDetails(dataToInsert,0,bulkSearchParams)。dataToInsert[][] 是一个二维数组。对于这个测试数据,它的大小将分别是 2 个调用的dataToInsert[0][9]和dataToInsert[0][2]。
batchWriteItem() 返回的数据粘贴在下面,显示 UnprocessedItems为空 {},这让我相信表配置不是问题。
下面是代码。
lambda - 如何在本地使用 dynamoDb 和 lambda
我认为这可能吗?我在 sam 模板中定义了一个 lambda 和 api 网关。我使用 sam-local 来启动它。在我的 lambda 中,我想连接到我的本地 dynamoDB,但 lambda 一直超时。代码如下:
如果此代码在 lambda 之外运行,则可以正常工作
amazon-dynamodb - IN 运算符提供的操作数过多;操作数:119 dynamodb
尝试在 dynamodb 中使用 IN 操作,但出现以下错误。任何人都可以帮我提供替代解决方案吗?
变量参数 = {
};
错误 :: {
}
python-3.x - AWS(SAM 本地)Lambda 读/写关闭管道错误
我有一个非常简单的函数(py3.6),我正在sam-local
通过它运行它start-api
,我正在使用一个充满curl
帖子的 shell 脚本进行测试:
validate_json
该测试在大约 95% 的时间在正确的用例中运行良好,但在引发 anException
尽管被捕获,或者当post_to_dynamo_db_local
短路并提前返回(对象已经在 DB 中,返回)时失败(不一致)。
*我说正确的用例在大约 95% 的情况下都有效,因为有时我触摸东西但它失败了,但我触摸东西很可能是原因。虽然未经证实!
根据sam-local
控制台,该函数似乎正确返回:
但是curl
直到请求超时才收到响应:
大约在同一时间sam-local
控制台响应:
有任何想法吗?对于这样一个简单的任务,函数运行时间似乎异常高,我认为这里的内存不应该是一个问题......
失败案例流程:
开始->检查输入(字符串)->引发异常->捕获异常->返回响应(字符串)
补充:有几件事有帮助:
- 在卷发之间睡觉(最多尝试 10 秒,但偶尔仍会出错
- 不缓存对表的引用(因此现在应该很快收集它们
java - 使用 Gradle 设置 AWS 开发环境
我正在为开发人员设置一个便利脚本,以便能够快速启动和运行,而无需启动多个终端会话、启动 DynamoDB、创建表,然后启动 SAM Local API 来模拟请求。我决定用 Gradle 来做这件事,部分原因是我想更好地学习 Gradle,但也因为它提供了一个简单的包装器,可以包含在 repo、可定制的任务和 Java 依赖项管理中。
所以我确定的步骤是:
- 获取 DynamoDB 本地 jar
- 启动它
- 创建表
- 启动 AWS Sam 本地 API
我遇到了 jar 主类无法找到依赖库的问题。这是构建gradle
如您所见,我将二进制文件放在构建目录中,以便 Gradle 可以根据需要对其进行清理,Gradle 还包含所需的库以及 DynamoDbLocal-1.10.57.jar,如下所示:
下面是 Gradle 任务的终端堆栈跟踪
所以它无法在 jar 的主运行器中找到 org/apache/commons/cli/ParseException 类。我必须使用 JDGui 打开清单并找到 runner 类是什么,所以我也可能不正确?
amazon-web-services - 使用多个字段动态扫描 DynamoDB 集合
我正在使用 springboot 和 DynamoDB 作为数据库创建一个 REST 服务。我有一个 StudentDTO 类,其中包含以下字段和 Subject 类,其主题信息为 (key,value pair) :
我有一些需要获取数据的标准。这些标准可能会有所不同。下面是一些例子:
- 可以获取关于名称、id 的数据 ("id":1,"name":"joe")
- 可以获取关于姓名、主题信息的数据 ("name":"joe",subjects:"[{"key":"S1","value":"Geography"},{"key":"S2","value “:“历史”}]”)
- 可能需要姓名、年份的数据
没有可以构建查询的固定标准组合。我尝试使用 DynamoDBScanExpression,但无法确定如何设置 filterExpression。
创建了 (key,value) 的映射,例如 (,)
我可以创建属性名和属性值(都在 DynamoDBDAO.java 中):
扫描查询
但是在 SCAN() 函数中它给出了异常:
请建议。