Tag: amazon dynamodb

删除dynamodb中的嵌套属性

假设我在dynamodb中获得了这个项目: { "customerId": "customer_001", "customerName: "itsme", "address": { "city": "Frankfurt", "country": "Germany", "street1": "c/o Company xxx", "street2": "Europe", "street3": "PO Box 406", "zip": "12345" } } 我需要从项目中删除嵌套的属性address.street3。 我怎么能做到这一点? 这是我的代码,它完美地删除非嵌套的属性(例如:customerName),但如果我尝试使用嵌套属性(例如:address.street3)不起作用(没有错误及没有发生) const params = { TableName: customerTable, Key: { customerId: customerId, }, AttributeUpdates: { 'address.street3': { Action: 'DELETE' } } }; dynamoDb.update(params, function (err, data) { if […]

DynamoDB,使用AWS Lambda(NodeJS运行时)映射值的dynamicprimefaces更新

我正在试图弄清楚如何在源数据包含映射值的项目上执行primefaces更新,这些映射的键值是dynamic的。 如果你看下面的示例数据,我想弄清楚如何在同一个项目上对BSSentDestIp和BSRecvDestIp中的值进行primefaces更新。 我正在阅读文档,但我唯一能find的就是list_append ,这会给我一个附加的键/值列表,我将需要遍历和总结。 http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Expressions.UpdateExpressions.html input数据示例: { "RecordId": 31, "UUID": "170ae748-f8cf-4df9-6e08-c0c8a5f029d4", "UserId": "username", "DeviceId": "e0:cb:4e:53:ae:ff", "ExpireTime": 1501445446, "StartTime": 1501441846, "EndTime": 1501441856, "MinuteId": 10, "PacketCount": 1028, "ByteSum": 834111, "BSSent": 98035, "BSRecv": 736076, "BSSentDestIp": { "151.101.129.69": 2518, "192.168.1.254": 4780, "192.168.1.80": 14089, "192.33.31.162": 2386, "54.239.30.232": 21815, "54.239.31.129": 6423, "54.239.31.69": 3255, "54.239.31.83": 18447, "98.138.253.109": 3020 }, "BSRecvDestIp": { "151.101.129.69": […]

DynamoDB Local在closures实例后删除数据

我正在为我的应用程序使用DynamoDB Local,并且每次closures实例时都会删除所有示例数据。 有谁知道为什么发生这种情况? 我试图查看它,但我没有看到其他人有这个问题。 我已经使用了dynamodb的可下载版本,并使用这个命令: dynamodb_local_latest baopham$ java -Djava.library.path=./DynoDBLocal_lib -jar DynamoDBLocal.jar -sharedDb -inMemory启动和实例。 我错过了什么? 谢谢。

在dynamodb中使用nodejs在列表内search

我正在做一个项目,我们正在使用Dynamodb作为数据库,我有一个这样的结构的文档: { "shop_id": "hh-delightme", "shoppers": [ { "email": "hatim.haffane@gmail.com", "name": "hatim haffane" }, { "email": "xxx.zzz@gmail.com", "name": "bxdsf sdf sd f" } ] },{ "shop_id": "it-delightme", "shoppers": [ { "email": "hatim.haffane@gmail.com", "name": "hatim haffane" }, { "email": "xxx.zzz@gmail.com", "name": "bxdsf sdf sd f" } ] } 我有两个索引shop-id-index和email-index,所以我想要做的是在shop_id“hh-delightme”中得到带有“hatim.haffane@gmail.com” 我试过这个代码,但没有成功 var params = { TableName:"shopper", KeyConditionExpression:"shop_id = […]

无法在dynamodb-local-aws中创build表

我正在使用dynamoDB-local和nodejs代码。 我有以下代码: var aws = require("aws-sdk") aws.config.update({"accessKeyId": "aaa", "secretAccessKey": "bbb", "region": "us-east-1"}) var awsdb = new aws.DynamoDB({ endpoint: new aws.Endpoint("http://localhost:8000") }); awsdb.createTable({ TableName: 'myTbl', AttributeDefinitions: [ { AttributeName: 'aaa', AttributeType: 'S' }, ], KeySchema:[ { AttributeName: 'aaa', KeyType: 'HASH' } ] }, function() { awsdb.listTables(function(err, data) { console.log(data) }); }); 但是这不是创build表格。 我在日志中获得{ TableNames: [] } […]

如何从s3存储和检索dynamodb中的照片url?

我正在将许多图像存储在AWS S3中。 我需要从S3中检索URL并将其存储在DynamoDB中。 我不清楚如何通过NodeJS做到这一点。 有人可以解释一下如何使用Lambda函数吗?

node.js AWS dynamodb updateItem

是否可以通过updateItem实现以下几点:1.如果DynamoDB中不存在属性,则添加属性2.如果属性存在于DynamoDB中,则更新属性3.如果属性未包含在属性中,请保留这些属性的参数。 以下是一个示例:这是DynamoDB中的对象: { id: "1234", variable1: "hello", variable2: "world" } 这是我想要更新的input: { id: "1234", variable1: "hello2", variable23: "dog" // the variable name "variable23" could be anything } 以下是我想要实现的DynamoDB中的更新项目: { id: "1234", variable1: "hello2", variable2: "world", variable23: "dog" } “variable23”可以是任何variables名称作为input。 请帮忙! 我使用node.js,我真的很感激,如果有人能告诉我一些代码如何实现这一点。 谢谢!

如何使用非主键字段查询DynamoDB?

我在我的dynamoDB表中有以下数据。 这是我的代码: const userStatusParams = { TableName: process.env.USERSTATUS_TABLE, KeyConditionExpression: "loggedIn = :loggedIn", ExpressionAttributeValues: { ":loggedIn": true } }; var usersResult; try { usersResult = await dynamoDbLib.call("query", userStatusParams); console.log(usersResult); }catch (e) { console.log("Error occurred querying for users belong to group."); console.log(e); } 亚马逊返回这个错误: { ValidationException: Query condition missed key schema element: userId at Request.extractError … 我怎样才能返回logging在所有logging==真? […]

查询条件丢失关键架构元素:validation错误

我正在试图使用下面的代码查询dynamodb : const AWS = require('aws-sdk'); let dynamo = new AWS.DynamoDB.DocumentClient({ service: new AWS.DynamoDB( { apiVersion: "2012-08-10", region: "us-east-1" }), convertEmptyValues: true }); dynamo.query({ TableName: "Jobs", KeyConditionExpression: 'sstatus = :st', ExpressionAttributeValues: { ':st': 'processing' } }, (err, resp) => { console.log(err, resp); }); 当我运行这个,我得到一个错误说: ValidationException: Query condition missed key schema element: id 我不明白。 我已经将id定义为jobs表的分区键,并且需要find所有处于processing状态的作业。

编写node.js apicallback与否

伙计,假设一个使用NOSQL后端(mongo或dynamo)的NodeJS(restify.js)编写的API。 当你有一个阻塞操作,比如读写文件时,总是用非阻塞的方式写东西的好主意……但是,当你的操作需要几毫秒才能完成时,你应该使用callback函数吗? ? 设想一下诸如https://api.foo.com/v1/bar/baz之类的 api调用,将其路由到一个能够从NoSQL引擎快速响应的函数,以JSON格式化响应并将其放回到浏览器中。 在这种情况下,你应该使用回叫? 编写这个扩展到数百个并发请求。 谢谢!