📝 DynamoDB教程

37篇技术文档
  DynamoDB-批处理编写

📅  最后修改于: 2020-11-28 13:59:43        🧑  作者: Mango

批处理通过创建或删除多个项目来对多个项目进行操作。这些操作利用BatchWriteItem,其限制为最多16 MB的写入和25个请求。每个项目都遵守400KB的大小限制。批量写入也无法执行项目更新。什么是批量书写?批量写入可以操纵多个表中的项目。每个单独的请求都会发生操作调用,这意味着操作不会相互影响,并且允许进行异构混合。例如,一个批处理中的一个PutItem请求和三个DeleteItem请求,...

  DynamoDB-批次检索

📅  最后修改于: 2020-11-28 14:00:11        🧑  作者: Mango

批检索操作返回单个或多个项目的属性。这些操作通常包括使用主键来标识所需的项目。BatchGetItem操作受单个操作的限制以及它们自己的唯一约束。批量检索操作中的以下请求导致拒绝-要求提供100多种物品。发出超过吞吐量的请求。批量检索操作对可能超出限制的请求执行部分处理。例如-请求检索多个大小足够大以超过限制的项目会导致请求处理的一部分,并出现一条错误消息,指出未处理的部分。返回未处理的项目时,创...

  DynamoDB-查询

📅  最后修改于: 2020-11-28 14:00:41        🧑  作者: Mango

查询通过主键查找项目或二级索引。执行查询需要分区键和特定值,或者排序键和值;并选择进行比较过滤。查询的默认行为包括返回与提供的主键关联的项的每个属性。但是,您可以使用ProjectionExpression参数指定所需的属性。查询利用KeyConditionExpression参数选择项,这要求以相等条件的形式提供分区键名称和值。您还可以选择为存在的任何排序键提供附加条件。排序关键条件的一些示例是...

  DynamoDB-扫描

📅  最后修改于: 2020-11-28 14:01:15        🧑  作者: Mango

扫描操作读取所有表项或二级索引。其默认函数导致返回索引或表中所有项目的所有数据属性。在过滤属性中使用ProjectionExpression参数。每次扫描都会返回结果集,即使没有找到匹配项,结果也将为空。扫描检索不超过1MB,并且可以选择过滤数据。注意-扫描的参数和过滤也适用于查询。扫描操作类型过滤-扫描操作可通过过滤器表达式进行精细过滤,过滤器表达式可在扫描或查询后修改数据;返回结果之前。该表达...

  DynamoDB-索引

📅  最后修改于: 2020-11-28 14:01:42        🧑  作者: Mango

DynamoDB使用索引作为主键属性来改善访问。它们加快了应用程序访问和数据检索的速度,并通过减少应用程序延迟来支持更好的性能。次要指标次要索引包含属性子集和备用键。您可以通过针对索引的查询或扫描操作来使用它。其内容包括您投影或复制的属性。在创建时,您可以为索引定义一个备用键,并定义要投影到索引中的所有属性。然后,DynamoDB将属性复制到索引中,包括从表中获取的主键属性。执行完这些任务后,您只...

  DynamoDB-全局二级索引

📅  最后修改于: 2020-11-28 14:03:04        🧑  作者: Mango

需要具有不同属性的各种查询类型的应用程序可以在执行这些详细查询时使用单个或多个全局二级索引。例如-跟踪用户,他们的登录状态和他们的登录时间的系统。上一个示例的增长减慢了对其数据的查询。全局二级索引通过组织表中的属性选择来加速查询。他们使用主键对数据进行排序,并且不需要键表属性或与表相同的键架构。所有全局二级索引都必须包括分区键,并可以选择排序键。索引键架构可以不同于表,并且索引键属性可以使用任何顶...

  DynamoDB-本地二级索引

📅  最后修改于: 2020-11-28 14:04:23        🧑  作者: Mango

某些应用程序仅使用主键执行查询,但某些情况下会受益于备用排序键。通过创建单个或多个本地二级索引来允许您的应用程序选择。复杂的数据访问要求(例如,合并数百万个项目)使执行更有效的查询/扫描成为必要。本地二级索引为分区键值提供备用排序键。它们还保存所有或某些表属性的副本。他们通过表分区键组织数据,但使用其他排序键。使用本地二级索引消除了对整个表进行扫描的需要,并允许使用排序键进行简单而快速的查询。所有...

  DynamoDB-聚合

📅  最后修改于: 2020-11-28 14:04:41        🧑  作者: Mango

