Postgres基于持久內存的優化探索-內核 + 分布式數據庫(18頁).pdf

編號:87359 PDF 18頁 2.56MB 下載積分:VIP專享
下載報告請您先登錄!

Postgres基于持久內存的優化探索-內核 + 分布式數據庫(18頁).pdf

1、Postgres基于持久內存的優化探索中興通訊中心研究院 陳小強PM介紹01目錄Contents適配方案和測試結果02進一步探索和挑戰03不同不同NVM存儲器件和存儲器件和DRAM關鍵性能關鍵性能對比對比非易失性存儲PM的出現必將改變現有存儲結構,優化數據訪問關鍵路徑。PM不同不同NVM存儲器件和存儲器件和DRAM關鍵性能關鍵性能對比對比NVM是一種快速、可字節尋址、持久、大容量、讀寫不對稱、壽命有限的新型存儲硬件lMemory Mode:在:在Bios里設置,即可將里設置,即可將PM作作 為大容量易失性內存使用,無縫地為傳統應用為大容量易失性內存使用,無縫地為傳統應用 程序提供了實惠的大容量

2、內存程序提供了實惠的大容量內存存儲網絡工業協會存儲網絡工業協會(SNIA)發布的編程模型發布的編程模型read/writeread/writememory-mapped filememory-mapped filePMDK(libpmem)PMDK(libpmem)OpenOpenfd=open(path,flags,mode);fd=open(path,flags,mode);paddr=pmem_map_file(path,size,flag,mode,&mapped_len,NULL);AllocateAllocate -ret=posix_fallocate(fd,offset,len

3、);MapMap -paddr=mmap(NULL,len,prot,flags,fd,-1);WriteWriteret=write(fd,buff,count);memcpy(paddr,buff,count);pmem_memcpy_nodrain(paddr,buff,count);FlushFlush -for(i=0;iPmemFileOpen-PmemFileOpenPerm-pmem_map_file2、寫WAL Log:PmemFileWrite-pmem_memcpy_nodrain3、刷新WAL log:PmemFileSync-pmem_drain4、讀WAL log:

4、PmemFileRead-memcpy5、關閉WAL文件:PmemFileClose-pmem_unmap6、文件描述符結構中增加與PM相關的長度和map地址兩個屬性7、新增加配置項的處理:增加PM路徑配置項、wal_sync_method增加pmem_drain方法1、源文件修改:xlog.c、fd.c、timeline.c、guc.c等C文件及對應.h文件。涉及文件生成、初始化、讀寫以及讀配置文件中新增內容2、autotools工具鏈相關:configure.in、pg_config.h.in、postgresql.conf.sample2、Makefile等文件。涉及增加libpem庫的

5、鏈接、新增配置項處理、增加是否使用PM的宏定義修改內容修改內容涉及文件涉及文件測試組網和場景測試組網和場景測試組網測試組網數據庫服務器網絡客戶端wal_sync_methodfdatasyncpmem_drainPG 10.6原生基于pmdk掛載方式Ext4Ext4(DAX enabled)PGDATASSD掛載到AEPCPUIntel(R)Xeon(R)Gold 6240L CPU 2.60GHz 2MEMORY16GB 266612AEPINTEL OPTANE DC 512 GB PERSISTENT MEMORY MODULE 512G 12ATA HARD DRIVE512GB SS

6、D M.2 SATA 3.0 6Gb/s Intel Liberty Harbor SSDSCKKI512G801 DC S31101測試場景測試場景測試設備測試設備SELECT場景下采用PM對性能提升不明顯。原因在于基于pmdk的修改只針對WAL日志的讀寫,而SELECT不產生WAL日志隨機單條INSERT相對SSD提升5倍左右隨機等值UPDATE,相對SSD提升4-5倍隨機單條等值DELETE相對于SSD性能提升6-8倍PM介紹01目錄Contents適配方案和測試結果02進一步探索和挑戰03memorydata/index/WAL bufferTrascation ProcessingB

7、gWriterCheckPointWalWriterxlog recordtable index table index memory map filePMDKStorage(PM)data/index fileWAL file進一步探索方案,其特點:1、數據、索引、CLog、WAL buffer 直接放在PM中,繞過共享內存2、數據、索引、CLog、WAL buffer按字節尋址PM,沒有磁盤或SSD的I/O3、性能進一步提升:不再寫共享內存,直接寫PM,PM寫性能比內存略低,并且是持久化的,因此性能幾乎和異步提交性能相同,同時一致性保障和同步提交類似 4、減少寫放大,WAL Log塊刷新時尾部塊在提交時只寫一次熱點數據緩存共享內存(鎖等)現有方案的局限:1、僅WAL buffer適配PM,數據、索引、CLOG、臨時文件等未適配PM2、WAL buffer按頁讀寫PM,沒有利用PM按字節尋址新特性,導致WAL log 塊每次提交時都要寫

友情提示

1、下載報告失敗解決辦法
2、PDF文件下載后,可能會被瀏覽器默認打開,此種情況可以點擊瀏覽器菜單,保存網頁到桌面,就可以正常下載了。
3、本站不支持迅雷下載,請使用電腦自帶的IE瀏覽器,或者360瀏覽器、谷歌瀏覽器下載即可。
4、本站報告下載后的文檔和圖紙-無水印,預覽文檔經過壓縮,下載后原文更清晰。

本文(Postgres基于持久內存的優化探索-內核 + 分布式數據庫(18頁).pdf)為本站 (云閑) 主動上傳,三個皮匠報告文庫僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對上載內容本身不做任何修改或編輯。 若此文所含內容侵犯了您的版權或隱私,請立即通知三個皮匠報告文庫(點擊聯系客服),我們立即給予刪除!

溫馨提示:如果因為網速或其他原因下載失敗請重新下載,重復下載不扣分。
客服
商務合作
小程序
服務號
折疊
午夜网日韩中文字幕,日韩Av中文字幕久久,亚洲中文字幕在线一区二区,最新中文字幕在线视频网站