Relational Memory: Native In-Memory Accesses on Rows and Columns

09/29/2021
by   Shahin Roozkhosh, et al.
0

Analytical database systems are typically designed to use a column-first data layout to access only the desired fields. On the other hand, storing data row-first works great for accessing, inserting, or updating entire rows. Transforming rows to columns at runtime is expensive, hence, many analytical systems ingest data in row-first form and transform it in the background to columns to facilitate future analytical queries. How will this design change if we can always efficiently access only the desired set of columns? To address this question, we present a radically new approach to data transformation from rows to columns. We build upon recent advancements in embedded platforms with re-programmable logic to design native in-memory access on rows and columns. Our approach, termed Relational Memory, relies on an FPGA- based accelerator that sits between the CPU and main memory and transparently transforms base data to any group of columns with minimal overhead at runtime. This design allows accessing any group of columns as if it already exists in memory. We implement and deploy Relational Memory in real hardware, and we show that we can access the desired columns up to 1.63x faster than accessing them from their row-wise counterpart, while matching the performance of a pure columnar access for low projectivity, and outperforming it by up to 1.87x as projectivity (and tuple re-construction cost) increases. Moreover, our approach can be easily extended to support offloading of a number of operations to hardware, e.g., selection, group by, aggregation, and joins, having the potential to vastly simplify the software logic and accelerate the query execution.

READ FULL TEXT

page 11

page 12

research
09/01/2022

ByteStore: Hybrid Layouts for Main-Memory Column Stores

The performance of main memory column stores highly depends on the scan ...
research
11/10/2022

An improved method of delta summation for faster current value selection across filtered subsets of interval and temporal relational data

Aggregation in relational databases is accomplished through hashing and ...
research
03/27/2019

Designing Succinct Secondary Indexing Mechanism by Exploiting Column Correlations (Extended Version)

Database administrators construct secondary indexes on data tables to ac...
research
03/27/2019

Designing Succinct Secondary Indexing Mechanism by Exploiting Column Correlations

Database administrators construct secondary indexes on data tables to ac...
research
05/09/2022

Row-wise Accelerator for Vision Transformer

Following the success of the natural language processing, the transforme...
research
07/15/2020

Non-Relational Databases on FPGAs: Survey, Design Decisions, Challenges

Non-relational database systems (NRDS), such as graph, document, key-val...
research
11/07/2020

Towards Spiral Brick Column Building Robots

Automation in construction has the potential to expand the technological...

Please sign up or login with your details

Forgot password? Click here to reset