DynamoDB-テーブルの作成
テーブルの作成は、通常、テーブルの生成、名前の付け、主キー属性の確立、および属性データ型の設定で構成されます。
これらのタスクを実行するには、GUIコンソール、Java、または別のオプションを利用します。
GUIコンソールを使用してテーブルを作成する
でコンソールにアクセスしてテーブルを作成します https://console.aws.amazon.com/dynamodb。次に、「テーブルの作成」オプションを選択します。
この例では、ID番号(数値属性)で識別される一意の属性の製品を含む、製品情報が入力されたテーブルを生成します。の中にCreate Table画面で、テーブル名フィールドにテーブル名を入力します。パーティションキーフィールドに主キー(ID)を入力します。データ型に「数値」を入力します。
すべての情報を入力したら、 Create。
Javaを使用してテーブルを作成する
Javaを使用して同じテーブルを作成します。その主キーは、次の2つの属性で構成されます-
ID −パーティションキーとScalarAttributeTypeを使用します N、数を意味します。
Nomenclature −ソートキーとScalarAttributeTypeを使用します S、文字列を意味します。
Javaは createTable methodテーブルを生成します。呼び出し内で、テーブル名、主キー属性、および属性データ型が指定されます。
次の例を確認できます-
import java.util.Arrays;
import com.amazonaws.services.dynamodbv2.AmazonDynamoDBClient;
import com.amazonaws.services.dynamodbv2.document.DynamoDB;
import com.amazonaws.services.dynamodbv2.document.Table;
import com.amazonaws.services.dynamodbv2.model.AttributeDefinition;
import com.amazonaws.services.dynamodbv2.model.KeySchemaElement;
import com.amazonaws.services.dynamodbv2.model.KeyType;
import com.amazonaws.services.dynamodbv2.model.ProvisionedThroughput;
import com.amazonaws.services.dynamodbv2.model.ScalarAttributeType;
public class ProductsCreateTable {
public static void main(String[] args) throws Exception {
AmazonDynamoDBClient client = new AmazonDynamoDBClient()
.withEndpoint("http://localhost:8000");
DynamoDB dynamoDB = new DynamoDB(client);
String tableName = "Products";
try {
System.out.println("Creating the table, wait...");
Table table = dynamoDB.createTable (tableName,
Arrays.asList (
new KeySchemaElement("ID", KeyType.HASH), // the partition key
// the sort key
new KeySchemaElement("Nomenclature", KeyType.RANGE)
),
Arrays.asList (
new AttributeDefinition("ID", ScalarAttributeType.N),
new AttributeDefinition("Nomenclature", ScalarAttributeType.S)
),
new ProvisionedThroughput(10L, 10L)
);
table.waitForActive();
System.out.println("Table created successfully. Status: " +
table.getDescription().getTableStatus());
} catch (Exception e) {
System.err.println("Cannot create the table: ");
System.err.println(e.getMessage());
}
}
}
上記の例では、エンドポイントに注意してください。 .withEndpoint。
ローカルホストを使用したローカルインストールの使用を示します。また、必要なことに注意してくださいProvisionedThroughput parameter、ローカルインストールは無視します。