计算机科学 ›› 2021, Vol. 48 ›› Issue (3): 130-135.doi: 10.11896/jsjkx.200900071

• 数据库&大数据&数据科学 • 上一篇    下一篇

NVRC:一种面向NVM的写限制日志方案

范鹏浩1, 黄国锐2, 金培权1   

  1. 1 中国科学技术大学计算机科学与技术学院 合肥230001
    2 中国人民解放军31002部队 北京100081
  • 收稿日期:2020-08-09 修回日期:2020-09-30 出版日期:2021-03-15 发布日期:2021-03-05
  • 通讯作者: 金培权(jpq@ustc.edu.cn)
  • 作者简介:fph327@mail.ustc.edu.cn
  • 基金资助:
    国家自然科学基金(61672479,62072419)

NVRC:Write-limited Logging for Non-volatile Memory

FAN Peng-hao1, HUANG Guo-rui2, JIN Pei-quan1   

  1. 1 School of Computer Science and Technology,University of Science and Technology of China,Hefei 230001,China
    2 PLA 31002,Beijing 100081,China
  • Received:2020-08-09 Revised:2020-09-30 Online:2021-03-15 Published:2021-03-05
  • About author:FAN Peng-hao,born in 1998,postgra-duate.His main research interests include database technology for NVM and so on.
    JIN Pei-quan,born in 1975,Ph.D,associate professor,is a senior member of China Computer Federation.His main research interests include database and big data.
  • Supported by:
    National Natural Science Foundation of China(61672479,62072419).

摘要: 非易失性内存(Non-Volatile Memory,NVM)具有支持按字节寻址、持久性、存储密度高、读写延迟低等特点,因此成为解决DRAM(Dynamic Random Access Memory)容量有限问题的首选技术。随着数据库系统中NVM的引入,传统的日志技术需要考虑如何适应NVM特性。首先总结了已有的面向NVM的日志技术研究,进而提出了一种尽可能限制NVM写操作的数据库日志方案NVRC(Non-Volatile Record-updating with Cacheline)。文中提出了结合异地更新和原地更新的日志管理方案。具体而言,NVRC在异地更新的“影子记录”的基础上,引入了“缓存行原地更新”策略,并通过代价分析选择合理的日志更新策略,从而减少对NVM的写操作。采用DRAM模拟NVM的方式在YCSB测试负载上进行了实验,并对比了NVRC与传统的WAL(Write Ahead Log)以及NVM感知的PCMLx(PCMLoggingx)方法。结果表明,NVRC的NVM写次数在修改均匀的情况下比WAL和PCMLx分别减少了54%和17%,同时更新性能分别提升了59%和10%。

关键词: 非易失性内存, 数据库日志, 异地更新, 影子记录, 原地更新

Abstract: Non-volatile memory (NVM) has the characteristics of byte addressing,persistence,high storage density,low read-write delay,etc.,so it becomes the preferred technology to solve the problem of limited DRAM(Dynamic Random Access Memory) capacity.With the introduction of NVM in database systems,traditional log technologies need to consider how to adapt to the characteristics of NVM.This paper first summarizes the existing research on NVM oriented log technologies,and then proposes a database log scheme called NVRC(Non-Volatile Record-updating with Cacheline) that limits NVM write operations as much as possible.This paper puts forward a log management scheme which combines out-place and in-place update.Specifically,on the basis of out-place-update-based shadow records,NVRC introduces the strategy of “in-place cache line update”,and dynamically selects the log update strategy through cost analysis,so as to reduce the writes to NVM.This paper uses DRAM to simulate NVM to experiment on the YCSB benchmark,and compares NVRC with the traditional WAL(Write Ahead Log) and the NVM-oriented logging scheme PCMLx(PCMLoggingx).The results show that the number of NVM writes of NVRC is 54% and 17% less than that of WAL and PCMLx respectively,and the update performance improves by 59% and 10% respectively.

Key words: Database log, In-place update, Non-volatile memory, Out-place update, Shadow record

中图分类号: 

  • TP311
