1. 在DynamoDB当作创建一个新表,然后在项目当中创建,把string value的值填写一下。
  2. 在IAM创建角色附加 AWSLambdaDynamoDBExecutionRole权限
  3. 在lambda中创建函数,选择DynamoDB不附加其他条件的蓝图
  4. 选择第1步创建的DynamoDB表,完成lambda函数的创建。
  5. 打开lambda函数的index.js,代码进行重写,内容如下

var AWS = require('aws-sdk');

var dynamo = new AWS.DynamoDB({

region: 'ap-northeast-1'

});

exports.handler = function(event, context) {

var params = {

"TableName": "sbrtest",         #表名

"KeyConditionExpression":"this = :sbrtest",   #建表时候的关键字和函数名

"ExpressionAttributeValues": {

":sbrtest" : {"S": event.sbrtest}    #函数名

}

};

console.log("event:", event);

dynamo.query(params, function(err, data) {

console.log("dynamo_data:", data);

console.log("dynamo_err:", err);

context.done(null, data);

});

};

  1. 内容进行保存
  2. 对编辑好的表进行测试,测试代码如下

{

"Records": [

{

"eventID": "1",

"eventVersion": "1.0",

"dynamodb": {

"Keys": {

"Id": {

"N": "101"

}

},

"NewImage": {

"Message": {

"S": "New item!"

},

"Id": {

"N": "101"

}

},

"StreamViewType": "NEW_AND_OLD_IMAGES",

"SequenceNumber": "111",

"SizeBytes": 26

},

"awsRegion": "ap-northeast-1",

"eventName": "INSERT",

"eventSourceARN": "arn:aws:dynamodb:ap-northeast-1:382459439888:table/sbrtest0313",

"eventSource": "aws:dynamodb"

},

{

"eventID": "2",

"eventVersion": "1.0",

"dynamodb": {

"OldImage": {

"Message": {

"S": "New item!"

},

"Id": {

"N": "101"

}

},

"SequenceNumber": "222",

"Keys": {

"Id": {

"N": "101"

}

},

"SizeBytes": 59,

"NewImage": {

"Message": {

"S": "This item has changed"

},

"Id": {

"N": "101"

}

},

"StreamViewType": "NEW_AND_OLD_IMAGES"

},

"awsRegion": "ap-northeast-1",

"eventName": "MODIFY",

"eventSourceARN": "arn:aws:dynamodb:ap-northeast-1:382459439888:table/sbrtest0313",

"eventSource": "aws:dynamodb"

},

{

"eventID": "3",

"eventVersion": "1.0",

"dynamodb": {

"Keys": {

"Id": {

"N": "101"

}

},

"SizeBytes": 38,

"SequenceNumber": "333",

"OldImage": {

"Message": {

"S": "This item has changed"

},

"Id": {

"N": "101"

}

},

"StreamViewType": "NEW_AND_OLD_IMAGES"

},

"awsRegion": "ap-northeast-1",

"eventName": "REMOVE",

"eventSourceARN": "arn:aws:dynamodb:ap-northeast-1:382459439888:table/sbrtest0313",

"eventSource": "aws:dynamodb"

}

]

}

  1. 函数页面会显示测试成功
  2. 在DynamoDB的触发选项中,也能够发现出现了新的数据。

