A method, implemented at least in part by a first worker node comprising a processing unit and memory, the first worker node being in communication with a coordinator node and at least a second worker node , for facilitating executing requests for database operations within a distribute database environment, the method comprising: receiving (604; 1232), at the first worker node , a first request for a database operation, the first request comprising semantic information for determining a snapshot isolation protocol being a weakly-consistent protocol to be applied to the first request, wherein the first request specifies criteria for executing the first request, the criteria comprising a threshold lag value; determining (1608; 1236) the criteria for executing the first request using a current local snapshot identifier value of the first worker node; determining (1612; 1650) that the criteria are met, wherein determining that the criteria are met comprises: determining a time the current local snapshot identifier value was synchronized with the coordinator node ; determining a difference between a current time and the time the current local snapshot identifier value was synchronized with the coordinator node ; and determining that the difference satisfies the threshold lag value, wherein the criteria are met if the difference is less than, or less than or equal to, the threshold value; executing (1616; 1244), by the first worker node, the first request using the current local snapshot identifier value , wherein the first request is executed without updating the current local snapshot identifier value with a global value maintained by the coordinator node ; and returning (1620; 1256), from the first worker node , execution results for the first request to a database client. receiving (604; 1232), at the first worker node , a first request for a database operation, the first request comprising semantic information for determining a snapshot isolation protocol being a weakly-consistent protocol to be applied to the first request, wherein the first request specifies criteria for executing the first request, the criteria comprising a threshold lag value; determining (1608; 1236) the criteria for executing the first request using a current local snapshot identifier value of the first worker node; determining (1612; 1650) that the criteria are met, wherein determining that the criteria are met comprises: determining a time the current local snapshot identifier value was synchronized with the coordinator node ; determining a difference between a current time and the time the current local snapshot identifier value was synchronized with the coordinator node ; and determining that the difference satisfies the threshold lag value, wherein the criteria are met if the difference is less than, or less than or equal to, the threshold value; determining a time the current local snapshot identifier value was synchronized with the coordinator node ; determining a difference between a current time and the time the current local snapshot identifier value was synchronized with the coordinator node ; and determining that the difference satisfies the threshold lag value, wherein the criteria are met if the difference is less than, or less than or equal to, the threshold value; executing (1616; 1244), by the first worker node, the first request using the current local snapshot identifier value , wherein the first request is executed without updating the current local snapshot identifier value with a global value maintained by the coordinator node ; and returning (1620; 1256), from the first worker node , execution results for the first request to a database client. <EOS>