<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Design Considerations Towards AI-Driven Co-Processor Accelerated Database Management</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Anh Trang Le</string-name>
          <email>rstname.lastname@ovgu.de</email>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Bala Gurumurthy</string-name>
          <email>rstname.lastname@ovgu.de</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Christoph Steup</string-name>
          <email>rstname.lastname@ovgu.de</email>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>David Broneske, Otto-von-Guericke-Universität</institution>
          ,
          <addr-line>Magdeburg</addr-line>
          ,
          <country country="DE">Germany</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Gabriel Campero Durand, Otto-von-Guericke-Universität</institution>
          ,
          <addr-line>Magdeburg</addr-line>
          ,
          <country country="DE">Germany</country>
        </aff>
        <aff id="aff2">
          <label>2</label>
          <institution>Gunter Saake, Otto-von-Guericke-Universität</institution>
          ,
          <addr-line>Magdeburg</addr-line>
          ,
          <country country="DE">Germany</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>Adopting AI techniques for query optimization is an ongoing research interest in the database community. Currently, the search space for the best plan increases drastically, with the growing heterogeneity of the target hardware, the novel tuning choices o ered, and co-processing. Hence, the need for AI techniques to identify such a best plan in a reasonable time-frame is imminent. Though AI-based solutions for improving query processing exist, there is still a need for principled system designs able to incorporate the di erent innovations, leverage synergy e ects, and keep with production-readiness expectations when using AI. In this paper, we propose a series of seven ideal design characteristics we envision for such systems. We then make the case for revisiting the traditional Mariposa system, to consider its market concepts as a useful starting point for new system designs to support the identi ed characteristics. Altogether, we expect that this short paper could be a modest contribution towards AI-driven heterogeneous processing, emphasizing the practical aspects of a supportive and principled overall design.</p>
      </abstract>
      <kwd-group>
        <kwd>AI for DBMS</kwd>
        <kwd>Self-driving DBMS</kwd>
        <kwd>Heterogeneous query processing</kwd>
        <kwd>Hardware-accelerated query processing</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1. INTRODUCTION</title>
      <p>
        In the recent decade, computer systems composed of
multiple heterogeneous processors have quickly become the
norm, rather than the exception [
        <xref ref-type="bibr" rid="ref27">27</xref>
        ]. Along with this
rapid growth, we also witness an increasing adoption of
hybrid processor database systems that circumvent the 'power
wall' [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ] and show great potentials for speeding up query
processing [
        <xref ref-type="bibr" rid="ref24">24</xref>
        ]. However, without tailored optimization
strategies, these systems cannot achieve the best performance
gains. In fact, studies show that some GPU-accelerated
systems with better operator-level implementations than their
32nd GI-Workshop on Foundations of Databases (Grundlagen von
Datenbanken), September 01-03, 2021, Munich, Germany.
      </p>
      <p>
        Copyright © 2021 for this paper by its authors. Use permitted under
Creative Commons License Attribution 4.0 International (CC BY 4.0).
CPU counterparts still have poor performance for overall
query processing in analytical benchmarks [
        <xref ref-type="bibr" rid="ref28">28</xref>
        ]. This is
partly explained by the fact that optimizing query processing for
such systems encounters numerous intrinsic challenges
caused by the diversity of tuning techniques per device , the
uncertainty (given such techniques) in accurately modelling
real-world performance impact factors (through parametric
cost models), the in uence of workloads, as well as the need
to support scalability to more devices, data and new
tuning choices [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ]. All these aspects create a huge
optimization space, which is hard to evaluate [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ], turning the task of
establishing a uniform research prototype for their detailed
study into a tough nut to crack.
      </p>
      <p>In this paper, we propose an early vision for a
principled system architecture with the goal of exposing and
easing query optimization in a co-processor accelerated data
system. In traditional systems, optimization decisions are
commonly addressed with hard-corded rules and heuristics.
Such systems, can result in weaknesses for generalizing to
unknown workloads or devices, as well as di culties for
extending the heuristics and their maintenance.</p>
      <p>
        Throughout the last decade, there has been a shift
towards employing AI techniques in handling these tasks more
e ciently, alleviating the mentioned drawbacks of
traditional methods. In the database community, there is a strong
research trend that studies how AI can bene t database
optimizations [
        <xref ref-type="bibr" rid="ref14 ref20 ref21 ref29 ref4">20, 14, 21, 29, 4</xref>
        ]. Though the prospect is bright,
there are several obstacles coming from AI itself, especially
in the deployment of AI solutions [
        <xref ref-type="bibr" rid="ref13 ref19">13, 19</xref>
        ]. Hence, adopting
them in the co-processing domain forces us to solve a
dual challenge: enhancing the performance of hybrid processor
databases, as well as maintaining the AI, and specially
machine learning (ML) models in production.
      </p>
      <p>In order to confront this situation, we consider that
principled designs are needed for heterogeneous hardware
database systems, which can facilitate the inclusion of learning
from the ground-up, to address the di erent challenges in
these systems. More precisely we propose seven
characteristics we deem as essential for the system: C1) task
modularization, C2) collaborative agents as building blocks, C3)
exchangeability of optimizers, C4) the separation of
representation and policies, C5) concepts for database administrators
(DBAs) to manage AI components, C6) ease of adaptation
to training scenarios, and C7) learning from demonstrations.
Overall, we propose that all these characteristics would
contribute to improve the solutions for heterogeneous database
query processing, while simultaneously addressing the needs
for AI production readiness.</p>
      <p>In more detail, our core contributions in this paper are:
