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. java final关键字详解

    final是java中保留关键字,可以声明成员变量.类.方法与本地变量,一旦引用final关键字,将不能再改变这个引用,编译器会检查代码,要是想改变该引用,会报错. final变量? 凡是对成员变量或 ...

  2. LeetCode Array Easy 119. Pascal's Triangle II

    Description Given a non-negative index k where k ≤ 33, return the kth index row of the Pascal's tria ...

  3. ASP.NET MVC 学习笔记之 MVC + EF中的EO DTO ViewModel

    EO: Entity Object 就是EF中的实体类, 对EO的操作会对数据库产生影响. DTO: Data Transfer Object 数据传输对象.用于在各层之间传递数据的普通类,DTO有哪 ...

  4. 【转载】vue install报错run `npm audit fix` to fix them, or `npm audit` for details html

    原链接https://www.jianshu.com/p/60591cfc6952 执行npm install 出现如下提醒 added 253 packages from 162 contribut ...

  5. Mybatis-概况

    是什么 官网定义 http://www.mybatis.org/mybatis-3/ 百科定义(维基百科) https://en.wikipedia.org/wiki/MyBatis Github: ...

  6. Centos6.6安装JDK1.8

    首先从官网下载jdk1.8,地址:https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.htm ...

  7. printf sscanf进阶

    printf ; printf (3d", a);//将打印 035 printf(“%-*s”, width, string): “*”: 在这里用width代替,其实和printf(“% ...

  8. transform:translate(-50%,-50%)

    和父亲元素没关系,走自己盒子宽度一半

  9. Java中static关键字的定义

    1.static存在的主要意义 static的主要意义是在于创建独立于具体对象的域变量或者方法.以致于即使没有创建对象,也能使用属性和调用方法! static关键字还有一个比较关键的作用就是 用来形成 ...

  10. Vue学习笔记【12】——过滤器

    概念:Vue.js 允许你自定义过滤器,可被用作一些常见的文本格式化.过滤器可以用在两个地方:mustache 插值和 v-bind 表达式.过滤器应该被添加在 JavaScript 表达式的尾部,由 ...