{'fraction_non_alphanumeric': 0.021739130434782608, 'fraction_numerical': 0.0, 'mean_word_length': 5.7011494252873565, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Beernet : a relaxed approach to the design of scalable systems with self-managing behaviour and transactional robust storage

Distributed systems are becoming larger, more dynamic, more complex and therefore, difficult to manage. Imposing strict requirements on the underlying distributed system becomes counterproductive and inconvenient, specially when those requirements are hard to meet. This work is about relaxing conditions and requirements to cope with the inherent concurrency and asynchrony of distributed systems, without sacrificing functionality. We develop through this dissertation the idea of relaxing conditions as a design philosophy: the relaxed approach. We design algorithms according to this philosophy to build Beernet, a scalable and self-managing decentralized system with transactional robust storage. Beernet relaxes the ring structure for Chord-like peer-to-peer networks to not rely on transitive connectivity nor on perfect failure detection. The relaxed ring improves lookup consistency without sacrificing efficient routing. To provide transactional replicated storage, Beernet uses the Paxos consensus algorithm, where only the majority of replicas needs to be updated, instead of all of them as in traditional databases. We also relax ordering and versioning in data collections to provide concurrent access to them without locking the collections, hence improving performance. Relaxing these conditions on data replication, Beernet is able to provide transactional support, scalable storage and fault-tolerance, without sacrificing strong consistency. Beernet stands for peer-to-peer and beer-to-beer network. Because beer is a known means to achieve relaxation, its name reflects the design philosophy behind it.