We present to the community a rst proposal of
seven ideal features that we deem as central to building
and maintaining a practical AI-based DBMS for
coprocessor systems.</p>
      <p>
        We propose an early high-level design that builds on
the ideas of the market components of the classical
Mariposa system developed by Stonebraker et al. [
        <xref ref-type="bibr" rid="ref26">26</xref>
        ],
while seeking to support the ideal system features we
identi ed.
      </p>
      <p>The remainder of this paper is structured as follows: Sec. 2,
points out various challenges in incorporating AI
components to support co-processor database management.
Sec. 3 outlines our proposed design needs, it also describes
the high-level architecture of a system able to serve these
needs. This section covers the system features, as well as the
main work ow. Sec. 4, formalizes research questions that we
aim to address with our proposed system design. Sec. 5,
provides context to the design we consider, by reviewing related
work. Finally, Sec. 6, wraps-up this paper with a summary
and points for future work.</p>
    </sec>
    <sec id="sec-2">
      <title>CHALLENGES OF HETEROGENEOUS</title>
    </sec>
    <sec id="sec-3">
      <title>DATA MANAGEMENT</title>
      <p>In developing an AI-driven DBMS for heterogeneous
processors, the literature suggests several challenges.</p>
      <p>
        Storage Engine Design: From the perspective of a
storage engine, the trade-o between consistency,
availability and partition-tolerance, for a given workload, is a
foremost concern [
        <xref ref-type="bibr" rid="ref22">22</xref>
        ]. Addressing availability, some
challenges are: mechanisms to e ciently use scale-out processing
to an increasing number of heterogeneous processors, while
keeping in mind aspects such as di erent data transfer
rates [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]. Up front data distribution strategies, such as
hardware islands [
        <xref ref-type="bibr" rid="ref24">24</xref>
        ] or layered designs [
        <xref ref-type="bibr" rid="ref28">28</xref>
        ] for hot-cold data
are commonly adopted, but exploration of alternatives is
limited in the domain (e.g., [
        <xref ref-type="bibr" rid="ref16">16</xref>
        ]). Furthermore,
co-processorfriendly data structures and storage optimization adapted to
the diversity of application scenarios, devices, and data
characteristics (e.g., increasing relevance of textual and
semistructured data), remains important for availability.
Addressing consistency, strong mechanisms for supporting isolation
level guarantees are necessary for increasing system
maturity.
      </p>
      <p>Summary: Relevant directions for storage technologies to
enhance their co-processing e ciency, while keeping with
consistency constraints, include: workload-tuned data
distribution, transfer-aware processing, the ease for
incorporating alternative processor-speci c data optimizations (e.g.,
layouts, or compression), and nally the ability to seamlessly
share data structures across processors.</p>
      <p>
        Query Engine Design: The processing of single queries over
heterogeneous hardware o ers numerous optimization
choices, as compared to the case of homogeneous hardware (e.g.
just-in-time code generation to fuse pipelined operators into
uni ed kernels, more diversity of operator variants, or
opportunities for resource sharing of concurrent kernels).
Furthermore, there are many variants for a single operator present
depending on the underlying device [
        <xref ref-type="bibr" rid="ref3 ref5">3, 5</xref>
        ]. This number of
choices only increases when considering distributing single
plans across multiple devices, or optimizing groups of
queries at-a-time (which results pertinent for high parallelism
devices). Other than that, many relevant performance
factors (e.g. device saturation, query expression complexity) or
implementation details (e.g. cache consistency) could result
in di culties to model accurately for cost estimations.
      </p>
      <p>Summary: For e cient query processing over varied
hardware, it is important to consider methods that are able to
deal with large-scale optimization, and to work with
uncertain models for performance factors.</p>
      <p>
        AI Adoption: It might be conceptually simple to alter a
certain computer system task (e.g. magic number selection,
to build a hash function), replacing hard-coded rules with
an AI-friendly interface that provides experience for a
model, to eventually master the task. However, in practice it
is far from trivial to build and maintain such models at the
highest production-readiness levels [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ]. In essence, unlike
traditional software components, AI models can be harder
to test and can fail in unexpected ways, specially for deep
learning. Models can often be black boxes, or require copious
training to be e ciently used. Machine learning models,
speci cally, consist of an entirely particular lifecycle going from
data management tasks (including data collection and
feature engineering), model learning (and tuning), validation
and deployment, with challenges and cross-cutting concerns
all through this lifecycle [
        <xref ref-type="bibr" rid="ref19">19</xref>
        ]. Some common challenges are:
insu cient data, concept drift, and adversarial attacks.
      </p>
      <p>Summary: The incorporation of AI components might
affect the guarantees that a system can provide. To overcome
this, it is fundamental that the system is made safe to
critical AI errors with fall-back mechanisms, and nally that an
easy-to-use interface is o ered for administrators to engage
with AI metrics and model lifecycle management.
3.</p>
    </sec>
    <sec id="sec-4">
      <title>DEVELOPING AN AI-ENABLED</title>
    </sec>
    <sec id="sec-5">
      <title>CO-PROCESSOR ACCELERATED</title>
    </sec>
    <sec id="sec-6">
      <title>DATABASE PROTOTYPE</title>
      <p>In order to overcome the identi ed challenges of
scalability as well as the need for adaptability and support for the
AI/ML lifecycle, a principled design for building a system is
required. To date, similar designs have already been
considered by researchers in other areas, already o ering design
principles. In this section, we consider brie y some of such
design concepts from a general, to a more speci c case, which
we then use to propose the series of ideal characteristics, that
become the basis of our system design.</p>
      <p>
        From a general application perspective, university
