我尝试使用下面给出的代码将json对象存储在dynamodb中。
exports.handler = function (event, context, callback) {
var docClient = new AWS.DynamoDB.DocumentClient();
var table = "Logs";
id_val = 1
var params = {
TableName: table,
Item: {
"id": id_val,
"message": event
}
};
docClient.put(params, function(err, data) {
if (err) {
callback(null, JSON.stringify(err, null, 2));
context.fail("Unable to add item. Error JSON:", JSON.stringify(err, null, 2));
}
});
}
输入事件
[
{
"id": 1,
"demographic": {
"firstName": "John",
"middleName": "w",
"lastName": "Doe",
"suffix": "jr",
"birthDate": "1990-02-02",
"gender": "M",
"ssn": 123
}
}
]
表格中存储的内容
{
"id": {
"N": "84.20420287568176"
},
"message": {
"L": [
{
"M": {
"demographic": {
"M": {
"birthDate": {
"S": "1990-02-02"
...
...
...
为什么数据类型存储在表中?如何将其分解以便分别存储属性?
答案 0 :(得分:1)
这就是dynamoDB存储数据的方式,因为当我们查看数据时,我们应该能够知道该字段的数据类型,这与关系数据库中的列的数据类型非常相似。虽然当我们通过实际应用程序或API从dynamoDB获取数据时,数据在dynamoDB中存储和显示,但我们可以删除数据类型,这将只返回实际数据。