Demonstration venue · read-only. Every page can be browsed; the buttons that would change it are switched off. Create an account to run TaxoReview on your own data. A simulation from public publication records: the people listed were not invited and did not agree to review.
? Tutorial for this page

Paulo Sérgio Almeida

dblp:59/5465 · DBLP profile ↗
← Back
24ranked-venue papers
10as first author
3since 2021 · last 2023
0000-0001-7000-0485ORCID · verified

Domains — the database's venue-derived domains; a paper can count in several

Systems, architecture and hardware · 8 · 5 first-author · 1 since 2021Computer networks · 2 · 2 since 2021Security and privacy · 2Software engineering, systems software and programming languages · 2 · 1 first-author · 1 since 2021Databases, data management, data science and information retrieval · 2 · 1 first-authorTheory of computation · 1 · 1 first-author

Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.

Computer architecture, parallel and distributed computing, and storage systems
4 papers
Distributed systems · 68% Storage systems · 32%
Computer networks
1 paper
Internet of things and sensor networks · 100%

Topics — the 11 heaviest of 11, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Storage systems
bloom filter
0.712023
A Case for Partitioned Bloom Filters · IEEE Trans. Computers 2023
Distributed systems › replication › replicated data types
conflict-free replicated data types
0.412019
Efficient Synchronization of State-Based CRDTs · ICDE 2019
Distributed systems
distributed data structures
0.412019
Efficient Synchronization of State-Based CRDTs · ICDE 2019
Distributed systems
replication
0.412019
Efficient Synchronization of State-Based CRDTs · ICDE 2019
Distributed systems
causality tracking
0.112012
Brief announcement: efficient causality tracking in distributed storage systems with dotted version vectors · PODC 2012
Distributed systems
data aggregation
0.112012
Extrema Propagation: Fast Distributed Estimation of Sums and Network Sizes · IEEE Trans. Parallel Distributed Syst. 2012
Distributed systems
distributed coordination and fault tolerance
0.112012
Brief announcement: efficient causality tracking in distributed storage systems with dotted version vectors · PODC 2012
Storage systems
distributed storage
0.112012
Brief announcement: efficient causality tracking in distributed storage systems with dotted version vectors · PODC 2012
Distributed systems › replication
replica consistency
0.112012
Brief announcement: efficient causality tracking in distributed storage systems with dotted version vectors · PODC 2012
Internet of things and sensor networks › wireless sensor network › distributed algorithms for sensor networks
distributed estimation
0.012012
Extrema Propagation: Fast Distributed Estimation of Sums and Network Sizes · IEEE Trans. Parallel Distributed Syst. 2012
Internet of things and sensor networks
wireless sensor network
0.012012
Extrema Propagation: Fast Distributed Estimation of Sums and Network Sizes · IEEE Trans. Parallel Distributed Syst. 2012

Methods — techniques the papers use, named apart from their topics

