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. LLppdd has a dream!

    LLppdd has a dream Time Limit: 3 s Memory Limit: 256 MB 题目背景 LLppdd经过他充满坎坷的初三后,他的成绩也充满了坎坷. 临近中考了,他希望 ...

  2. fetch bulk collect into 进行批量、快速提取数据的方式

    1.游标的含义 2.oracle 11g 中的三类游标的使用方式 3.oracle 11g中使用 fetch ... bulk collect into 进行批量.快速提取数据的方式 4.根据不同情况 ...

  3. 知识点整理01- 引用对象被子方法赋值后不改变;CheckBox 取消选择不可用问题

    1. Class 实体是引用类型,但传入方法时是null的情况在子方法中不论怎么赋值当 FirstService.SetPerson(person,ref tempMsg); 执行后Person都是n ...

  4. 用户界面样式(cursor,resize,vertical-align,outline,文字超出显示省略号)

    1. 鼠标样式 cursor default: 小白(箭头)默认 pointer:小手 move:移动 text:文本 not-allowed:禁止 2. 轮廓线(表单外发光)outline 给表单添 ...

  5. shell变量替换扩展 变量测试

  6. 第二章 部署Kubernetes集群准备环境

    一.centos7开机自动联网设置 1.使用root用户登录进入Linux,打开进去终端 2.在终端中输入:cd  /etc/sysconfig/network-scripts 3.ll命令找到目录下 ...

  7. Keepalived高可用服务

    Keepalived高可用服务 避免负载均衡服务出现单点问题 高可用服务原理 Keepalived的工作原理: Keepalived高可用对之间是通过VRRP通信的,因此,我从 VRRP开始了解起: ...

  8. linux配置java环境变量(详细)(转)

    linux配置java环境变量(详细) 一. 解压安装jdk 在shell终端下进入jdk-6u14-linux-i586.bin文件所在目录, 执行命令 ./jdk-6u14-linux-i586. ...

  9. go结构体上的函数

    go结构体上的函数 我们可以将一个方法和一个结构体关联: type Saiyan struct { Name string Power int } func (s *Saiyan) Super() { ...

  10. php-异步上传插件

    http://www.cnblogs.com/kissdodog/archive/2012/12/15/2819025.html