Academia.edu no longer supports Internet Explorer.
To browse Academia.edu and the wider internet faster and more securely, please take a few seconds to upgrade your browser.
2010, 2010 Proceedings of the Seventh Workshop on Analytic Algorithmics and Combinatorics (ANALCO)
In this paper we consider the skip graph data structure, a load balancing alternative to skip lists, designed to perform better in a distributed environment. We extend previous results of Devroye on skip lists, and prove that the maximum length of a search path in a random binary skip graph of size n is of order log n with high probability.
Skip graphs are a kind of distributed data structure based on skip lists. They have the full functionality of a balanced tree in a distributed systems. Skip graphs are mostly used in searching peer-to-peer (p2p) networks. As they provide the ability to query by key ordering, they improve other search tools based on the hash table functionality only. In compare to skip lists and other tree data structure, they are very resillent and can tolerate a large function of node fails. Simple and straightforward algorithms can be used to construct a skip graph, insert new nodes into it, search it, and detect and repair errors in a skip graph introduced due to node failures.
Data management in the peer-to-peer system is a challenging task due to the random distribution of data among several participating peers. Efficient data structures like distributed hash tables (DHT) and its variants are designed and implemented to reduce the complexity of data management in such environment. However, DHT has its limitations in supporting range queries and its variants like distributed segment trees often perform poorly when the number of peers is high. Further, distributed lists and distributed balanced trees require significant amount of time for stabilizing after a new peer joins or a peer leaves. In this paper, a new distributed data structure called determin-istic 1–2 skip list is introduced as an alternate solution for data management in the peer-to-peer systems. A determin-istic skip list can be viewed as an alternate of a balanced tree, where the semantic locality of each key is preserved. Thus it can support the range queries as well as the single shot queries. This paper proposes three main operations on this data structure-searching data based on keys, insertion when a new peer joins, and deletion when a peer leaves. The correctness of the proposed operations are analyzed using theoretical arguments and mathematical proofs. The A preliminary version of this work appears in the proceedings of proposed scheme is simulated using NS-2.34 network sim-ulator, and the efficiency of the scheme has been compared with DHT, DST, distributed list and distributed tree based data management. Keywords Deterministic skip list · 1–2 skip list · Data structure · Range queries
2007
Skip Tree Graph is a novel, distributed, data structure for peer-to-peer systems that supports exact-match and order-based queries such as range queries efficiently. It is based on skip trees, which are randomised balanced search trees equivalent to skip lists and designed to provide improved concurrency. Skip tree graphs constitute an extension of skip graphs enhancing their performance in both, exact-match and range queries. Moreover, skip tree graph maintains the underlying balanced tree structures using randomization and local operations, which provides a greater degree of concurrency and scalability.
Skip lists are a data structure that can be used in place of balanced trees. Skip lists use probabilistic balancing rather than strictly enforced balancing and as a result the algorithms for insertion and deletion in skip lists are much simpler and significantly faster than equivalent algorithms for balanced trees.
Information Processing Letters, 2004
We present a deterministic scalable overlay network. In contrast, most previous overlay networks use randomness or hashing (pseudo-randomness) to achieve a uniform distribution of data and routing traffic.
2014
Reingold has shown that L = SL, that s-t connectivity in a poly-mixing digraph is complete for promise-RL, and that s-t connectivity for a poly-mixing out-regular digraph with known stationary distribution is in L. Several properties that bound the mixing times of random walks on digraphs have been identified, including the digraph conductance and the digraph spectral expansion. However, rapidly mixing digraphs can still have exponential cover time, thus it is important to specifically identify structural properties of digraphs that effect cover times. We examine the complexity of random walks on a basic parameterized family of unbalanced digraphs called Strong Chains (which model weakly symmetric logspace computations), and a special family of Strong Chains called Harps. We show that the worst case hitting times of Strong Chain families vary smoothly with the number of asymmetric vertices and identify the necessary condition for non-polynomial cover time. This analysis also yields ...
Symposium on Computer Architecture and High Performance Computing, 2020
We present a data partitioning technique performed over skip graphs that promotes significant quantitative and qualitative improvements on NUMA locality in concurrent data structures, as well as reduced contention. We build on previous techniques of thread-local indexing and laziness, and, at a high level, our design consists of a partitioned skip graph, well-integrated with thread-local sequential maps, operating without contention. As a proof-of-concept, we implemented map and relaxed priority queue ADTs using our technique. Maps were conceived using lazy and non-lazy approaches to insertions and removals, and our implementations are shown to be competitive with state-of-the-art maps. We observe a 6x higher CAS locality, a 68.6% reduction on the number of remote CAS operations, and a increase from 88.3% to 99% CAS success rate when using a lazy skip graph as compared to a control skip list (subject to the same codebase, optimizations, and implementation practices). Qualitatively speaking, remote memory accesses are not only reduced in number, but the larger the NUMA distance between threads, the larger the reduction is. We consider two alternative implementations of relaxed priority queues that further take advantage of our data partitioning over skip graphs: (a) using "spraying", a well-known randomwalk technique usually performed over skip lists, but now performed over skip graphs; and (b) a custom protocol that traverses the skip graph deterministically, marking elements along this traversal. We provide formal arguments indicating that the first approach is more relaxed, that is, that the span of removed keys is larger, while the second approach has smaller contention. Experimental results indicate that the approach based on spraying performs better on skip graphs, yet both seem to scale appropriately.
Journal of the ACM, 2012
In the weighted paging problem there is a weight (cost) for fetching each page into the cache. We design a randomized O(log k)-competitive online algorithm for the weighted paging problem, where k is the cache size. This is the first randomized o(k)-competitive algorithm and its competitiveness matches the known lower bound on the problem. More generally, we design an O(log(k/(k − h + 1)))-competitive online algorithm for the version of the problem where the online algorithm has cache size k and the offline algorithm has cache size h ≤ k. Weighted paging is a special case (weighted star metric) of the well known k-server problem for which it is a major open question whether randomization can be useful in obtaining sublinear competitive algorithms. Therefore, abstracting and extending the insights from paging is a key step in the resolution of the k-server problem.
Euro-Par 2001 Parallel Processing, 2001
We propose a new parallel algorithm for the single-source shortest-path problem (SSSP). Its heap data structure is particularly advantageous on graphs with a moderate number of high degree nodes. On arbitrary directed graphs with n nodes, m edges and independent random edge weights uniformly distributed in the range [0, 1] and maximum shortest path weight L the PRAM version of our algorithm runs in O(log 2 n•mini{2 i •L•log n+|Vi|}) average-case time using O(n•log n+m) operations where |Vi| is the number of graph vertices with degree at least 2 i. For power-law graph models of the Internet or call graphs this results in the first work-efficient o(n 1/4) average-case time algorithm.
We present Corona, a deterministic self-stabilizing algorithm for skip list construction in structured overlay networks. Corona operates in the low-atomicity message-passing asynchronous system model. Corona requires constant process memory space for its operation and, therefore, scales well. We prove the general necessary conditions limiting the initial states from which a self-stabilizing structured overlay network in a messagepassing system can be constructed. The conditions require that initial state information has to form a weakly connected graph and it should only contain identifiers that are present in the system. We formally describe Corona and rigorously prove that it stabilizes from an arbitrary initial state subject to the necessary conditions. We extend Corona to construct a skip graph. construct and to verify. Furthermore, a large initial state space may lead to excessive process memory demands during stabilization, especially during initial linearization: topological sorting of the processes [21].
IEEE Open Journal of the Communications Society, 2020
Skip graph is a distributed data structure that provides a scalable structured overlay network by routing in logarithmic time for resource location and dynamic node addition/deletion. However, most of the routing paths are quite longer than the shortest paths because each node in the network knows only its neighbors, rather than the global topology. In general, long routing paths lead to the high latency and the low fault tolerance. Herein, we propose Detouring Skip Graph, which performs more efficient routing through the use of detour routes. It does not require construction of extra links or modification of its topology; thereby, it shortens the paths without additional costs while maintaining the advantages of Skip Graph. Our evaluation experiments show that the proposed method tends to shorten the paths considerably, and in particular, that the average path length is approximately 20%-30% shorter than that of Skip Graph.
1996
We present a new type of search trees isomorphic to Skip-lists, i.e., there is a one-to-one mapping that commutes with the update algorithms. Moreover, as Skip-trees inherit all the race properties from Skip-lists, they can be selected as well as Skip-lists. We design a concurrent algorithm on the fly approach to update skip-trees. Among other advantages, this algorithm is more compressive than the one designed by Pugh for Skip-lists. It is based on the closest relationship between Skip-trees and the family of B-trees that allows the translation of local rules between them. From a practical point of view, although the Skip-list should be in main memory, the Skip-trees can be registered into secondary external storage, therefore it can be likely to analyse its ability to manage Databases.
Workshop on Distributed Data and Structures, 2000
We propose DSL, a new Scalable Distributed Data Structure for the dic- tionary problem, based on a version of Skip Lists, as an alternative to both random trees and deterministic height balanced trees. Our scheme exhibits, with high probability, logarithmic search time, constant reconstruction time, and linear space overhead. Additionally, at the expense of two additional pointers per internal node,
Journal of Algorithms, 1998
Distributed paging BFR92, ABF93b, AK95] deals with the dynamic allocation of copies of les in a distributed network as to minimize the total communication cost over a sequence of read and write requests.
Computer Communications, 2008
The support for complex queries, such as range, prefix and aggregation queries, over structured peer-to-peer systems is currently an active and significant topic of research. This paper demonstrates how Skip Tree Graph, as a novel structure, presents an efficient solution to that problem area through provision of a distributed search tree functionality on decentralised and dynamic environments. Since Skip Tree Graph is based on skip trees, a concurrent approach to skip lists, it constitutes an augmentation of skip graphs that extends its functionality and allows for important performance improvements. This work presents a thorough comparison between these two related peer-to-peer overlay networks, their construction, search algorithms and properties. Being based on tree structures, skip tree graphs supports aggregation queries and multicast/broadcast operations, which cannot be directly implemented in its predecessor. The repair mechanism for healing the structure in case of failures is more efficient and harnesses the parallelism inherent in P2P networks. Particular consideration is given to the performance of different range-query schemes over the two related structures. Theoretical and experimental results conclude that Skip Tree Graphs outperform skip graphs on both exact-match and range searches.
Proceedings of the 28th ACM symposium on Principles of distributed computing - PODC '09, 2009
Peer-to-peer systems rely on scalable overlay networks that enable efficient routing between its members. Hypercubic topologies facilitate such operations while each node only needs to connect to a small number of other nodes. In contrast to static communication networks, peer-to-peer networks allow nodes to adapt their neighbor set over time in order to react to join and leave events and failures. This paper shows how to maintain such networks in a robust manner. Concretely, we present a distributed and self-stabilizing algorithm that constructs a (variant of the) skip graph in polylogarithmic time from any initial state in which the overlay network is still weakly connected. This is an exponential improvement compared to previously known self-stabilizing algorithms for overlay networks. In addition, individual joins and leaves are handled locally and require little work.
arXiv (Cornell University), 2011
Random walks are useful in many applications on complex networks, like, for instance, searching a network for a desired resource. In that case, their simplicity has the drawback that searches may need many hops to find the resource. Modifications of the regular random walk have been suggested to improve search performance. In this work, we propose a network search mechanism based on building random walks connecting together partial walks that have been precomputed at each network node. In an initial stage, each node computes a number of partial walks, associating each of them with a data structure containing the set of resources found in the nodes of that partial walk. We assume these data structures to be Bloom filters, which are very compact but can make false positive mistakes. When a node starts a search, it chooses one of the partial walks of the node and queries its Bloom filter for the desired resource. If the result is negative, the search jumps to the last node of that partial walk, repeating the process. If the result is positive, the search traverses that partial walk checking each node until the resource is found. With this strategy, many hops of the regular random walk are saved because of the jumps over partial walks where we know the resource is not located. However, additional unnecessary hops come from false positives at the Bloom filters. An analytical model has been developed to predict the expected search length of this mechanism. The model also provides expressions for the optimal size of the partial walks and the corresponding optimal (shortest) expected search length. We have found that the optimal search length is proportional to the square root of the expected search length of regular random walks, achieving a significant improvement. We have performed simulation experiments finding that the model predictions are very close to the experimental data. The experimental study is also used to assess the impact of the number of partial walks precomputed by each network node in the statistical behavior of the lengths of the searches. We have found that with just two partial walks per node the results are similar to those obtained for larger values, which is a significant result regarding the practical implementation of the search mechanism.
2008
Abstract We study the problem of optimal skip placement in an inverted list. Assuming the query distribution to be known in advance, we formally prove that an optimal skip placement can be computed quite efficiently. Our best algorithm runs in time O (n log n), n being the length of the list.
Lecture Notes in Computer Science, 2011
We introduce a generalization of the distributed sorting problem on chain network. Our problem consists of sorting values in processes that are separated from each other by any number of intermediate processes which can relay values but do not have their own values. We solve this problem in a chain network by proposing a silent self-stabilizing distributed algorithm.
Loading Preview
Sorry, preview is currently unavailable. You can download the paper by clicking the button above.