Cosmo Db sql Azure- Reading unique documents in parallel. : 1) We are having services which interacts with cosmo db documents . Each service are having multiple instances so that can fetch the documents in parallel.

2) Our requirement is to ensure that every instance should fetch/process only unique documents.. For e.g. i have master service "S" having instances s1,s2,s3,s4 and having documents d1,d2,d3,d4.........d20. We need s1 to fetch first batch only ( D1,d2,d3,d4,d5) and other instances should not fetch same documents. Each of instance should have unique documents batch. The output should be like below
s1- Process d1,d2,d3,d4,d5
s2- d6,d7,d8,d9,10
s3 - d11,d12,d13,d14,d15
s4 - d16,17,18,19,20.

3) What i am looking for is :
a) Any read and lock document mechanism in cosmo DB -If yes,i can use them to lock documents for n seconds so that another service instance should not pick them . Any inbuilt flag.
b) IF we do not have any in-built mechanism,then i can use etags or stored procedure to replace docs and add new property which reflects their states(Lock) .But i am not sure about scenario where two service instance will try to write /replace at the same time and both will be able to lock it.

Any help/suggestion would be appreciated here. Thanks .