As far as I know Azure Table Storage supports optimistic concurrency pattern so the application has to handle all the errors resulting from updating the same entity concurrently.
I am wondering what is the behavior of the Table Storage when you update and read the entity at the same time. Is there any locking mechanism in play, so my read would have to wait until the entity is updated? Is there any performance degradation when writing and reading the entities from the same partition, occasionally even the same entities? Contention? I am asking this because this topic is very important in the world of the relational databases but I am unsure about the behavior of this NoSQL solution.
Could you provide any documentation concerning this issue?
Thanks in advance
table storage provides consistency for individual entities, so when an update returns the next read of that same entity will see the updated information. There are no read locks though, so reading does not cause any contention.
For more detailed information on the consistency support in azure table storage, see following whitepaper, section 7.1: http://download.microsoft.com/download/3/B/1/3B170FF4-2354-4B2D-B4DC-8FED5F838F6A/Windows%20Azure%20Table%20-%20Dec%202008.docx