List of usage examples for com.amazonaws.services.dynamodbv2.model PutRequest PutRequest
public PutRequest(java.util.Map<String, AttributeValue> item)
From source file:com.dell.doradus.db.s3.DynamoDBService2.java
License:Apache License
public void commit(DBTransaction dbTran) { Timer t = new Timer(); List<WriteRequest> list = new ArrayList<>(); for (ColumnUpdate mutation : dbTran.getColumnUpdates()) { Map<String, AttributeValue> item = getPrimaryKey(mutation.getStoreName() + "_" + mutation.getRowKey(), mutation.getColumn().getName()); byte[] value = mutation.getColumn().getRawValue(); if (value.length == 0) value = EMPTY_VALUE;/*w ww . j a va 2 s . c o m*/ item.put("value", new AttributeValue().withB(ByteBuffer.wrap(value))); list.add(new WriteRequest().withPutRequest(new PutRequest(item))); if (list.size() >= 25) { commitPartial(list); } } for (ColumnDelete mutation : dbTran.getColumnDeletes()) { Map<String, AttributeValue> item = getPrimaryKey(mutation.getStoreName() + "_" + mutation.getRowKey(), mutation.getColumnName()); list.add(new WriteRequest().withDeleteRequest(new DeleteRequest(item))); if (list.size() >= 25) { commitPartial(list); } } for (RowDelete mutation : dbTran.getRowDeletes()) { for (DColumn c : getColumnSlice(mutation.getStoreName(), mutation.getRowKey(), null, null)) { Map<String, AttributeValue> item = getPrimaryKey( mutation.getStoreName() + "_" + mutation.getRowKey(), c.getName()); list.add(new WriteRequest().withDeleteRequest(new DeleteRequest(item))); if (list.size() >= 25) { commitPartial(list); } } } if (list.size() > 0) { commitPartial(list); } m_logger.debug("Committed transaction to {} in {}", getTenant().getName(), t); }
From source file:mx.iteso.desi.cloud.keyvalue.DynamoDBStorage.java
License:Apache License
@Override public void sync() { Map<String, List<WriteRequest>> requestItems = new HashMap<>(); List<WriteRequest> requestList = new ArrayList<>(); requestItems.put(dbName, requestList); for (int i = 0; i < attributes.size(); i++) { if (i % BATCH_SIZE == 0) { requestList.add(new WriteRequest(new PutRequest(attributes.get(i)))); BatchWriteItemRequest bwir = new BatchWriteItemRequest(requestItems); System.out.println("Result: " + client.batchWriteItem(bwir)); requestItems = new HashMap<>(); requestList = new ArrayList<>(); requestItems.put(dbName, requestList); } else {/*from ww w . j a v a 2 s . co m*/ requestList.add(new WriteRequest(new PutRequest(attributes.get(i)))); } } if (requestList.size() > 0) { BatchWriteItemRequest bwir = new BatchWriteItemRequest(requestItems); System.out.println("Result: " + client.batchWriteItem(bwir)); requestItems = new HashMap<>(); requestList = new ArrayList<>(); requestItems.put(dbName, requestList); } }
From source file:org.kairosdb.datastore.dynamodb.WriteBuffer.java
License:Apache License
public void addData(Map<String, AttributeValue> entry) { m_mutatorLock.lock();// w w w. ja v a 2 s .c om try { waitOnBufferFull(); m_bufferCount++; m_writeBuffer.add(new WriteRequest(new PutRequest(entry))); } finally { m_mutatorLock.unlock(); } }