  An exponential growth in data volume, combined with increasing demand for
real-time analysis (i.e., using the most recent data), has resulted in the
emergence of database systems that concurrently support transactions and data
analytics. These hybrid transactional and analytical processing (HTAP) database
systems can support real-time data analysis without the high costs of
synchronizing across separate single-purpose databases. Unfortunately, for many
applications that perform a high rate of data updates, state-of-the-art HTAP
systems incur significant drops in transactional (up to 74.6%) and/or
analytical (up to 49.8%) throughput compared to performing only transactions or
only analytics in isolation, due to (1) data movement between the CPU and
memory, (2) data update propagation, and (3) consistency costs.
  We propose Polynesia, a hardware-software co-designed system for in-memory
HTAP databases. Polynesia (1) divides the HTAP system into transactional and
analytical processing islands, (2) implements custom algorithms and hardware to
reduce the costs of update propagation and consistency, and (3) exploits
processing-in-memory for the analytical islands to alleviate data movement. Our
evaluation shows that Polynesia outperforms three state-of-the-art HTAP
systems, with average transactional/analytical throughput improvements of
1.70X/3.74X, and reduces energy consumption by 48% over the prior lowest-energy
system.