lambda和DynamoDB连接的更多相关文章

  1. Lambda方式左连接有Linq方式左连接

    网上查到的直接使用Join+DefaultIfEmpty的方式是错误的,实际生成SQL是两表先内联接,然后再LEFT JOIN.经过查证,参考资料,最终得到如下两种方式的左连接写法: public v ...

  2. Qt——信号槽连接:基于字符串与基于函数的连接之间的不同

    从Qt5.0开始,Qt提供了两种不同的方式进行信号槽的连接:基于 字符串 的连接语法.基于 函数 的连接语法.这两种语法各有利弊,下面对它们的不同点进行总结. 以下几部分详细解释了它们之间的不同,并说 ...

  3. 第二节: 比较EF的Lambda查询和Linq查询写法的区别

    简介 在前面EF的介绍中,曾多次提到过EF可以使用Lambda和Linq来完成对数据库的访问,这两种的语法的具体使用和注意事项在前面的DotNet进阶的系列章节中已经详细介绍过了,本次借着EF章节,重 ...

  4. [AWS] Serverless & Lambda

    因为Lambda 所以Serverless 进化过程 课程章节:https://edu.51cto.com//center/course/lesson/index?id=199646 作用和优势 ev ...

  5. EFCore连接池的坑 差点晚年不保

    长话短说 上个月公司上线了一个物联网数据科学项目,我主要负责前端接受物联网事件,并提供 参数下载. webapp 部署在Azure云上,参数使用Azure SQL Server存储. 最近从灰度测试转 ...

  6. AWS的lambda和S3之间如何连携

    今天正好遇到了这个问题,就在官方文档里查询,然后根据他的说明整理了一下大致的流程,详细的请参考AWS国际版的官方文档,这里只是作者的一个简单的流程展示. Lambda和S3连接 1.在S3的同一区域当 ...

  7. 使用DynamoShake从dynamodb迁移到mongodb

    去年和今年年初,我们开源了MongoShake和RedisShake分别用于MongoDB和Redis的迁移.同步.备份等多种需求.最近,我们的shake系列又进一步壮大,我们推出了一款dynamod ...

  8. 第15.19节 PyQt(Python+Qt)入门学习:自定义信号与槽连接

    老猿Python博文目录 专栏:使用PyQt开发图形界面Python应用 老猿Python博客地址 一.引言 本文利用中介绍了PyQt中的信号和槽机制,除了使用PyQt组件的已有信号外,PyQt和Qt ...

  9. AWS上的游戏服务:Lumberyard + Amazon GameLift + Twitch

    开发一款世界级的游戏是一个非常困难,耗时和昂贵的过程.如今的游戏玩家要求越来越苛刻,他们希望既能够通过各种不同的终端设备来进行游戏 ,又要求游戏具有社交的功能. 因为此类游戏的开发期和推广期都非常长. ...

随机推荐

  1. tac - 反转显示文件

    总览 (SYNOPSIS) ../src/tac [OPTION]... [FILE]... 描述 (DESCRIPTION) 把 每个 文件 FILE 显示在 标准输出, 后面 的 行 放在 前面. ...

  2. 【学术篇】CF833B TheBakery 分治dp+主席树

    题目の传送门~ 题目大意: 将\(n\)个蛋糕分成恰好\(k\)份, 求每份中包含的蛋糕的种类数之和的最大值. 这题有两种做法. 第一种是线段树优化dp, 我还没有考虑. 另一种就是分治+主席树. 然 ...

  3. STL_set

    #include <iostream> #include <set> #include <string> #include <cstdio> using ...

  4. HTML事件处理程序---内联onclick事件

    HTML事件处理程序绑定方法: <input type="button" value="click me" onclick="show(this ...

  5. kubernetes报错

    错误信息:执行yaml文件后,服务在运行,但是提示命令找不到 原因:没有环境,相当于只有一个快捷方式 环境目录为/usr/local/bin 解决办法:将/etc/ansible/bin下的文件都拷贝 ...

  6. day03 python数据类型 数字 字符串 布尔

    day03 python   一.基本数据类型     1.int a= 8 a_length = a.bit_length()  #此方法求数字的二进制长度  print(a_length)     ...

  7. ubuntu docker 安装 oracle

    1.ubuntu 安装docker sudo apt-get update sudo apt-get docker.io 2.docker下载oracle镜像 sudo docker pull wna ...

  8. 简单API接口签名验证

    前言 后端在写对外的API接口时,一般会对参数进行签名来保证接口的安全性,在设计签名算法的时候,主要考虑的是这几个问题: 1. 请求的来源是否合法 2. 请求参数是否被篡改 3. 请求的唯一性 我们的 ...

  9. vue中js获取组件实例

    获取到的VM实例,外部js仍然能自由调用VM的一切属性和方法. <template> </template> <script> // 声明变量currVM let ...

  10. 【leetcode】967. Numbers With Same Consecutive Differences

    题目如下: Return all non-negative integers of length N such that the absolute difference between every t ...