DynamoDB不提供聚合功能。您必须创造性地使用查询,扫描,索引和各种工具来执行这些任务。综上所述,在这些操作中查询/扫描的吞吐量开销可能很大。您还可以选择将库和其他工具用于首选的DynamoDB编码语言。在使用之前,请确保它们与DynamoDB兼容。计算最大值或最小值利用结果的升序/降序,Limit参数以及所有设置顺序的参数来查找最大值和最小值。例如-计算计数使用DescribeTable可以...

  DynamoDB-访问控制

📅  最后修改于: 2020-11-28 14:05:21        🧑  作者: Mango

DynamoDB使用您提供的凭据对请求进行身份验证。这些凭证是必需的,并且必须包含用于AWS资源访问的权限。这些权限实际上涵盖了DynamoDB的各个方面,直至操作或功能的次要功能。权限类型在本节中,我们将讨论有关DynamoDB中的各种权限和资源访问。验证用户在注册时,您提供了密码和电子邮件,用作根凭据。 DynamoDB将此数据与您的AWS账户关联,并使用它来提供对所有资源的完全访问权限。AW...

  DynamoDB-权限API

📅  最后修改于: 2020-11-28 14:05:46        🧑  作者: Mango

DynamoDB API提供了大量操作,这些操作需要权限。在设置权限时,必须建立允许的操作,允许的资源以及每个操作的条件。您可以在策略的“操作”字段中指定操作。在策略的“资源”字段中指定资源值。但是,请确保使用正确的语法,并在API操作中使用Dynamodb:前缀。例如-dynamodb:CreateTable您还可以使用条件键来过滤权限。权限和API操作仔细查看下表中给出的API操作和相关权限-...

  DynamoDB-条件

📅  最后修改于: 2020-11-28 14:06:07        🧑  作者: Mango

在授予权限时,DynamoDB允许通过带有条件键的详细IAM策略为其指定条件。这支持诸如访问特定项目和属性的设置。注– DynamoDB不支持任何标签。详细控制若干条件允许对项目和属性进行专一化,例如根据用户帐户授予对特定项目的只读访问权限。使用条件IAM策略实施此级别的控制,该条件可管理安全凭证。然后只需将策略应用于所需的用户,组和角色。 Web Identity Federation(稍后讨论...

  DynamoDB-Web身份联合身份验证

📅  最后修改于: 2020-11-28 14:06:28        🧑  作者: Mango

Web Identity Federation允许您简化大型用户组的身份验证和授权。您可以跳过个人帐户的创建,并要求用户登录到身份提供程序以获取临时凭证或令牌。它使用AWS安全令牌服务(STS)来管理凭证。应用程序使用这些令牌与服务进行交互。Web Identity Federation还支持其他身份提供者,例如– Amazon,Google和Facebook。功能-在使用中,Web Identi...

  DynamoDB-数据管道

📅  最后修改于: 2020-11-28 14:06:48        🧑  作者: Mango

数据管道允许从表,文件或S3存储桶中导出数据或从中导入数据。当然,这对于备份,测试以及类似的需求或方案非常有用。在导出中,您使用数据管道控制台,该控制台将创建新管道并启动Amazon EMR(Elastic MapReduce)集群以执行导出。 EMR从DynamoDB读取数据并写入目标。我们将在本教程的后面详细讨论EMR。在导入操作中,您将使用数据管道控制台,该控制台将创建管道并启动EMR以执行...

  DynamoDB-数据备份

📅  最后修改于: 2020-11-28 14:07:14        🧑  作者: Mango

利用数据管道的导入/导出功能执行备份。执行备份的方式取决于您是使用GUI控制台还是直接使用数据管道(API)。使用控制台时为每个表创建单独的管道,或者使用直接选项在单个管道中导入/导出多个表。导出和导入数据您必须先创建Amazon S3存储桶,然后才能执行导出。您可以从一个或多个表中导出。执行以下四步过程以执行导出-步骤1-登录到AWS管理控制台并打开位于https://console.aws.a...

  DynamoDB-监视

📅  最后修改于: 2020-11-28 14:07:34        🧑  作者: Mango

Amazon提供了CloudWatch,用于通过CloudWatch控制台,命令行或CloudWatch API汇总和分析性能。您也可以使用它来设置警报和执行任务。它对某些事件执行指定的动作。Cloudwatch控制台通过访问管理控制台,然后在https://console.aws.amazon.com/cloudwatch/上打开CloudWatch控制台来利用CloudWatch。然后,您可以...