Louis Woods

dblp:69/8510 · DBLP profile ↗
← Back
11ranked-venue papers
8as first author
0since 2021 · last 2015
—ORCID · none

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

Databases, data management, data science and information retrieval · 7 · 4 first-authorSystems, architecture and hardware · 4 · 4 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
7 papers
Reconfigurable computing and FPGAs · 44% Hardware accelerators and domain-specific architectures · 30% Parallel and multicore computing · 11%
Databases, data mining, and information retrieval
6 papers
Query processing and optimization · 45% Data stream processing · 21% Data mining · 17%

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

TopicWeightPapersLastEvidence papers
Hardware accelerators and domain-specific architectures › database accelerator
FPGA-based query processing
0.532014
Ibex - An Intelligent Storage Engine with Support for Advanced SQL Off-loading · Proc. VLDB Endow. 2014
Less watts, more performance: an intelligent storage engine for data appliances · SIGMOD Conference 2013
Skeleton automata for FPGAs: reconfiguring without reconstructing · SIGMOD Conference 2012
Reconfigurable computing and FPGAs
FPGA accelerator
0.432014
Histograms as a side effect of data movement for big data · SIGMOD Conference 2014
XLynx - An FPGA-based XML filter for hybrid XQuery processing · ACM Trans. Database Syst. 2013
Ibex - An Intelligent Storage Engine with Support for Advanced SQL Off-loading · Proc. VLDB Endow. 2014
Data stream processing
complex event processing
0.222011
Real-time pattern matching with FPGAs · ICDE 2011
Complex Event Detection at Wire Speed with FPGAs · Proc. VLDB Endow. 2010
Reconfigurable computing and FPGAs › FPGA accelerator
FPGA-based stream processing
0.222011
Real-time pattern matching with FPGAs · ICDE 2011
Complex Event Detection at Wire Speed with FPGAs · Proc. VLDB Endow. 2010
Query processing and optimization
cardinality estimation
0.212014
Histograms as a side effect of data movement for big data · SIGMOD Conference 2014
Data mining › data reduction › data summarization
histogram construction
0.212014
Histograms as a side effect of data movement for big data · SIGMOD Conference 2014
Distributed and cloud data management
query offloading
0.212014
Ibex - An Intelligent Storage Engine with Support for Advanced SQL Off-loading · Proc. VLDB Endow. 2014
Parallel and multicore computing
histogram computation
0.212014
Histograms as a side effect of data movement for big data · SIGMOD Conference 2014
Query processing and optimization › XML query processing
XQuery processing
0.212013
XLynx - An FPGA-based XML filter for hybrid XQuery processing · ACM Trans. Database Syst. 2013
Query processing and optimization
query compilation
0.112012
Skeleton automata for FPGAs: reconfiguring without reconstructing · SIGMOD Conference 2012
Reconfigurable computing and FPGAs
dynamic reconfiguration
0.112012
Skeleton automata for FPGAs: reconfiguring without reconstructing · SIGMOD Conference 2012
Memory systems
data movement
0.112014
Histograms as a side effect of data movement for big data · SIGMOD Conference 2014

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