probabilistic analysis · 0.7SIMD · 0.7join decomposition · 0.4delta-based synchronization · 0.4probabilistic estimation · 0.3epidemic protocols · 0.3duplicate-insensitive message exchange · 0.3dotted version vectors · 0.1causality tracking · 0.1
YearPublicationVenuePosition
2023 An Experimental Evaluation of Tools for Grading Concurrent Programming Exercises
Manuel Barros, Maria Ramos, Alexandre Gomes, Alcino Cunha, José Pereira 0001, Paulo Sérgio Almeida
FORTE6
2023 A Case for Partitioned Bloom Filters
abstract
In a partitioned Bloom Filter (PBF) the bit vector is split into disjoint parts, one per hash function. Contrary to hardware designs, where they prevail, software implementations mostly ignore PBFs, considering them worse than standard Bloom filters (SBF), due to the slightly larger false positive rate (FPR). In this paper, by performing an in-depth analysis, first we show that the FPR advantage of SBFs is smaller than thought; more importantly, by deriving the per-element FPR, we show that SBFs have weak spots in the domain: elements that test as false positives much more frequently than expected. This is relevant in scenarios where an element is tested against many filters. Moreover, SBFs are prone to exhibit extremely weak spots if naive double hashing is used, something occurring in mainstream libraries. PBFs exhibit a uniform distribution of the FPR over the domain, with no weak spots, even using naive double hashing. Finally, we survey scenarios beyond set membership testing, identifying many advantages of having disjoint parts, in designs using SIMD techniques, for filter size reduction, test of set disjointness, and duplicate detection in streams. PBFs are better, and should replace SBFs, in general purpose libraries and as the base for novel designs.
Paulo Sérgio Almeida
IEEE Trans. Computers1
2022 Exon: An Oblivious Exactly-Once Messaging Protocol
abstract
TCP is typically the default transport protocol of choice for its supposed reliability, even for message-oriented middleware (e.g., ZeroMQ) or inter-actor communication (e.g., distributed Erlang). However, under network issues, TCP con-nections can fail, which requires ensuring both at-least-once and at-most-once delivery at the upper middleware layer. Moreover, the use of TCP at scale, in highly concurrent systems, can lead to drastic performance loss due to the need for TCP connection multiplexing and the resulting head-of-line blocking. This paper introduces Exon, an oblivious exactly-once messaging protocol, and a corresponding lightweight library implementation. Exon uses a novel strategy of a per-message four-way protocol to ensure oblivious exactly-once messaging, with on-demand protocol-level “soft half-connections” that are established when needed and safely discarded. This achieves correctness, obliviousness, and performance, through merging and pipelining basic protocol mes-sages. The empirical evaluation of Exon demonstrates significant improvements in throughput and latency under packet loss, while maintaining a negligible overhead over TCP in healthy networks.
Ziad Kassam, Paulo Sérgio Almeida, Ali Shoker
ICCCN2
2019 Efficient Synchronization of State-Based CRDTs
abstract
To ensure high availability in large scale distributed systems, Conflict-free Replicated Data Types (CRDTs) relax consistency by allowing immediate query and update operations at the local replica, with no need for remote synchronization. State-based CRDTs synchronize replicas by periodically sending their full state to other replicas, which can become extremely costly as the CRDT state grows. Delta-based CRDTs address this problem by producing small incremental states (deltas) to be used in synchronization instead of the full state. However, current synchronization algorithms for delta-based CRDTs induce redundant wasteful delta propagation, performing worse than expected, and surprisingly, no better than state-based. In this paper we: 1) identify two sources of inefficiency in current synchronization algorithms for delta-based CRDTs; 2) bring the concept of join decomposition to state-based CRDTs; 3) exploit join decompositions to obtain optimal deltas and 4) improve the efficiency of synchronization algorithms; and finally, 5) experimentally evaluate the improved algorithms.
Vitor Enes, Paulo Sérgio Almeida, Carlos Baquero, João Leitão 0001
ICDE2
2019 Scalable eventually consistent counters over unreliable networks
Paulo Sérgio Almeida, Carlos Baquero
Distributed Comput.1
2018 Delta state replicated data types
Paulo Sérgio Almeida, Ali Shoker, Carlos Baquero
J. Parallel Distributed Comput.1
2017 Aggregation protocols in light of reliable communication
abstract
Aggregation protocols allow for distributed lightweight computations deployed on ad-hoc networks in a peer-to-peer fashion. Due to reliance on wireless technology, the communication medium is often hostile which makes such protocols susceptible to correctness and performance issues. In this paper, we study the behavior of aggregation protocols when subject to communication failures: message loss, duplication, and network partitions. We show that resolving communication failures at the communication layer, through a simple reliable communication layer, reduces the overhead of using alternative fault tolerance techniques at upper layers, and also preserves the original accuracy and simplicity of protocols. The empirical study we drive shows that tradeoffs exist across various aggregation protocols, and there is no one-size-fits-all protocol.
Ziad Kassam, Ali Shoker, Paulo Sérgio Almeida, Carlos Baquero
NCA3
2017 DottedDB: Anti-Entropy without Merkle Trees, Deletes without Tombstones
abstract
To achieve high availability in the face of network partitions, many distributed databases adopt eventual consistency, allow temporary conflicts due to concurrent writes, and use some form of per-key logical clock to detect and resolve such conflicts. Furthermore, nodes synchronize periodically to ensure replica convergence in a process called anti-entropy, normally using Merkle Trees. We present the design of DottedDB, a Dynamo-like key-value store, which uses a novel node-wide logical clock framework, overcoming three fundamental limitations of the state of the art: (1) minimize the metadata per key necessary to track causality, avoiding its growth even in the face of node churn; (2) correctly and durably delete keys, with no need for tombstones; (3) offer a lightweight anti-entropy mechanism to converge replicated data, avoiding the need for Merkle Trees. We evaluate DottedDB against MerkleDB, an otherwise identical database, but using per-key logical clocks and Merkle Trees for anti-entropy, to precisely measure the impact of the novel approach. Results show that: causality metadata per object always converges rapidly to only one id-counter pair; distributed deletes are correctly achieved without global coordination and with constant metadata; divergent nodes are synchronized faster, with less memory-footprint and with less communication overhead than using Merkle Trees.
Ricardo Jorge Tome Goncalves, Paulo Sérgio Almeida, Carlos Baquero, Victor Fonte
SRDS2
2017 Fault-tolerant aggregation: Flow-Updating meets Mass-Distribution
Paulo Sérgio Almeida, Carlos Baquero, Martin Farach-Colton, Paulo Jesus, Miguel A. Mosteiro
Distributed Comput.1
2015 Concise Server-Wide Causality Management for Eventually Consistent Data Stores
Ricardo Gonçalves 0002, Paulo Sérgio Almeida, Carlos Baquero, Victor Fonte
DAIS2
2015 Flow updating: Fault-tolerant aggregation for dynamic networks
Paulo Jesus, Carlos Baquero, Paulo Sérgio Almeida
J. Parallel Distributed Comput.3
2014 Scalable and Accurate Causality Tracking for Eventually Consistent Stores
Paulo Sérgio Almeida, Carlos Baquero, Ricardo Gonçalves 0002, Nuno M. Preguiça, Victor Fonte
DAIS1
2014 Making Operation-Based CRDTs Operation-Based
Carlos Baquero, Paulo Sérgio Almeida, Ali Shoker
DAIS2
2012 Spectra: Robust Estimation of Distribution Functions in Networks
Miguel Borges, Paulo Jesus, Carlos Baquero, Paulo Sérgio Almeida
DAIS4
2012 Brief announcement: efficient causality tracking in distributed storage systems with dotted version vectors
abstract
Version vectors (VV) are used pervasively to track dependencies between replica versions in multi-version distributed storage systems. In these systems, VV tend to have a dual functionality: identify a version and encode causal dependencies. In this paper, we show that by maintaining the identifier of the version separate from the causal past, it is possible to verify causality in constant time (instead of O(n) for VV) and to precisely track causality with information with size bounded by the degree of replication, and not by the number of concurrent writers.
Nuno M. Preguiça, Carlos Baquero, Paulo Sérgio Almeida, Victor Fonte, Ricardo Gonçalves 0002
PODC3
2012 Extrema Propagation: Fast Distributed Estimation of Sums and Network Sizes
abstract
Aggregation of data values plays an important role on distributed computations, in particular, over peer-to-peer and sensor networks, as it can provide a summary of some global system property and direct the actions of self-adaptive distributed algorithms. Examples include using estimates of the network size to dimension distributed hash tables or estimates of the average system load to direct load balancing. Distributed aggregation using nonidempotent functions, like sums, is not trivial as it is not easy to prevent a given value from being accounted for multiple times; this is especially the case if no centralized algorithms or global identifiers can be used. This paper introduces Extrema Propagation, a probabilistic technique for distributed estimation of the sum of positive real numbers. The technique relies on the exchange of duplicate insensitive messages and can be applied in flood and/or epidemic settings, where multipath routing occurs; it is tolerant of message loss; it is fast, as the number of message exchange steps can be made just slightly above the theoretical minimum; and it is fully distributed, with no single point of failure and the result produced at every node.
Carlos Baquero, Paulo Sérgio Almeida, Raquel Menezes, Paulo Jesus
IEEE Trans. Parallel Distributed Syst.2
2011 Fault-Tolerant Aggregation: Flow-Updating Meets Mass-Distribution
Paulo Sérgio Almeida, Carlos Baquero, Martin Farach-Colton, Paulo Jesus, Miguel A. Mosteiro
OPODIS1
2010 Fault-Tolerant Aggregation for Dynamic Networks
abstract
Data aggregation is a fundamental building block of modern distributed systems. Averaging based approaches, commonly designated gossip-based, are an important class of aggregation algorithms as they allow all nodes to produce a result, converge to any required accuracy, and work independently from the network topology. However, existing approaches exhibit many dependability issues when used in faulty and dynamic environments. This paper extends our own technique, Flow Updating, which is immune to message loss, to operate in dynamic networks, improving its fault tolerance characteristics. Experimental results show that the novel version of Flow Updating vastly outperforms previous averaging algorithms, it self adapts to churn without requiring any periodic restart, supporting node crashes and high levels of message loss.
Paulo Jesus, Carlos Baquero, Paulo Sérgio Almeida
SRDS3
2009 Fault-Tolerant Aggregation by Flow Updating
Paulo Jesus, Carlos Baquero, Paulo Sérgio Almeida
DAIS3
2008 Interval Tree Clocks
Paulo Sérgio Almeida, Carlos Baquero, Victor Fonte
OPODIS1
2007 Scalable Bloom Filters
Paulo Sérgio Almeida, Carlos Baquero, Nuno M. Preguiça, David Hutchison 0001
Inf. Process. Lett.1
2004 Bounded Version Vectors
José Bacelar Almeida, Paulo Sérgio Almeida, Carlos Baquero
DISC2
2002 Version Stamps - Decentralized Version Vectors
abstract
Version vectors and their variants play a central role in update tracking in optimistic distributed systems. Existing mechanisms for a variable number of participants use a mapping from identities to integers, and rely on some form of global configuration or distributed naming protocol to assign unique identifiers to each participant. These approaches are incompatible with replica creation under arbitrary partitions, a typical mode of operation in mobile or poorly connected environments. We present an update tracking mechanism that overcomes this limitation; it departs from the traditional mapping and avoids the use of integer counters, while providing all the functionality of version vectors in what concerns version tracking.
Paulo Sérgio Almeida, Carlos Baquero, Victor Fonte
ICDCS1
1997 Balloon Types: Controlling Sharing of State in Data Types
Paulo Sérgio Almeida
ECOOP1