테이블에 데이터 쓰기 - Amazon DynamoDB

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

테이블에 데이터 쓰기

관계형 데이터베이스 테이블에는 데이터의 이 포함됩니다. 행은 로 구성됩니다. Amazon DynamoDB 테이블에는 항목이 포함됩니다. 항목은 속성으로 구성됩니다.

이 단원에서는 테이블에 하나의 행(또는 항목)을 쓰는 방법을 설명합니다.

SQL에서 테이블에 데이터 쓰기

관계형 데이터베이스의 테이블은 행과 열로 이루어진 2차원 데이터 구조입니다. 일부 데이터베이스 관리 시스템은 보통 기본 JSON 또는 XML 데이터 형식을 사용하여 반정형 데이터 지원도 제공합니다. 하지만 구현의 세부적 내용은 공급업체마다 다릅니다.

SQL에서는 INSERT 문을 사용하여 테이블에 행을 추가합니다.

INSERT INTO Music (Artist, SongTitle, AlbumTitle, Year, Price, Genre, Tags) VALUES( 'No One You Know', 'Call Me Today', 'Somewhat Famous', 2015, 2.14, 'Country', '{"Composers": ["Smith", "Jones", "Davis"],"LengthInSeconds": 214}' );

이 테이블의 기본 키는 아티스트와 로 구성되어 있습니다. SongTitle 이 열들의 값을 지정해야 합니다.

참고

이 예제에서는 Tags 열을 사용하여 Music 테이블의 노래에 대한 반정형 데이터를 저장합니다. Tags 열은 TEXT 형식으로 정의되었으며 MySQL에 최대 65,535자를 저장할 수 있습니다.

DynamoDB에서 테이블에 데이터 쓰기

Amazon DynamoDB에서는 DynamoDB API나 PartiQL(SQL 호환 쿼리 언어)을 사용하여 테이블에 항목을 추가할 수 있습니다.

DynamoDB API

DynamoDB API에서는 PutItem 작업을 사용하여 테이블에 항목을 추가합니다.

{ TableName: "Music", Item: { "Artist":"No One You Know", "SongTitle":"Call Me Today", "AlbumTitle":"Somewhat Famous", "Year": 2015, "Price": 2.14, "Genre": "Country", "Tags": { "Composers": [ "Smith", "Jones", "Davis" ], "LengthInSeconds": 214 } } }

이 테이블의 기본 키는 아티스트와 로 구성되어 있습니다. SongTitle 이 속성들의 값을 지정해야 합니다.

다음은 이 PutItem 예제에 관해 알아야 할 주요 사항입니다.

  • DynamoDB는 JSON을 사용하여 문서에 대한 기본 지원을 제공합니다. 따라서 DynamoDB는 Tags 같은 반정형 데이터를 저장하는 데 적합합니다. JSON 문서 안에서 데이터를 가져오고 조작할 수도 있습니다.

  • Music 테이블에는 기본 키 (아티스트SongTitle) 외에 사전 정의된 속성이 없습니다.

  • 대부분의 SQL 데이터베이스는 트랜잭션 지향적입니다. INSERT 문을 발행하더라도 COMMIT 문을 발행하기 전까지는 데이터 수정이 영구적이지 않습니다. Amazon DynamoDB의 경우, DynamoDB가 HTTP 200 상태 코드(OK)로 응답하면 PutItem 작업의 결과가 영구적으로 적용됩니다.

참고

PutItem을 사용하는 코드 예제는 DynamoDB 및 AWS SDK 시작하기 섹션을 참조하세요.

다음은 몇 가지 다른 PutItem 예제입니다.

{ TableName: "Music", Item: { "Artist": "No One You Know", "SongTitle": "My Dog Spot", "AlbumTitle":"Hey Now", "Price": 1.98, "Genre": "Country", "CriticRating": 8.4 } }
{ TableName: "Music", Item: { "Artist": "No One You Know", "SongTitle": "Somewhere Down The Road", "AlbumTitle":"Somewhat Famous", "Genre": "Country", "CriticRating": 8.4, "Year": 1984 } }
{ TableName: "Music", Item: { "Artist": "The Acme Band", "SongTitle": "Still In Love", "AlbumTitle":"The Buck Starts Here", "Price": 2.47, "Genre": "Rock", "PromotionInfo": { "RadioStationsPlaying":[ "KHCR", "KBQX", "WTNR", "WJJH" ], "TourDates": { "Seattle": "20150625", "Cleveland": "20150630" }, "Rotation": "Heavy" } } }
{ TableName: "Music", Item: { "Artist": "The Acme Band", "SongTitle": "Look Out, World", "AlbumTitle":"The Buck Starts Here", "Price": 0.99, "Genre": "Rock" } }
참고

DynamoDB는 PutItem 외에도 여러 항목을 동시에 쓰는 BatchWriteItem 작업을 지원합니다.

PartiQL for DynamoDB

PartiQL에서는 PartiQL Insert 문을 사용하여 ExecuteStatement 작업을 통해 테이블에 항목을 추가합니다.

INSERT into Music value { 'Artist': 'No One You Know', 'SongTitle': 'Call Me Today', 'AlbumTitle': 'Somewhat Famous', 'Year' : '2015', 'Genre' : 'Acme' }

이 테이블의 기본 키는 아티스트와 SongTitle로 구성되어 있습니다. 이 속성들의 값을 지정해야 합니다.

참고

InsertExecuteStatement를 사용하는 코드 예제는 DynamoDB의 PartiQL insert 문 섹션을 참조하세요.