courses1 and textbooks already study good practices for building
systems that incorporate machine learning [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ]. Furthermore,
there are several papers that highlight intrinsic challenges
which require designs to adapt to them [
        <xref ref-type="bibr" rid="ref25">25</xref>
        ]. They
usually refer to di culties such as modularization, or to speci c
problems of an ML approach (e.g., [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ]).
      </p>
      <p>
        Moving to a more speci c application, the authors of
the AutoSys framework [
        <xref ref-type="bibr" rid="ref18">18</xref>
        ] suggest 4 principles organized
around the goals of making systems learnable, and making
the learning manageable: exposing system behavioral
features for learning through well-de ned interfaces (P1), careful
monitoring of model behavior (P2), modularization of the
1For example, SE4AI o ered by Christian Kastner at CMU:
https://github.com/ckaestne/seaibib
learning to scope complexity (P3), and resource
management for system exploration and maintenance (P4). In
further work, authors report experience in applying their
framework, providing further practical advice.
      </p>
      <p>
        Similar design considerations have a long history in the
community that studies self-driving data management,
albeit not often coupled with AI (e.g., Babu et al. have argued
for experiment-driven adaptive tuning by having replicated
test databases [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ]); most recently Kossmann and Schlosser
also highlight the importance of modular designs and the
plug-and-play nature of optimizations in designing such
adaptive systems [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ]. Furthermore, authors identify co-related
tasks as a core challenge to e cient modularization,
proposing and testing a linear programming framework that
enables them to deal with such complication.
      </p>
      <p>
        In recent years, research in AI-based databases has
proposed designs tailored to the needs in the area. Due to space
limitations, we discuss in the following a few key ideas from
a limited set of them: Pavlo et al. [
        <xref ref-type="bibr" rid="ref20">20</xref>
        ] build a system
designed with a principled distinction between workload
modeling (i.e., representation learning) and system control (i.e.,
policies). In further work, they continue their approach
while distinguishing between externally and internally coupled
intelligent mechanisms [
        <xref ref-type="bibr" rid="ref21">21</xref>
        ], illustrated by their work in
OtterTune and NoisePage, respectively. Within the research
scope of SageDB, Kraska et al. [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ] present and evaluate a
comprehensive vision for how common database components
can be replaced with AI. Among their core ideas, authors
develop the concept of instance optimality, which posits that
a learned model for a database needs only to be provably
optimal to the intended workload and system con guration.
Finally, the authors of XuanYuan [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ] present a broad
highlevel design that focuses on identifying what are the
learnable components of current databases, considering task
modularization, and categorizing tasks according to the
functionality they o er to the overall system (e.g., self-healing,
self-assembling, self-optimizing).
      </p>
      <p>Based on this preceding work, and on the challenges
identi ed for heterogeneous co-processing, we propose the
following seven characteristics we deem that an AI-based
database should reasonably o er for this domain. We should
note that these characteristics might not be exhaustive, but
aim to serve as a starting point towards a principled design.
C1- Task Modularization: The growing hardware
heterogeneity increasingly expands the space of all possible
optimization choices for DBMSs. Already query optimizers for such
systems employ staging, wherewith optimizations are con
gured into stages and at each one there are speci c sets of
rules and mechanisms that can be adopted. Concerning ML
components, employing a single, monolithic model to learn
such a complex space and address the optimizing at a
single shot can escalate the learning cost and complexity. Task
modularization is a good alternative, since the
optimization problems to be tackled can be decomposed and solved
separately, resulting easier to learn.</p>
      <p>C2- Collaborative agents as building blocks: The best models
for a given task on a selected device are only required to be
instance optimal (i.e, their strategies do not need to
generalize to other devices). Hence, as much as possible, it might be
bene cial for designs to strive towards supporting
devicespeci c simple instance-optimal models by decomposing a
task (e.g., a single query optimization) into parts that can
be solved in a collaboration among agents (e.g., sub-query
selection and optimization per device). To this end, clean
abstractions for the task and communication protocols are
required. This characteristic seeks to address the storage
engine challenge for high device adaptability.</p>
      <p>C3- Exchangeability of optimizers: Similar to current
databases that already employ alternative optimizers in tasks like
join order optimization, for a research-oriented prototype it
becomes essential to support the use of alternative
optimizers/models in a plug-and-play manner for dealing with a
speci cally modularized task. To the point, extending
optimizers (with new features), and integrating new optimizers
should also be supported with ease, to facilitate the
evolution of the overall system.</p>
      <p>
        C4- The separation of representation and policies: Following
related work [
        <xref ref-type="bibr" rid="ref20">20</xref>
        ], we propose that a smart separation
between representation learning (i.e., how a model decides to
represent an entity) and policies (i.e., the decisions made
by a model, for a task, given a representation), will be of
value. This separation would facilitate representation re-use
(transfer learning) across tasks that work on similar entities
(e.g., a query) and the analysis of alternative multi-modal
solutions for a task which could provide bene ts on di erent
scenarios (e.g., a query can be represented as multi-sets of
traditionally encoded predicates, joins, tables; but it can
also be represented as a graph of such features). As di erent
policies can bene t from stable compact learned
representations, this characteristic seeks to help in the aforementioned
query engine challenges for large-scale optimization.
C5- Concepts for DBAs to manage AI components: In
consideration of the many steps requiring human management in
the ML lifecycle, we envision that the role of the DBA could
be extended to incorporate a degree of actions to manage
this lifecycle. To support this, novel services exposing ML
management with clearly-de ned interfaces will be needed
in the database context.
      </p>
      <p>C6- Ease of adaptation to training scenarios: Di erent user