FPGA · 0.7hardware-software hybrid · 0.4FPGA prototyping · 0.4finite-state automata · 0.3XML projection · 0.3pattern matching · 0.3automata-based compilation · 0.3query-to-hardware compiler · 0.2query off-loading · 0.2
YearPublicationVenuePosition
2015 Parallelizing Data Processing on FPGAs with Shifter Lists
abstract
Parallelism is currently seen as a mechanism to minimize the impact of the power and heat dissipation problems encountered in modern hardware. Data parallelism—based on partitioning the data—and pipeline parallelism—based on partitioning the computation—are the two main approaches to leverage parallelism on a wide range of hardware platforms. Unfortunately, not all data processing problems are susceptible to either of those strategies. An example is the skyline operator [Börzsönyi et al. 2001], which computes the set of Pareto-optimal points within a multidimensional dataset. Existing approaches to parallelize the skyline operator are based on data parallelism. As a result, they suffer from a high overhead when merging intermediate results because of the lack of a global view of the problem inherent to partitioning the input data. In this article, we show how to combine pipeline with data parallelism on a Field-Programmable Gate Array (FPGA) for a more efficient utilization of the available hardware parallelism. As we show in our experiments, skyline computation using our proposed technique scales linearly with the number of processing elements, and the performance we achieve on a rather small FPGA is comparable to that of a 64-core high-end server running a state-of-the-art data parallel implementation of skyline [Park et al. 2009]. The proposed approach to parallelize the skyline operator can be generalized to a wider range of data processing problems. We demonstrate this through a novel, highly parallel data structure, a shifter list , that can be efficiently implemented on an FPGA. The resulting template is easy to parametrize to implement a variety of computationally intensive operators such as frequent items , n -closest pairs , or K-means .
Louis Woods, Gustavo Alonso, Jens Teubner
ACM Trans. Reconfigurable Technol. Syst.1
2014 Histograms as a side effect of data movement for big data
abstract
Histograms are a crucial part of database query planning but their computation is resource-intensive. As a consequence, generating histograms on database tables is typically performed as a batch job, separately from query processing. In this paper, we show how to calculate statistics as a side effect of data movement within a DBMS using a hardware accelerator in the data path. This accelerator analyzes tables as they are transmitted from storage to the processing unit, and provides histograms on the data retrieved for queries at virtually no extra performance cost. To evaluate our approach, we implemented this accelerator on an FPGA. This prototype calculates histograms faster and with similar or better accuracy than commercial databases. Moreover, the FPGA can provide various types of histograms such as Equi-depth, Compressed, or Max-diff on the same input data in parallel, without additional overhead.
Zsolt István, Louis Woods, Gustavo Alonso
SIGMOD Conference2
2014 Ibex - An Intelligent Storage Engine with Support for Advanced SQL Off-loading
abstract
Modern data appliances face severe bandwidth bottlenecks when moving vast amounts of data from storage to the query processing nodes. A possible solution to mitigate these bottlenecks is query off-loading to an intelligent storage engine , where partial or whole queries are pushed down to the storage engine. In this paper, we present Ibex , a prototype of an intelligent storage engine that supports off-loading of complex query operators. Besides increasing performance, Ibex also reduces energy consumption, as it uses an FPGA rather than conventional CPUs to implement the off-load engine. Ibex is a hybrid engine, with dedicated hardware that evaluates SQL expressions at line-rate and a software fallback for tasks that the hardware engine cannot handle. Ibex supports GROUP BY aggregation, as well as projection - and selection - based filtering. GROUP BY aggregation has a higher impact on performance but is also a more challenging operator to implement on an FPGA.
Louis Woods, Zsolt István, Gustavo Alonso
Proc. VLDB Endow.1
2013 Parallel Computation of Skyline Queries
abstract
Due to stagnant clock speeds and high power consumption of commodity microprocessors, database vendors have started to explore massively parallel co-processors such as FPGAs to further increase performance. A typical approach is to push simple but compute-intensive operations (e.g., prefiltering, (de)compression) to FPGAs for acceleration. In this paper, we show how a significantly more complex operation- the computation of the skyline-can be holistically implemented on an FPGA. A skyline query computes the pareto optimal set of multi-dimensional data points. These queries have been studied in software extensively over the last decade but this paper is the first to examine skyline computation in hardware. We propose a methodology that interleaves data storage and computation, allowing multiple operations to be executed on the same working set in parallel, while accounting for all data dependencies. Our experiments show that we achieve very promising results compared to CPU-based solutions.
Louis Woods, Gustavo Alonso, Jens Teubner
FCCM1
2013 Hybrid FPGA-accelerated SQL query processing
abstract
Ibex [1] is a novel database storage engine featuring hybrid, FPGA-accelerated query processing. The first prototype of Ibex has been implemented within the open-source MySQL database. In Ibex, an FPGA is inserted into the data path between disk and CPU to act as a query off-loading engine, operating on the stream of data towards the query processor. As a result, the volume of data hitting the CPU is substantially reduced, thereby decreasing energy consumption while increasing performance at the same time.
Louis Woods, Zsolt István, Gustavo Alonso
FPL1
2013 Less watts, more performance: an intelligent storage engine for data appliances
abstract
In this demonstration, we present Ibex, a novel storage engine featuring hybrid, FPGA-accelerated query processing. In Ibex, an FPGA is inserted along the path between the storage devices and the database engine. The FPGA acts as an intelligent storage engine supporting query off-loading from the query engine. Apart from significant performance improvements for many common SQL queries, the demo will show how Ibex reduces data movement, CPU usage, and overall energy consumption in database appliances.
Louis Woods, Jens Teubner, Gustavo Alonso
SIGMOD Conference1
2013 XLynx - An FPGA-based XML filter for hybrid XQuery processing
abstract
While offering unique performance and energy-saving advantages, the use of Field-Programmable Gate Arrays (FPGAs) for database acceleration has demanded major concessions from system designers. Either the programmable chips have been used for very basic application tasks (such as implementing a rigid class of selection predicates) or their circuit definition had to be completely recompiled at runtime—a very CPU-intensive and time-consuming effort. This work eliminates the need for such concessions. As part of our XLynx implementation—an FPGA-based XML filter—we present skeleton automata , which is a design principle for data-intensive hardware circuits that offers high expressiveness and quick reconfiguration at the same time. Skeleton automata provide a generic implementation for a class of finite-state automata . They can be parameterized to any particular automaton instance in a matter of microseconds or less (as opposed to minutes or hours for complete recompilation). We showcase skeleton automata based on XML projection [Marian and Siméon 2003], a filtering technique that illustrates the feasibility of our strategy for a real-world and challenging task. By performing XML projection in hardware and filtering data in the network, we report on performance improvements of several factors while remaining nonintrusive to the back-end XML processor (we evaluate XLynx using the Saxon engine).
Jens Teubner, Louis Woods, Chongling Nie
ACM Trans. Database Syst.2
2012 Groundhog - A Serial ATA Host Bus Adapter (HBA) for FPGAs
abstract
This paper describes Groundhog, an open-source SATA host bus adapter (HBA) for FPGAs. This system makes it easy for FPGA-based applications to directly interact with permanent storage devices. This allows reconfigurable computing devices to be used in new applications that require bulk storage and presents additional opportunities to increase performance, reduce power consumption and improve system integration. In addition to standard disk sector read/write commands, this framework also supports more advanced concepts such as native command queuing (NCQ) introduced with SATA II. We test the system with latest-generation SSDs and demonstrate the potential performance advantages and trade-offs of direct hardware access to bulk storage devices.
Louis Woods, Kenneth Eguro
FCCM1
2012 Skeleton automata for FPGAs: reconfiguring without reconstructing
abstract
While the performance opportunities of field-programmable gate arrays field (FPGAs)field for high-volume query processing are well-known, system makers still have to compromise between desired query expressiveness and high compilation effort. The cost of the latter is the primary limitation in building efficient FPGA/CPU hybrids.
Jens Teubner, Louis Woods, Chongling Nie
SIGMOD Conference2
2011 Real-time pattern matching with FPGAs
abstract
We demonstrate a hardware implementation of a complex event processor, built on top of field-programmable gate arrays (FPGAs). Compared to CPU-based commodity systems, our solution shows distinctive advantages for stream monitoring tasks, e.g., wire-speed processing and predictable performance. The demonstration is based on a query-to-hardware compiler for complex event patterns that we presented at VLDB 2010 [1]. By example of a click stream monitoring application, we illustrate the inner workings of our compiler and indicate how FPGAs can act as efficient and reliable processors for event streams.
Louis Woods, Jens Teubner, Gustavo Alonso
ICDE1
2010 Complex Event Detection at Wire Speed with FPGAs
abstract
Complex event detection is an advanced form of data stream processing where the stream(s) are scrutinized to identify given event patterns. The challenge for many complex event processing (CEP) systems is to be able to evaluate event patterns on high-volume data streams while adhering to real-time constraints. To solve this problem, in this paper we present a hardware-based complex event detection system implemented on field-programmable gate arrays (FPGAs). By inserting the FPGA directly into the data path between the network interface and the CPU, our solution can detect complex events at gigabit wire speed with constant and fully predictable latency, independently of network load, packet size, or data distribution. This is a significant improvement over CPU-based systems and an architectural approach that opens up interesting opportunities for hybrid stream engines that combine the flexibility of the CPU with the parallelism and processing power of FPGAs.
Louis Woods, Jens Teubner, Gustavo Alonso
Proc. VLDB Endow.1