Python 从JSON文件创建dynamoDB表

Python 从JSON文件创建dynamoDB表,python,json,amazon-dynamodb,Python,Json,Amazon Dynamodb,我有一个巨大的JSON文件,其中包含许多项。我试图基于JSON文件创建一个DynamoDB表,而不必输入每个单独的属性。我已经用AWSCLi尝试了以下方法 aws dynamodb create-table --cli-input-json file://tabledefinition.json aws dynamodb create-table --generate-cli-skeleton 如本文所述()。我还研究了两个没有选项的python库(ex)。所有json文件都存储在S3存储桶中

我有一个巨大的JSON文件,其中包含许多项。我试图基于JSON文件创建一个DynamoDB表,而不必输入每个单独的属性。我已经用AWSCLi尝试了以下方法

aws dynamodb create-table --cli-input-json file://tabledefinition.json
aws dynamodb create-table --generate-cli-skeleton

如本文所述()。我还研究了两个没有选项的python库(ex)。所有json文件都存储在S3存储桶中

注意:

这是一个非常通用的类,因为OP没有提到特定的表定义

表定义JSON不等于普通数据JSON。请参见表定义JSON的示例。要使用JSON和AWS CLI创建表,需要创建类似的表

{
    "TableName": "MusicCollection2",
    "KeySchema": [
      { "AttributeName": "Artist", "KeyType": "HASH" },
      { "AttributeName": "SongTitle", "KeyType": "RANGE" }
    ],
    "AttributeDefinitions": [
      { "AttributeName": "Artist", "AttributeType": "S" },
      { "AttributeName": "SongTitle", "AttributeType": "S" }
    ],
    "ProvisionedThroughput": {
      "ReadCapacityUnits": 5,
      "WriteCapacityUnits": 5
    }
}
数据加载选项:-

选项1:-

一旦创建了表,您就可以进行写操作,将数据加载到DynamoDB中。请注意,您需要将JSON上的每个属性映射到DynamoDB表上的属性(或将JSON存储为DynamoDB表上的映射)。这取决于您的用例,即如何使用加载到DynamoDB表中的数据

选项2:-


您可以使用创建映射并将数据加载到DynamoDB表中。如果是一次性加载,您可以在加载完成后删除数据管道。

因此,我不需要在“创建表”步骤中为json字符串中的每个项目定义。是否正确?是的,这不是必需的。您还可以使用创建表定义json。语法相当复杂,对我个人来说帮助很大。