<!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>WattDB-a Rocky Road to Energy Proportionality</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Theo Härder</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Extended Abstract</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Databases and Information Systems Group University of Kaiserslautern</institution>
          ,
          <country country="DE">Germany</country>
        </aff>
      </contrib-group>
      <pub-date>
        <year>2013</year>
      </pub-date>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>
        Energy e ciency is becoming more important in database
design, i. e., the work delivered by a database server should
be accomplished by minimal energy consumption. So far, a
substantial number of research papers examined and
optimized the energy consumption of database servers or single
components. In this way, our rst e orts were exclusively
focused on the use of ash memory or SSDs in a DBMS context
to identify their performance potential for typical DB
operations. In particular, we developed tailor-made algorithms to
support caching for ash-based databases [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ], however with
limited success concerning the energy e ciency of the entire
database server.
      </p>
      <p>
        A key observation made by Tsirogiannis et al. [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ]
concerning the energy e ciency of single servers, the best
performing con guration is also the most energy-e cient one,
because power use is not proportional to system utilization
and, for this reason, runtime needed for accomplishing a
computing task essentially determines energy consumption.
Based on our caching experiments for ash-based databases,
we came to the same conclusion [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ]. Hence, the server
system must be fully utilized to be most energy e cient.
However, real-world workloads do not stress servers continuously.
Typically, their average utilization ranges between 20 and
50% of peak performance [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]. Therefore, traditional
singleserver DBMSs are chronically underutilized and operate
below their optimal energy-consumption-per-query ratio. As
a result, there is a big optimization opportunity to decrease
energy consumption during o -peak times.
      </p>
      <p>Because the energy use of single-server systems is far from
being energy proportional, we came up with the
hypothesis that better energy e ciency may be achieved by a
cluster of nodes whose size is dynamically adjusted to the
current workload demand. For this reason, we shifted our
research focus from in exible single-server DBMSs to
distributed clusters running on lightweight nodes. Although
distributed systems impose some performance degradation
compared to a single, brawny server, they o er higher energy
saving potential in turn.</p>
      <p>
        Current hardware is not energy proportional, because a
single server consumes, even when idle, a substantial
fraction of its peak power [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]. Because typical usage patterns
lead to a server utilization far less than its maximum,
energy e ciency of a server aside from peak performance is
reduced [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ]. In order to achieve energy proportionality using
commodity hardware, we have chosen a clustered approach,
where each node can be powered independently. By
turning on/o whole nodes, the overall performance and energy
consumption can be tted to the current workload. Unused
servers could be either shut down or made available to other
processes. If present in a cloud, those servers could be leased
to other applications.
      </p>
      <p>We have developed a research prototype of a
distributed DBMS called WattDB on a scale-out architecture,
consisting of n wimpy computing nodes, interconnected by an
1GBit/s Ethernet switch. The cluster currently consists of
10 identical nodes, composed of an Intel Atom D510 CPU,
2 GB DRAM and an SSD. The con guration is considered
Amdahl-balanced, i. e., balanced between I/O and network
throughput on one hand and processing power on the other.</p>
      <p>Compared to In niBand, the bandwidth of the
interconnecting network is limited but su cient to supply the
lightweight nodes with data. More expensive, yet faster
connections would have required more powerful processors and
more sophisticated I/O subsystems. Such a design would
have pushed the cost beyond limits, especially because we
would not have been able to use commodity hardware.
Furthermore, by choosing lightweight components, the overall
energy footprint is low and the smallest con guration, i. e.,
the one with the fewest number of nodes, exhibits low power
consumption. Moreover, experiments running on a small
cluster can easily be repeated on a cluster with more
powerful nodes.</p>
      <p>A dedicated node is the master node, handling incoming
queries and coordinating the cluster. Some of the nodes
have each four hard disks attached and act as storage nodes,
providing persistent data storage to the cluster. The
remaining nodes (without hard disks drives) are called processing
nodes. Due to the lack of directly accessible storage, they
can only operate on data provided by other nodes (see
Figure 1).</p>
      <p>All nodes can evaluate (partial) query plans and execute
DB operators, e. g., sorting, aggregation, etc., but only the
storage nodes can access the DB storage structures, i. e.,
tables and indexes. Each storage node maintains a DB bu er</p>
      <p>S
S
D</p>
      <p>S
S
D</p>
    </sec>
    <sec id="sec-2">
      <title>Storage Node</title>
    </sec>
    <sec id="sec-3">
      <title>Disk</title>
    </sec>
    <sec id="sec-4">
      <title>Disk S S D</title>
      <p>S
S
D
S
S
D</p>
    </sec>
    <sec id="sec-5">
      <title>Storage Node</title>
    </sec>
    <sec id="sec-6">
      <title>Disk</title>
    </sec>
    <sec id="sec-7">
      <title>Disk</title>
    </sec>
    <sec id="sec-8">
      <title>Disk</title>
    </sec>
    <sec id="sec-9">
      <title>Disk S S D</title>
    </sec>
    <sec id="sec-10">
      <title>Storage Node</title>
    </sec>
    <sec id="sec-11">
      <title>Disk</title>
    </sec>
    <sec id="sec-12">
      <title>Disk</title>
    </sec>
    <sec id="sec-13">
      <title>Disk</title>
    </sec>
    <sec id="sec-14">
      <title>Disk</title>
      <p>S
