Oukid, IsmailGrust, TorstenNaumann, FelixBöhm, AlexanderLehner, WolfgangHärder, TheoRahm, ErhardHeuer, AndreasKlettke, MeikeMeyer, Holger2019-04-112019-04-112019978-3-88579-683-1https://dl.gi.de/handle/20.500.12116/21714Storage-Class Memory (SCM) is a novel class of memory technologies that combine the byte addressability and low latency of DRAM with the density and non-volatility of traditional storage media. Hence, SCM can serve as persistent main memory, i.e., as main memory and storage at the same time. In this thesis, we dissect the challenges and pursue the opportunities brought by SCM to database systems. To solve the identified challenges, we devise necessary building blocks for enabling SCM-based database systems, namely memory management, data structures, transaction concurrency control, recovery techniques, and a testing framework against new failure scenarios stemming from SCM. Thereafter, we leverage these building blocks to build SOFORT, a novel hybrid SCM-DRAM transactional storage engine that places data, accesses it, and updates it directly in SCM, thereby doing away with traditional write-ahead logging and achieving near-instant recovery.enNon-Volatile MemoryStorage-Class MemoryIndexingTransaction ProcessingMemory ManagementTestingRecoveryArchitectural Principles for Database Systems on Storage-Class Memory10.18420/btw2019-291617-5468