View a markdown version of this page

筛选表导出 - Amazon DynamoDB

筛选表导出

可以只导出所需的项目和属性,而不是导出整个表。DynamoDB 仅导出与所提供的表达式相匹配的数据。筛选后导出功能可以与完全导出和增量导出结合使用。

对于增量导出,DynamoDB 会根据每个已更改项目的最新图像评估筛选条件。对于已删除项目,DynamoDB 会根据该项目的旧图像评估筛选条件,因为新图像不存在。

可以使用三种类型的表达式来控制筛选后导出所返回的内容。您可以提供其中一个表达式,也可以将它们组合到一个导出请求中:

  • 键条件表达式使用与 DynamoDB Query 键条件表达式相同的语法和规则,按其主键来选择项目。键条件表达式通过相等比较以及排序键上的可选条件,来指定单个分区键值。它不能引用非键属性,也不能指定多个分区键值。由于键条件表达式将导出限制为单个分区键值,因此它可以减少 DynamoDB 为导出读取的数据量。有关更多信息,请参阅 DynamoDB 中的查询操作的键条件表达式。

  • 筛选表达式可以使用与 Scan 操作中的筛选表达式相同的语法和规则,将条件应用于键属性和非键属性。筛选表达式支持诸如等于、不等于和 OR 之类的比较,以及 contains、IN、begins_with、BETWEEN、attribute_exists 和 size 函数。DynamoDB 在读取数据后应用筛选表达式,因此筛选条件不会减少 DynamoDB 为导出操作处理的数据量。有关筛选条件及其语法的更多信息,请参阅筛选条件和条件表达式的语法。

  • 投影表达式使用与其他 DynamoDB 操作中的投影表达式相同的语法和规则,标识您希望在导出输出中使用的特定属性。有关更多信息,请参阅 在 DynamoDB 中使用投影表达式。

注意

键属性能否出现在筛选表达式中,取决于您是否还提供了键条件表达式。如果提供键条件表达式,则该键属性不能同时出现在筛选表达式中。如果仅提供筛选表达式,则键属性可以出现在筛选表达式中。

每个表达式须遵守以下限制条件:

  • 表达式的最大大小为 4 KB。

  • 属性名称最大为 250 字节。

  • 属性值最大为 2 MB。

  • 一个表达式最多可包含 300 个运算符。