Consistency in non-transactional distributed storage systemsPaolo ViottiMarko Vukolic2016ACM Computing Surveys