Estoy tratando de actualizar un contador de conteos atómicos con Python Boto 2.3.0, pero no puedo encontrar documentación para la operación.Actualizar el Contador Atómico DynamoDB con Python/Boto
Parece que no hay una interfaz directa, así que traté de ir a actualizaciones "en bruto" usando la interfaz de capa1, pero no pude completar ni siquiera una actualización simple.
probé las siguientes variaciones, pero todas sin suerte
dynoConn.update_item(INFLUENCER_DATA_TABLE,
{'HashKeyElement': "9f08b4f5-d25a-4950-a948-0381c34aed1c"},
{'new': {'Value': {'N':"1"}, 'Action': "ADD"}})
dynoConn.update_item('influencer_data',
{'HashKeyElement': "9f08b4f5-d25a-4950-a948-0381c34aed1c"},
{'new': {'S' :'hello'}})
dynoConn.update_item("influencer_data",
{"HashKeyElement": "9f08b4f5-d25a-4950-a948-0381c34aed1c"},
{"AttributesToPut" : {"new": {"S" :"hello"}}})
Todos ellos producen el mismo error:
File "/usr/local/lib/python2.6/dist-packages/boto-2.3.0-py2.6.egg/boto/dynamodb/layer1.py", line 164, in _retry_handler
data)
boto.exception.DynamoDBResponseError: DynamoDBResponseError: 400 Bad Request
{u'Message': u'Expected null', u'__type': u'com.amazon.coral.service#SerializationException'}
También investigaron los documentos de la API here pero eran bastante espartano.
He hecho muchas búsquedas y manipulaciones, y lo único que me queda es usar PHP API y bucear en el código para encontrar dónde "formatea" el cuerpo JSON, pero eso es un poco dolor. Por favor, sálvame de ese dolor!
gamaat, gracias! Vi estas operaciones pero no pensé que funcionarían de esta manera. ¡Gracias de nuevo! –
Mientras multi-threading realiza esta operación al mismo tiempo, puede no funcionar debido a la opción 'expect' en el método save(). – Zagfai