  The recently released persistent memory (PM) offers high performance,
persistence, and is cheaper than DRAM. This opens up new possibilities for
indexes that operate and persist data directly on the memory bus. Recent
learned indexes exploit data distribution and have shown great potential for
some workloads. However, none support persistence or instant recovery, and
existing PM-based indexes typically evolve B+-trees without considering learned
indexes. This paper proposes APEX, a new PM-optimized learned index that offers
high performance, persistence, concurrency, and instant recovery. APEX is based
on ALEX, a state-of-the-art updatable learned index, to combine and adapt the
best of past PM optimizations and learned indexes, allowing it to reduce PM
accesses while still exploiting machine learning. Our evaluation on Intel DCPMM
shows that APEX can perform up to ~15x better than existing PM indexes and can
recover from failures in ~42ms.