[1]KIM N,SONG C,CHO W,et al.LL-PCM:Low-latency phase change memory architecture[C]//DAC.2019:14.
[2]XIA F,JIANG D,XIONG J,et al.A survey of phase changememory systems [J].Journal of Computer Science and Techno-logy,2015,30(1):121-144.
[3]ZHANG M,YAO X,WANG C L.NVCL:Exploiting NVRAM in cache-line granularity differential logging[C]//NVMSA.2018:37-42.
[4]WU Z L,JIN P Q,YUE L H,et al.A survey on PCM-based big data storage and management [J].Journal of Computer Research and Development,2015,52(2):343-361.
[5]LUO Y P,JIN P Q.Optimizing Join Algorithms for NVM/DRAM-Based Hybrid Memory Architecture[J].Chinese Journal of Computers,2020,43(6):1069-1085.
[6]OUKID I,KETTLER R,WILLHALM T.Storage class memory and databases:Opportunities and challenges [J].it-Information Technology,2017,59(3):109-115.
[7]MOHAN C,HADERLE D,LINDSAY B,et al.ARIES:a transaction recovery method supporting fine granularity locking and partial rollbacks using write-ahead logging [J].ACM Transactions on Database Systems,1992,17(1):94-162.
[8]GRAY J,MCJONES P,BLASGEN M,et al.The recovery ma-nager of the System R database manager [J].ACM Computing Surveys,1981,13(2):223-242.
[9]FANG R,HSIAO H I,HE B,et al.High performance database logging using storage class memory[C]//ICDE.2011:1221-1231.
[10]KIM K,LEE S W,MOON B,et al.IPL-P:In-page logging with PCRAM [J].Proceedings of the VLDB Endowment,2011,4(12):1363-1366.
[11]LEE S W,MOON B.Design of flash-based DBMS:an in-page logging approach[C]//SIGMOD.2007:55-66.
[12]PELLEY S,WENISCH T F,GOLD B T,et al.Storage management in the NVRAM era [J].Proceedings of the VLDB Endowment,2013,7(2):121-132.
[13]COBURN J,BUNKER T,SCHWARZ M,et al.From ARIES to MARS:Transaction support for next generation,solid-state drives[C]//SOSP.2013:197-212.
[14]ARULRAJ J,PAVLO A,DULLOOR S R.Let’s talk aboutstorage & recovery methods for non-volatile memory database systems[C]//SIGMOD.2015:707-722.
[15]ZHANG W Z,LU K,LUJ#xE1;N M,et al.Write-combined logging:an optimized logging for consistency in NVRAM [J].Scientific Programming,2015,2015:398369.
[16]GAO S,XU J,HE B,et al.PCM Logging:reducing transaction logging overhead with PCM[C]//CIKM.2011:2401-2404.
[17]GAO S,XU J,HÄRDER T,et al.PCM Logging:Optimizingtransaction logging and recovery performance with PCM [J].IEEE Transactions on Knowledge and Data Engineering,2015,27(12):3332-3346.
[18]OUKID I,BOOSS D,LEHNER W,et al.SOFORT:a hybridSCM-DRAM storage engine for fast data recovery[C]//DaMoN.2014:1-7.
[19]ARULRAJ J,PERRON M,PAVLO A.Write-behind logging[J].Proceedings of the VLDB Endowment,2016,10(4):337-348.
[20]COOPER B F,SILBERSTEIN A,TAM E,et al.Benchmarking cloud serving systems with YCSB[C]//SoCC.2010:143-154.
[1] 刘高聪, 罗永平, 金培权.
基于热点数据的持久性内存索引查询加速
Accelerating Persistent Memory-based Indices Based on Hotspot Data
计算机科学, 2022, 49(8): 26-32. https://doi.org/10.11896/jsjkx.210700176
[2] 孙强, 诸葛晴凤, 陈咸彰, 沙行勉, 吴林.
带磨损均衡的小粒度非易失性内存管理机制
In-page Wear-leveling Memory Management Based on Non-volatile Memory
计算机科学, 2018, 45(11A): 505-510.
[3] 景波,刘莹,陈耿.
基于Petri网的数据库日志分析方法研究
Research on Database Log Based on Petri Nets
计算机科学, 2014, 41(6): 250-253. https://doi.org/10.11896/j.issn.1002-137X.2014.06.049
Viewed
Full text


Abstract

Cited

  Shared   
  Discussed   
No Suggested Reading articles found!