English
Related papers

Related papers: Implementing the Comparison-Based External Sort

200 papers

Indexes facilitate efficient querying when the selection predicate is on an indexed key. As a result, when loading data, if we anticipate future selective (point or range) queries, we typically maintain an index that is gradually populated…

Databases · Computer Science 2022-02-10 Aneesh Raman , Subhadeep Sarkar , Matthaios Olma , Manos Athanassoulis

In recent years a large number of problems have been considered in external memory models of computation, where the complexity measure is the number of blocks of data that are moved between slow external memory and fast internal memory…

Data Structures and Algorithms · Computer Science 2013-12-11 Lars Arge , Mikkel Thorup

Sorting a set of items is a task that can be useful by itself or as a building block for more complex operations. The more sophisticated and fast sorting algorithms become asymptotically, the less efficient they are for small sets of items…

Data Structures and Algorithms · Computer Science 2019-08-23 Jasper Marianczuk

Two emerging hardware trends will dominate the database system technology in the near future: increasing main memory capacities of several TB per server and massively parallel multi-core processing. Many algorithmic and control techniques…

Databases · Computer Science 2012-07-03 Martina-Cezara Albutiu , Alfons Kemper , Thomas Neumann

Sorting and searching are large parts of database query processing, e.g., in the forms of index creation, index maintenance, and index lookup; and comparing pairs of keys is a substantial part of the effort in sorting and searching. We have…

Databases · Computer Science 2022-09-20 Thanh Do , Goetz Graefe

Sorting is the one of the fundamental tasks of modern data management systems. With Disk I/O being the most-accused performance bottleneck and more computation-intensive workloads, it has come to our attention that in heterogeneous…

Databases · Computer Science 2019-09-19 Yuanjing Shi , Zhaoxing Li

The objective behind the Twin Sort technique is to sort the list of unordered data elements efficiently and to allow efficient and simple arrangement of data elements within the data structure with optimization of comparisons and iterations…

Data Structures and Algorithms · Computer Science 2017-10-24 Veeresh D , Thimmaraju S. N , Ravish G. K

We study the connections between sorting and the binary search tree (BST) model, with an aim towards showing that the fields are connected more deeply than is currently appreciated. While any BST can be used to sort by inserting the keys…

Data Structures and Algorithms · Computer Science 2023-05-08 Guy Blelloch , Magdalen Dobson

One of the biggest open problems in external memory data structures is the priority queue problem with DecreaseKey operations. If only Insert and ExtractMin operations need to be supported, one can design a comparison-based priority queue…

Data Structures and Algorithms · Computer Science 2016-11-04 Kasper Eenberg , Kasper Green Larsen , Huacheng Yu

String sorting is an important part of tasks such as building index data structures. Unfortunately, current string sorting algorithms do not scale to massively parallel distributed-memory machines since they either have latency (at least)…

Data Structures and Algorithms · Computer Science 2024-04-26 Florian Kurpicz , Pascal Mehnert , Peter Sanders , Matthias Schimek

We present a new algorithm for fast record retrieval, distribute-probe-gather, or DPG. DPG has important applications both in sorting and in joins. Current main memory sorting algorithms split their work into three phases: extraction of…

Databases · Computer Science 2007-05-23 Gene Cooperman , Xiaoqin Ma , Viet Ha Nguyen

Conventional sorting algorithms make use of such data structures as array, file and list which define access methods of the items to be sorted. Such traditional methods as exchange sort, divide and conquer sort, selection sort and insertion…

Distributed, Parallel, and Cluster Computing · Computer Science 2012-09-17 Samuel King Opoku

We propose new sequential sorting operations by adapting techniques and methods used for designing parallel sorting algorithms. Although the norm is to parallelize a sequential algorithm to improve performance, we adapt a contrarian…

Data Structures and Algorithms · Computer Science 2016-09-01 Alexandros V Gerbessiotis

We present data-oblivious algorithms in the external-memory model for compaction, selection, and sorting. Motivation for such problems comes from clients who use outsourced data storage services and wish to mask their data access patterns.…

Data Structures and Algorithms · Computer Science 2011-03-29 Michael T. Goodrich

The $B^{\epsilon}$-tree [Brodal and Fagerberg 2003] is a simple I/O-efficient external-memory-model data structure that supports updates orders of magnitude faster than B-tree with a query performance comparable to the B-tree: for any…

Data Structures and Algorithms · Computer Science 2022-11-14 Rathish Das , John Iacono , Yakov Nekrich

Concurrent data structures serve as fundamental building blocks for concurrent computing. Many concurrent counterparts have been designed for basic sequential mechanisms; however, one notable omission is a concurrent tree that supports…

Distributed, Parallel, and Cluster Computing · Computer Science 2024-05-14 Gal Sela , Erez Petrank

Semisort is a fundamental algorithmic primitive widely used in the design and analysis of efficient parallel algorithms. It takes input as an array of records and a function extracting a \emph{key} per record, and reorders them so that…

Data Structures and Algorithms · Computer Science 2023-04-21 Xiaojun Dong , Yunshu Wu , Zhongqi Wang , Laxman Dhulipala , Yan Gu , Yihan Sun

Sorting is one of the fundamental problems in computer science. Playing a role in many processes, it has a lower complexity bound imposed by $\mathcal{O}(n\log{n})$ when executing on a sequential machine. This limit can be brought down to…

Hardware Architecture · Computer Science 2025-07-23 Daniel Bascones , Borja Morcillo

A priority queue is a fundamental data structure that maintains a dynamic set of (key, priority)-pairs and supports Insert, Delete, ExtractMin and DecreaseKey operations. In the external memory model, the current best priority queue…

Data Structures and Algorithms · Computer Science 2018-06-21 Shunhua Jiang , Kasper Green Larsen

A common approach to data analysis involves understanding and manipulating succinct representations of data. In earlier work, we put forward a succinct representation system for relational data called factorised databases and reported on…

Databases · Computer Science 2013-07-02 Nurzhan Bakibayev , Tomáš Kočiský , Dan Olteanu , Jakub Závodný