Учебники

DynamoDB — Создание предметов

Создание элемента в DynamoDB состоит, главным образом, из спецификации элемента и атрибута и возможности задания условий. Каждый элемент существует в виде набора атрибутов, каждому названному атрибуту присваивается значение определенного типа.

Типы значений включают скаляр, документ или набор. Элементы имеют ограничение размера 400 КБ, с возможностью любого количества атрибутов, способных вписаться в этот предел. Размеры имени и значения (длина в двоичном формате и длина UTF-8) определяют размер элемента. Использование коротких имен атрибутов помогает минимизировать размер элемента.

Примечание. Необходимо указать все атрибуты первичного ключа, причем первичным ключам требуется только ключ раздела; и составные ключи, требующие как раздел, так и ключ сортировки.

Кроме того, помните, что таблицы не имеют предопределенной схемы. Вы можете хранить совершенно разные наборы данных в одной таблице.

Используйте консоль с графическим интерфейсом, Java или другой инструмент для выполнения этой задачи.

Как создать элемент с помощью консоли GUI?

Перейдите к консоли. На панели навигации слева выберите Таблицы . Выберите имя таблицы для использования в качестве места назначения, а затем выберите вкладку « Элементы », как показано на следующем снимке экрана.

Создать предмет

Выберите Создать элемент . Экран Create Item предоставляет интерфейс для ввода требуемых значений атрибутов. Любые вторичные индексы также должны быть введены.

Выберите Создать элемент

Если вам требуется больше атрибутов, выберите меню действий слева от сообщения . Затем выберите « Добавить» и укажите нужный тип данных.

Сообщение

После ввода всей необходимой информации выберите Сохранить, чтобы добавить элемент.

Как использовать Java в создании предметов?

Использование Java в операциях создания элементов состоит из создания экземпляра класса DynamoDB, экземпляра класса Table, экземпляра класса Item и указания первичного ключа и атрибутов создаваемого элемента. Затем добавьте новый элемент с помощью метода putItem.

пример

DynamoDB dynamoDB = new DynamoDB (new AmazonDynamoDBClient(
   new ProfileCredentialsProvider()));
Table table = dynamoDB.getTable("ProductList");
   
// Spawn a related items list 
List<Number> RELItems = new ArrayList<Number>(); 
RELItems.add(123); 
RELItems.add(456); 
RELItems.add(789);  
   
//Spawn a product picture map  
Map<String, String> photos = new HashMap<String, String>(); 
photos.put("Anterior", "http://xyz.com/products/101_front.jpg"); 
photos.put("Posterior", "http://xyz.com/products/101_back.jpg"); 
photos.put("Lateral", "http://xyz.com/products/101_LFTside.jpg");  

//Spawn a product review map 
Map<String, List<String>> prodReviews = new HashMap<String, List<String>>();  
List<String> fiveStarRVW = new ArrayList<String>(); 
fiveStarRVW.add("Shocking high performance."); 
fiveStarRVW.add("Unparalleled in its market."); 
prodReviews.put("5 Star", fiveStarRVW);  
List<String> oneStarRVW = new ArrayList<String>(); 
oneStarRVW.add("The worst offering in its market."); 
prodReviews.put("1 Star", oneStarRVW);  

// Generate the item 
Item item = new Item()
   .withPrimaryKey("Id", 101) 
   .withString("Nomenclature", "PolyBlaster 101") 
   .withString("Description", "101 description") 
   .withString("Category", "Hybrid Power Polymer Cutter")  
   .withString("Make", "Brand – XYZ") 
   .withNumber("Price", 50000) 
   .withString("ProductCategory", "Laser Cutter") 
   .withBoolean("Availability", true) 
   .withNull("Qty") 
   .withList("ItemsRelated", RELItems) 
   .withMap("Images", photos) 
   .withMap("Reviews", prodReviews);

// Add item to the table  
PutItemOutcome outcome = table.putItem(item);

Вы также можете посмотреть на следующий более крупный пример.

Примечание. В следующем примере может использоваться ранее созданный источник данных. Прежде чем пытаться выполнить, приобретите вспомогательные библиотеки и создайте необходимые источники данных (таблицы с требуемыми характеристиками или другие ссылочные источники).

В следующем примере также используются Eclipse IDE, файл учетных данных AWS и набор инструментов AWS в Java-проекте Eclipse AWS.