S
D
S
S
D
S
S
D</p>
    </sec>
    <sec id="sec-15">
      <title>Disk</title>
    </sec>
    <sec id="sec-16">
      <title>Disk</title>
    </sec>
    <sec id="sec-17">
      <title>Disk</title>
    </sec>
    <sec id="sec-18">
      <title>Disk</title>
    </sec>
    <sec id="sec-19">
      <title>Disk</title>
    </sec>
    <sec id="sec-20">
      <title>Disk</title>
    </sec>
    <sec id="sec-21">
      <title>Storage Node</title>
    </sec>
    <sec id="sec-22">
      <title>Storage Node</title>
    </sec>
    <sec id="sec-23">
      <title>Disk</title>
    </sec>
    <sec id="sec-24">
      <title>Disk</title>
    </sec>
    <sec id="sec-25">
      <title>Disk</title>
    </sec>
    <sec id="sec-26">
      <title>Disk</title>
      <p>to keep recently referenced pages in main memory, whereas
a processing node does not cache intermediate results. As a
consequence, each query needs to always fetch the quali ed
records from the corresponding storage nodes.</p>
      <p>Hence, our cluster design results in a shared-nothing
architecture where the nodes only di erentiate to those which
have or have not direct access to DB data on external
storage. Each of the nodes is additionally equipped with a
128GB Solid-State Disk (Samsung 830 SSD). The SSDs do
not store the DB data, they provide swap space to support
external sorting and to provide persistent storage for
conguration les. We have chosen SSDs, because their access
latency is much lower compared to traditional hard disks;
hence, they are better suited for temp storage.</p>
      <p>In WattDB, a dedicated component, running on the
master node, controls the energy consumption, called
EnergyController. This component monitors the performance of
all nodes in the cluster. Depending on the current query
workload and node utilization, the EnergyController
activates and suspends nodes to guarantee a su ciently high
node utilization depending on the workload demand.
Suspended nodes do only consume a fraction of the idle power,
but can be brought back online in a matter of a few
seconds. It also modi es query plans to dynamically distribute
the current workload on all running nodes thereby achieving
balanced utilization of the active processing nodes.</p>
      <p>As data-intensive workloads, we submit speci c TPC-H
queries against a distributed shared-nothing DBMS, where
time and energy use are captured by speci c monitoring and
measurement devices. We con gure various static clusters
of varying sizes and show their in uence on energy e ciency
and performance. Further, using an EnergyController and
a load-aware scheduler, we verify the hypothesis that
energy proportionality for database management tasks can be
well approximated by dynamic clusters of wimpy computing
nodes.
1.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>L. A.</given-names>
            <surname>Barroso</surname>
          </string-name>
          and
          <string-name>
            <given-names>U.</given-names>
            <surname>Ho</surname>
          </string-name>
          <article-title>lzle. The Case for Energy-Proportional Computing</article-title>
          . IEEE Computer,
          <volume>40</volume>
          (
          <issue>12</issue>
          ):
          <volume>33</volume>
          {
          <fpage>37</fpage>
          ,
          <year>2007</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>T.</given-names>
            <surname>Ha</surname>
          </string-name>
          rder, V. Hudlet,
          <string-name>
            <given-names>Y.</given-names>
            <surname>Ou</surname>
          </string-name>
          , and
          <string-name>
            <given-names>D.</given-names>
            <surname>Schall</surname>
          </string-name>
          .
          <article-title>Energy e ciency is not enough, energy proportionality is needed!</article-title>
          <source>In DASFAA Workshops, 1st Int. Workshop on FlashDB, LNCS 6637</source>
          , pages
          <fpage>226</fpage>
          {
          <fpage>239</fpage>
          ,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>Y.</given-names>
            <surname>Ou</surname>
          </string-name>
          , T. Harder, and
          <string-name>
            <given-names>D.</given-names>
            <surname>Schall</surname>
          </string-name>
          .
          <article-title>Performance and Power Evaluation of Flash-Aware Bu er Algorithms</article-title>
          .
          <source>In DEXA, LNCS 6261</source>
          , pages
          <fpage>183</fpage>
          {
          <fpage>197</fpage>
          ,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>D.</given-names>
            <surname>Schall</surname>
          </string-name>
          , V. Hofner, and
          <string-name>
            <given-names>M.</given-names>
            <surname>Kern</surname>
          </string-name>
          .
          <article-title>Towards an Enhanced Benchmark Advocating Energy-E cient Systems</article-title>
          .
          <source>In TPCTC, LNCS 7144</source>
          , pages
          <fpage>31</fpage>
          {
          <fpage>45</fpage>
          ,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>D.</given-names>
            <surname>Tsirogiannis</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Harizopoulos</surname>
          </string-name>
          , and
          <string-name>
            <given-names>M. A.</given-names>
            <surname>Shah</surname>
          </string-name>
          .
          <article-title>Analyzing the Energy E ciency of a Database Server</article-title>
          .
          <source>In SIGMOD Conference</source>
          , pages
          <volume>231</volume>
          {
          <fpage>242</fpage>
          ,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>