scenarios will create di erent alternatives for training the
ML models. It might be that some scenarios accept live
training in the background for a given task, while other scenarios
might require collecting experience data for o ine learning
at a later stage. Some scenarios might allow for ample
largescale training, while training on other scenarios might be
severely resource-constrained. In either case, the design for
the system components in charge of scheduling model
training, with its intrinsic resource management, should be able
to cater to such variations. The ability of models to schedule
self-training should also be supported.</p>
      <p>C7- Learning from demonstrations: The nal feature that we
believe is essential for successful adoption of AI models to
solve computer system tasks has to do with robustness. In
order for the model to be able to replace a current strategy,
an e cient and reasonable solution would be starting with
the model by being pre-trained on experience collected from
the current strategy. Hence, mechanisms for creating and
using demonstrations for training are important.</p>
      <p>After listing these ideal system characteristics, we can now
present a tentative design that can be adopted to ful ll them.</p>
      <p>
        To be precise, we make the case for a design based on the
Mariposa system { a market-based distributed DBMS [
        <xref ref-type="bibr" rid="ref26">26</xref>
        ],
which we will discuss further in Sec. 5. In general,
Mariposa operates the query processing in a decentralized manner
that allows for local autonomy regarding query execution
in each site contained within a network, instead of
centralized management. Mariposa's working mechanism primarily
bases itself on an economic paradigm, focusing on two
separate markets, for data and query distribution, respectively.
In our research, we argue for building on Mariposa's market
concepts, in two key ways: First, by considering an
architecture with heterogeneous processing capabilities. Second, by
investigating how AI-based solutions can augment the
proposed markets. In this regard, we take as a hypothesis that
the modularization of the optimization mechanisms
presented in Mariposa (C1, C2) serve to scope the complexity of
the learning tasks, serving as a workable basis for
incorporating technological innovations as well as the production
readiness. Figure 1 envisions a general architecture of our
proposed design, which employs the market concepts from
the Mariposa system as a starting point.
      </p>
      <p>At a high level, four components are involved:</p>
      <p>Global Optimizer: This component maps SQL queries to
actual plans. It is in charge of global query optimization
including: the generation of global plans, partial splitting of
the plans (to distribute among devices), decision support for
selection of plans returned from the device processor class
optimizer, and (optionally) requests for data re-distribution.</p>
      <p>Storage Manager: This component provides a centralized
collection of statistics about devices and a tracking
mechanism of data distribution schemes. It enables user-facing
congurations of the overall storage, including schema
management, index selection and coarse-grained partitioning. It also
is intended to provide the DBA with an interface to the AI
components, including learning from demonstration. Hence,
this component realizes C5 and C7.</p>
      <p>Device Processor Class Optimizer: This is the key
component for decentralized modularized data management. As
we could propose a component per processor, or per
compute node/device (i.e., irrespective of the co-processor variety
included), we nd that a component per type of processor
serves as a workable middle-ground. This component is in
charge of local data fragmentation, local query optimization
(and pricing), algorithm selection and the actual execution
of queries. It is also responsible for autonomous data sharing.</p>
      <p>AI Support System: This element encompasses the
functionality required to support the ML lifecycle. It includes
model management, model training, among others. It is
intended to facilitate C6 and C7.</p>
      <p>Our architecture enables the distribution of query and
sub-query plans for cost estimation on the device processor
class optimizers; besides the distribution of data driven by
the device-speci c component, in addition to (partial input
from) the global optimizer.</p>
      <p>
        Query Processing: At the start, a group of queries enters
the system at a given time step, and at the global optimizer,
they are ranked by their importance to overall performance
goals. Second, they are globally partitioned and subsets of
their plans are shipped to the devices, for pricing. In third
place, the di erent device processor class optimizers provide
a set of optimizations and prices for the queries requested.
To do this, they featurize the query plans (C4), and
suggest di erent combinations of sub-queries to execute with
di erent costs (for this they consider local data statistics
and learned models for algorithm selection). The prices are
then returned, in a fourth step, to the global optimizer, so
this optimizer can select among the bids until all queries are
served. Once choices are made, nally queries can be
executed on the devices. This scheme describes a query market,
as the proposed by Stonebraker et al. [
        <xref ref-type="bibr" rid="ref26">26</xref>
        ]. By framing the
problem in economic terms, this approach helps
decentralized coordination and favors local strategies for optimization
(C2). Some optimization choices include: variant selection,
operator merging into uni ed kernels, di erent sub-query
splitting and pipelining strategies, parallelism tuning with
morsel-driven execution, locality awareness, intermediate
results reuse and operator sharing across queries.
      </p>
      <p>Data Management: The data distribution lifecycle, which
occurs in the background, can be understood as follows: On
system start, given the lack of information for distributing
the data, some assumptions can be made by the storage
manager to achieve fragmentation and distribute the data for
load balancing. In general, data can be grouped into
fragments that are commonly co-accessed and that provide a
given utility. While the system is online there are two ways
in which data can be redistributed: First, when an optimal
plan for a query cannot be found, global requests for data
reorganization can be made by the global optimizer (with some
pre-designed mechanism). Following these requests, the
device optimizers can organize autonomously how to serve the
global hints. Second, device optimizers themselves are
responsible for tracking the utility derived from a given data
fragment (i.e., depending on the queries that can be
served by such fragment). This enables devices to have metrics
to be able to assess how much utility can be derived from
fragments that are not locally available. Hence, by using
information from the storage manager, device optimizers can
participate in a data market. In this market, devices buy
copies of fragments, and delete local copies of fragments,
while keeping with some constraints (e.g., for co-location or
availability). The market formulation is expected to
facilitate adaptivity and work distribution (C2). Some learning
tasks to be tackled with this system include: local algorithm
selection, local query optimization, global plan selection,
local fragment partitioning, data sharing, global management
for data redistribution, query classi cation/prioritization.</p>
      <p>Altogether, the proposed design is intended to realize the
ideal characteristics we set as goals (C1-C7). To achieve this,
the characteristics of the original Mariposa design are
leveraged (C1,C2). Furthermore, the design seeks to facilitate
the use of alternative optimizers or models for a task (C3),
to provide chances for reusing representations across
components (e.g., of queries with respect to the device
optimizers), which that can then adopt di erent policies (C4), and
to create opportunities for components to have exible AI
training engaging the DBA with the process, and enabling
to learn from demonstration data (C5-C7).
4.</p>
    </sec>
    <sec id="sec-7">
      <title>OPEN QUESTIONS</title>
      <p>Based on our proposed design, in this section we turn to
open questions we envision our design to be able to help
address. These questions relate to query engine (Q1-Q2),
storage engine (Q3) or machine learning (Q4-Q5) challenges.
Q1: What building blocks for intelligent and collaborative
query processing are necessary to achieve improvements on
heterogeneous processors, considering single-query
optimization {focusing on algorithm selection, parallelism tuning,
splitting, merging and pipelining of operators; compared to
strong baselines?
Q2: What strategic designs for intelligent and collaborative
Global Optimizer
Query Prioritization
Global Plan Partitioning
Global Plan Selection
Global Management for
Data Redistribution
System Administration</p>
      <p>Interface
Configurations</p>
      <p>Logging
Workload-level
Performance Goal</p>
      <p>Storage Manager
Fragment
Tracking</p>
      <p>Access
Paths</p>
      <p>Indexes and</p>
      <p>Views</p>
      <p>Device
Monitor and</p>
      <p>Info</p>
      <p>Manager for</p>
      <p>AI
Components</p>
      <p>Device Processor Class Optimizer
Local Storage Manager</p>
      <p>Local Query Optimizer</p>
      <p>Executor
Fragment
formation</p>
      <p>Fragment
valuation</p>
      <p>and
Statistics</p>
      <p>Global
Storage
Info</p>
      <p>Data
sharing
query processing lead to performance gains on heterogeneous
processors, considering multi-query optimization (MQO) {
with a focus on intermediate results reuse and operator
sharing? To what degree do intelligent methods compete with
non AI-based alternatives?
Q3: What precise contributions are brought from di erent
applications of AI, to the e ciency of data sharing across
co-processors; contrasted with competitive baselines?
Q4: How do AI-based approaches perform in robustness
tests, compared to heuristic baselines, with respect to
changing assumptions such as novel processors or unseen
workloads/kinds of queries? What level of improvements
does curricula management bring regarding robustness and
sample-e ciency?
Q5: What techniques from learning management (such as
learning from demonstrations, or transfer optimization) or
from database implementation contribute the most to an
e cient integration of the AI components into the
lifecycle of data management? Do these techniques contribute to
trade-o management between approaches? To what extent
do these techniques improve the overall readiness of our
solution over baseline choices?</p>
    </sec>
    <sec id="sec-8">
      <title>RELATED WORK</title>
    </sec>
    <sec id="sec-9">
      <title>AI-based database systems</title>
      <p>
        Incorporating AI components to traditional systems, for
improving the overall system performance, is a signi cant
topic that is currently catching great attention from
researchers, in both theoretical and applied aspects. On one hand,
multiple studies investigate the strategies for an overall
codesign of systems and AI, tting for general applications [
        <xref ref-type="bibr" rid="ref18">18</xref>
        ]
and more speci c ones in databases [
        <xref ref-type="bibr" rid="ref21">21</xref>
        ]. On the other hand,
many research zooms into the particular problems that can
bene t from using suitable AI techniques. Those, in
databases, range from cost and cardinality estimation assisted
by deep neural networks [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ], join order selection or
partitioning supported by reinforcement learning [
        <xref ref-type="bibr" rid="ref15 ref4 ref8">15, 4, 8</xref>
        ], and
many more [
        <xref ref-type="bibr" rid="ref14 ref29">29, 14</xref>
        ]. In a bigger scope, other recent literature
also studies complete database management system assisted
by machine intelligence, instead of focusing on only one or
some certain tasks within it. Some highlighted work, which
can be considered to be in a relative early stage, include
Peloton [
        <xref ref-type="bibr" rid="ref20">20</xref>
        ], SageDB [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ] and GaussDB2.
5.2
      </p>
    </sec>
    <sec id="sec-10">
      <title>Market-based distributed database systems</title>
      <p>In economics, a market is de ned as any structure that
enables trading activities among its participants, for any
types of goods, services or information, following a pricing
mechanism that aims for optimal distribution and allocation of
resources. Interestingly, this concept has been reformulated
to e ciently solve the problems of query optimization in
many distributed data management systems. To help with
some of our ideal design characteristics (C2), we consider
this concepts to be relevant.</p>
      <p>
        The system that we base our design on is Mariposa [
        <xref ref-type="bibr" rid="ref26">26</xref>
        ],
which adopts market concepts to achieve autonomous
data sharing and query processing. In a wide-area network,
Mariposa allows each single site to take a full control over
its own resources, enabling it to decide on data objects to
buy or sell and queries for which to bid on, for execution.
A bidding protocol is de ned to regulate the transactions
among all sites within the two markets: 1) Query Market :
each query Q enters the system with a budget B(t)
indicating the price that the user wants to pay for running Q
within time t. Also, Q is administered by a broker, which
sends out to bidder sites the requests for bids to execute
subqueries Q1; :::; Qn and then decides on the winning sites.
2) Data Market : each table included in the FROM clause of
a query can be split into a set of fragments. A site needs to
buy fragments referenced in the subquery that it wants to
bid on, and can sell its must-evicted fragments at any time
by conducting an auction, following the system pricing
mechanism. The trading process runs continuously. Each site
makes decisions on storing, buying and selling fragments or
the replicas of fragments made by the site itself, aiming at
maximizing its pro t per unit time.
2https://e.huawei.com/en/solutions/cloud-computing/bigdata/gaussdb-distributed-database
      </p>
      <p>
        Another framework that is based on an economic
paradigm to acquire self-adaptive query allocation in large-scale
distributed systems is SQLB [
        <xref ref-type="bibr" rid="ref23">23</xref>
        ], in which the authors
highlight the importance of maintaining constantly the interests
of the participators throughout the ongoing market. The
system targets at preserving participants' satisfaction on query
allocation/execution and guaranteeing query load balancing
within the system, which then helps in minimizing the
response time and maximizing system throughput.
      </p>
      <p>
        NashDB [
        <xref ref-type="bibr" rid="ref16">16</xref>
        ] is a more recent framework that shows
efciency in autonomously handling data fragmentation,
replicas generation, allocation and cluster sizing to attain the
Nash equilibrium, i.e. supply-demand balance in markets.
      </p>
    </sec>
    <sec id="sec-11">
      <title>CONCLUSION</title>
      <p>
        The search space of traditional query optimizers is
very large. Such search space is further increased many folds
with the introduction of co-processors for query execution.
AI techniques are promising solutions in traversing such a
large search space, identifying the best plan in an e ective
and time-e cient way. As a consequence, there is a growing
body of research devoted to AI-based solutions [
        <xref ref-type="bibr" rid="ref29">29</xref>
        ].
However, turning these solutions into a production-ready
contribution remains a challenge since AI, and machine learning
in speci c, contain many intrinsic challenges that require
overall system considerations. In sum, systems builders are
placed in the di cult position of having to simultaneously
tackle a set of heterogeneous co-processing challenges, next
to a set of AI adoption challenges.
      </p>
      <p>As a motivation for this work, we considered that a
principled system design could contribute to addressing the
aforementioned 2 sets of challenges, while at the same time
helping in the integration of di erent technological
innovations. In order to contribute towards this goal, in this
paper we summarized a list of preceding work that helped
us to identify 7 design characteristics (C1-C7), addressing
needs for scoping complexity and di culty of learning (C1,
C7), high adaptability/instance optimality (C2-C3), scale
(C4), and machine learning issues in general (C5-C6).
Based on this, we proposed an early overall system design,
based on concepts originally studied in the visionary Mariposa
system, speci cally the economic concepts for a data and
query market. We propose this design to ful ll the design
characteristics, while o ering an AI-based heterogeneous
coprocessing database. To conclude, we listed open questions
that we would like to review, moving forward, by using our
proposed design.</p>
    </sec>
    <sec id="sec-12">
      <title>ACKNOWLEDGMENTS</title>
      <p>This work was partially funded by the DFG (grant no.: SA
465/51-1 and PI 447/9). The authors would like to thank
Marcus Pinnecke, Andrey Kharitonov, Rajatha Rao and
Yash Shah for collaborations related to this work.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>I.</given-names>
            <surname>Arefyeva</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Broneske</surname>
          </string-name>
          , G. Campero,
          <string-name>
            <given-names>M.</given-names>
            <surname>Pinnecke</surname>
          </string-name>
          , and
          <string-name>
            <given-names>G.</given-names>
            <surname>Saake</surname>
          </string-name>
          .
          <article-title>Memory management strategies in CPU/GPU database systems: A survey</article-title>
          .
          <source>In BDAS</source>
          . Springer,
          <year>2018</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>S.</given-names>
            <surname>Babu</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N.</given-names>
            <surname>Borisov</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Duan</surname>
          </string-name>
          ,
          <string-name>
            <given-names>H.</given-names>
            <surname>Herodotou</surname>
          </string-name>
          , and
          <string-name>
            <given-names>V.</given-names>
            <surname>Thummala. Automated</surname>
          </string-name>
          experiment
          <article-title>-driven management of (database) systems</article-title>
          . In HotOS,
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>D.</given-names>
            <surname>Broneske</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Bre</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Heimel</surname>
          </string-name>
          , and
          <string-name>
            <given-names>G.</given-names>
            <surname>Saake</surname>
          </string-name>
          .
          <article-title>Toward hardware-sensitive database operations</article-title>
          .
          <source>In EDBT. OpenProceedings.org</source>
          ,
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>G. C.</given-names>
            <surname>Durand</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Piriyev</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Pinnecke</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Broneske</surname>
          </string-name>
          ,
          <string-name>
            <given-names>B.</given-names>
            <surname>Gurumurthy</surname>
          </string-name>
          , and
          <string-name>
            <surname>G. Saake.</surname>
          </string-name>
          <article-title>Automated vertical partitioning with deep reinforcement learning</article-title>
          .
          <source>In ADBIS</source>
          . Springer,
          <year>2019</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>B.</given-names>
            <surname>Gurumurthy</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Broneske</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Pinnecke</surname>
          </string-name>
          , G. Campero, and
          <string-name>
            <given-names>G.</given-names>
            <surname>Saake</surname>
          </string-name>
          .
          <article-title>Simd vectorized hashing for grouped aggregation</article-title>
          .
          <source>In ADBIS</source>
          . Springer,
          <year>2018</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>B.</given-names>
            <surname>Gurumurthy</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T.</given-names>
            <surname>Drewes</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Broneske</surname>
          </string-name>
          , G. Saake, and
          <string-name>
            <given-names>T.</given-names>
            <surname>Pionteck</surname>
          </string-name>
          .
          <article-title>Adaptive data processing in heterogeneous hardware systems</article-title>
          . In GvDB,
          <year>2018</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>A.</given-names>
            <surname>Haj-Ali</surname>
          </string-name>
          ,
          <string-name>
            <given-names>N. K.</given-names>
            <surname>Ahmed</surname>
          </string-name>
          ,
          <string-name>
            <given-names>T.</given-names>
            <surname>Willke</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Gonzalez</surname>
          </string-name>
          , et al.
          <article-title>A view on deep reinforcement learning in system optimization</article-title>
          .
          <source>arXiv preprint arXiv:1908.01275</source>
          ,
          <year>2019</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>B.</given-names>
            <surname>Hilprecht</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Binnig</surname>
          </string-name>
          , and
          <string-name>
            <given-names>U.</given-names>
            <surname>Ro</surname>
          </string-name>
          <article-title>hm. Learning a partitioning advisor for cloud databases</article-title>
          .
          <source>In SIGMOD</source>
          ,
          <year>2020</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>G.</given-names>
            <surname>Hulten</surname>
          </string-name>
          .
          <source>Building Intelligent Systems</source>
          . Springer,
          <year>2019</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <string-name>
            <given-names>A.</given-names>
            <surname>Kipf</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Vorona</surname>
          </string-name>
          , J. Muller,
          <string-name>
            <given-names>T.</given-names>
            <surname>Kipf</surname>
          </string-name>
          , et al.
          <article-title>Estimating cardinalities with deep sketches</article-title>
          .
          <source>In SIGMOD. ACM</source>
          ,
          <year>2019</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <string-name>
            <given-names>J.</given-names>
            <surname>Kossmann</surname>
          </string-name>
          and
          <string-name>
            <given-names>R.</given-names>
            <surname>Schlosser</surname>
          </string-name>
          .
          <article-title>Self-driving database systems: A conceptual approach</article-title>
          .
          <source>DAPD</source>
          ,
          <year>2020</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <given-names>T.</given-names>
            <surname>Kraska</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Alizadeh</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Beutel</surname>
          </string-name>
          ,
          <string-name>
            <given-names>H.</given-names>
            <surname>Chi</surname>
          </string-name>
          , et al.
          <article-title>SageDB: A learned database system</article-title>
          .
          <source>In CIDR</source>
          ,
          <year>2019</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          [13]
          <string-name>
            <given-names>A.</given-names>
            <surname>Lavin</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C. M.</given-names>
            <surname>Gilligan-Lee</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Visnjic</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Ganju</surname>
          </string-name>
          , et al.
          <article-title>Technology readiness levels for machine learning systems</article-title>
          . arXiv,
          <year>2021</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          [14]
          <string-name>
            <given-names>G.</given-names>
            <surname>Li</surname>
          </string-name>
          ,
          <string-name>
            <given-names>X.</given-names>
            <surname>Zhou</surname>
          </string-name>
          , and
          <string-name>
            <given-names>S.</given-names>
            <surname>Li</surname>
          </string-name>
          .
          <article-title>Xuanyuan: An AI-native database</article-title>
          .
          <source>IEEE Data Eng. Bull.</source>
          ,
          <volume>42</volume>
          (
          <issue>2</issue>
          ),
          <year>2019</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          [15]
          <string-name>
            <given-names>R.</given-names>
            <surname>Marcus</surname>
          </string-name>
          and
          <string-name>
            <given-names>O.</given-names>
            <surname>Papaemmanouil</surname>
          </string-name>
          .
          <article-title>Deep reinforcement learning for join order enumeration</article-title>
          .
          <source>In aiDM@SIGMOD. Association for Computing Machinery</source>
          ,
          <year>2018</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          [16]
          <string-name>
            <given-names>R.</given-names>
            <surname>Marcus</surname>
          </string-name>
          ,
          <string-name>
            <given-names>O.</given-names>
            <surname>Papaemmanouil</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Semenova</surname>
          </string-name>
          , and
          <string-name>
            <given-names>S.</given-names>
            <surname>Garber. NashDB</surname>
          </string-name>
          :
          <article-title>An end-to-end economic method for elastic database fragmentation, replication, and provisioning</article-title>
          .
          <source>In SIGMOD. Association for Computing Machinery</source>
          ,
          <year>2018</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          [17]
          <string-name>
            <given-names>A.</given-names>
            <surname>Meister</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Bre</surname>
          </string-name>
          , and
          <string-name>
            <given-names>G.</given-names>
            <surname>Saake</surname>
          </string-name>
          .
          <article-title>Toward GPU-accelerated database optimization</article-title>
          .
          <source>Datenbank-Spektrum</source>
          ,
          <volume>15</volume>
          (
          <issue>2</issue>
          ),
          <year>2015</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          [18]
          <string-name>
            <surname>C.-J. Mike Liang</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          <string-name>
            <surname>Xue</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          <string-name>
            <surname>Yang</surname>
            , and
            <given-names>L. Zhou.</given-names>
          </string-name>
          <article-title>The case for learning-and-system co-design</article-title>
          .
          <source>ACM SIGOPS Operating Systems Review</source>
          ,
          <volume>53</volume>
          (
          <issue>1</issue>
          ),
          <year>2019</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          [19]
          <string-name>
            <given-names>A.</given-names>
            <surname>Paleyes</surname>
          </string-name>
          , R.-G. Urma, and
          <string-name>
            <given-names>N.</given-names>
            <surname>Lawrence</surname>
          </string-name>
          .
          <article-title>Challenges in deploying machine learning: A survey of case studies</article-title>
          . arXiv, abs/
          <year>2011</year>
          .09926,
          <year>2020</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          [20]
          <string-name>
            <given-names>A.</given-names>
            <surname>Pavlo</surname>
          </string-name>
          , G. Angulo,
          <string-name>
            <given-names>J.</given-names>
            <surname>Arulraj</surname>
          </string-name>
          ,
          <string-name>
            <given-names>H.</given-names>
            <surname>Lin</surname>
          </string-name>
          , et al.
          <article-title>Self-driving database management systems</article-title>
          .
          <source>In CIDR</source>
          , volume
          <volume>4</volume>
          ,
          <year>2017</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          [21]
          <string-name>
            <given-names>A.</given-names>
            <surname>Pavlo</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M.</given-names>
            <surname>Butrovich</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            <surname>Joshi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>L.</given-names>
            <surname>Ma</surname>
          </string-name>
          , et al.
          <article-title>External vs. internal: An essay on machine learning agents for autonomous database management systems</article-title>
          .
          <source>IEEE Data Eng. Bull.</source>
          ,
          <volume>42</volume>
          ,
          <year>2019</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          [22]
          <string-name>
            <given-names>M.</given-names>
            <surname>Pinnecke</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Broneske</surname>
          </string-name>
          ,
          <string-name>
            <given-names>G. C.</given-names>
            <surname>Durand</surname>
          </string-name>
          , and
          <string-name>
            <given-names>G.</given-names>
            <surname>Saake</surname>
          </string-name>
          .
          <article-title>Are databases t for hybrid workloads on GPUs? A storage engine's perspective</article-title>
          .
          <source>In ICDE. IEEE</source>
          ,
          <year>2017</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref23">
        <mixed-citation>
          [23]
          <string-name>
            <given-names>J.-A.</given-names>
            <surname>Quiane-Ruiz</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            <surname>Lamarre</surname>
          </string-name>
          , and
          <string-name>
            <given-names>P.</given-names>
            <surname>Valduriez. SQLB</surname>
          </string-name>
          :
          <article-title>A Query Allocation Framework for Autonomous Consumers</article-title>
          and Providers.
          <year>2007</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref24">
        <mixed-citation>
          [24]
          <string-name>
            <given-names>A.</given-names>
            <surname>Raza</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            <surname>Chrysogelos</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P.</given-names>
            <surname>Sioulas</surname>
          </string-name>
          ,
          <string-name>
            <given-names>V.</given-names>
            <surname>Indjic</surname>
          </string-name>
          , et al.
          <article-title>GPU-accelerated data management under the test of time</article-title>
          .
          <source>In CIDR</source>
          ,
          <year>2020</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref25">
        <mixed-citation>
          [25]
          <string-name>
            <given-names>I.</given-names>
            <surname>Stoica</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Song</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R. A.</given-names>
            <surname>Popa</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Patterson</surname>
          </string-name>
          , et al.
          <article-title>A berkeley view of systems challenges for ai</article-title>
          .
          <source>arXiv preprint arXiv:1712.05855</source>
          ,
          <year>2017</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref26">
        <mixed-citation>
          [26]
          <string-name>
            <given-names>M.</given-names>
            <surname>Stonebraker</surname>
          </string-name>
          ,
          <string-name>
            <given-names>P. M.</given-names>
            <surname>Aoki</surname>
          </string-name>
          ,
          <string-name>
            <given-names>W.</given-names>
            <surname>Litwin</surname>
          </string-name>
          ,
          <string-name>
            <surname>A.</surname>
          </string-name>
          <article-title>Pfe er</article-title>
          , et al.
          <article-title>Mariposa: A wide-area distributed database system</article-title>
          .
          <source>VLDB Journal</source>
          ,
          <volume>5</volume>
          (
          <issue>1</issue>
          ),
          <year>1996</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref27">
        <mixed-citation>
          [27]
          <string-name>
            <given-names>M.</given-names>
            <surname>Zahran</surname>
          </string-name>
          .
          <article-title>Heterogeneous computing: Hardware and software perspectives</article-title>
          .
          <source>ACM</source>
          ,
          <year>2016</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref28">
        <mixed-citation>
          [28]
          <string-name>
            <given-names>Y.</given-names>
            <surname>Zhang</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Y.</given-names>
            <surname>Zhang</surname>
          </string-name>
          , J. Lu,
          <string-name>
            <given-names>S.</given-names>
            <surname>Wang</surname>
          </string-name>
          , et al.
          <article-title>One size does not t all: Accelerating OLAP workloads with GPUs</article-title>
          .
          <source>DAPD</source>
          ,
          <volume>38</volume>
          ,
          <year>2020</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref29">
        <mixed-citation>
          [29]
          <string-name>
            <given-names>X.</given-names>
            <surname>Zhou</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Chai</surname>
          </string-name>
          ,
          <string-name>
            <given-names>G.</given-names>
            <surname>Li</surname>
          </string-name>
          ,
          <string-name>
            <given-names>and J.</given-names>
            <surname>Sun</surname>
          </string-name>
          .
          <article-title>Database meets arti cial intelligence: A survey</article-title>
          .
          <source>TKDE</source>
          ,
          <year>2020</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>