英特尔® 傲腾™ 持久内存是Intel在2019年发布的一款革命性的产品,英特尔® 傲腾™ 持久内存是一种全新的内存类型,其架构设计旨在从数据中心中汲取更多价值,重构数据中心内存/存储层次结构。不同于传统的DRAM,英特尔® 傲腾™ 持久内存集大容量、经济性和持久性于一身,能够支持数据中心多个应用场景。浪潮基于英特尔® 傲腾™ 持久内存做了大量的应用场景解决方案,覆盖大数据分析、数据库、云与虚拟化、分布式存储等应用场景。为了帮助用户通过更加灵活的架构来实现创新型的应用,助力企业实现性能突破,浪潮发布了基于英特尔® 傲腾™ 持久内存技术的Altibase应用方案。
Altibase数据库是一款Hybrid DBMS,完美结合了DRDBMS和MMDBMS的特性,为满足高速处理大量数据的用户提供了有效的解决方案。Hybrid DBMS是一种平衡的数据库管理系统,可在主内存中提供高性能的数据处理,并具有物理磁盘的强大存储功能,两种数据库类型的集成组合提供了无与伦比的灵活性和强大的功能。Altibase数据库提供了三种数据库表空间类型,分别是Disk Tablespace、Memory Tablespace、Volatile Tablespace。Disk Tablespace存在于Disk上,通常由用户磁盘表和磁盘索引组成;Memory Tablespace位于内存中,关键性对象通常与字典表、系统对象和用户创建的内存表一起位于内存表空间中;Volatile Tablespace是将对象保存在内存中,不记录日志,避免磁盘输入输出,以提升性能,但关闭数据库后,Volatile Tablespace的所有数据对象会丢失。
在Altibase数据库中,使用Disk Tablespace时数据库的性能会低于使用Memory Tablespace的性能,为保证性能,Altibase使用Memory Tablespace,即保证性能又能保证数据的一致性和完整性。但是在使用Memory Tablespace,当数据量较大时,需要更大的内存空间。而DRAM内存成本价格较为昂贵,相对于DRAM,同容量情况Intel® Optane DC Persistent Memory价格较为便宜,使用Intel® Optane DC Persistent Memory能够降低成本,同时又能达到提升Altibase数据库系统内存容量,即节约成本,又能提升Altibase的性能。
本篇文章将介绍基于英特尔傲腾数据中心级持久内存技术(Intel® Optane DC Persistent Memory)Altibase数据库的优化实践。
Intel® Optane DC Persistent Memory是一种全新的内存类型,其架构设计旨在从数据中心中汲取更多价值,重构数据中心内存/存储层次结构。不同于传统的DRAM,英特尔傲腾数据中心级持久内存集大容量、经济性和持久性于一身,能够支持数据中心多个应用场景,包括数据分析、数据库和内存数据库、人工智能、高容量虚拟机、容器,以及内容分发网络等,使之在性能、可用性上有大幅度提升。Intel® Optane DC Persistent Memory技术从根本上改变了数据中心的弹性,将内存数据库重启时间从以前的几天、几小时缩短到现在的几分钟甚至几秒钟,并提供经济实惠的内存空间,将系统内存容量扩展到前所未有的水平。
图1
在现有存储架构中,内存和存储介质之间存在容量、性能和时延的差距,英特尔® 傲腾™ 持久内存位于内存和存储介质之间,能填补两者间的性能和时延差距,对存储层次模型进行重新划分和定义。英特尔® 傲腾™ 持久内存读写带宽比NVME设备高数倍,并大幅降低延时问题。另外,由于写入方式不同,英特尔® 傲腾™ 持久内存也比Flash NAND更耐用,并能支持比传统DRAM更大容量的系统内存配置。与传统DRAM不同,英特尔® 傲腾™ 持久内存将提供前所未有的高容量,经济性和持久性组合。通过扩展经济实惠的系统内存容量(每个CPU Socket大于3 TB),最终客户可以使用支持这种新型内存的系统,通过在处理器附近移动和维护更大量的数据来更好地优化其工作负载,并最大限度地降低延迟从系统存储中获取数据。英特尔® 傲腾™ 持久内存将以每个模块高达512GB的容量提供。同时,英特尔® 傲腾™ 持久内存具有的非易失性这一大优势能够保证数据在掉电后或系统维护中不会丢失。
图2
Intel® Optane DC Persistent Memory通过两种特殊的运行模式——App Direct模式和内存模式,展现其独特的能力。具体来看,采用App Direct模式,经过专门调试的应用程序可以从产品固有的持久性中充分获取价值,同时获得更大的容量;在内存模式下,在受支持的操作系统或虚拟环境中运行的应用程序可将该产品用于易失性存储,在无需重写软件的情况下,有效利用高达512GB的内存模块带来的附加系统容量,在大型内存池中获得新的洞察。
在数据时代,新一代数据中心对于加快数据的流动,提高数据的存储和处理能力提出了更高的要求。在这种情况下,英特尔至强可扩展CascadeLake处理器与Intel Optane DC Persistent Memory成了新的强强组合。这一组合将改变云、数据库、高性能计算、内存分析和内容分发网络等关键数据工作负载,成为新的动力之源。
方案验证
Altibase数据库在使用Memory Tablespace类型表空间时,用户数据存放于Memory Tablespace时能够有效提升Altibase数据库性能,而使用Memory Tablespace需要更多的内存空间,使用Intel® Optane DC Persistent Memory 能够使单颗CPU支持的内存容量大于3TB, 在此场景下,验证Altibase结合DCPMM使用Memory Tablespace和Disk Tablespace时数据库性能差异。
硬件配置
8* 960GB Intel® SSD DC S4610 (RAID5)存放Altibase数据库数据。配置1表空间类型为Memory Tablespace,配置2表空间类型为Disk Tablespace表空间类型。
性能指标评测方法
Altibase数据库性能评测使用通用测试工具BenchmarkSQL进行测试,评估TPC-C测试模型下性能值。
DRAM 192GB +DCPMM 1TB配置Alitibase使用Memory Tablespace与DRAM 768G配置使用Disk Tablespace相比性能提升约5倍。
DRAM+DCPMM和全DRAM配置在相似的成本情况下,DRAM+DCPMM配置内存容量提升约34%,在Altibase数据库结合DCPMM有足够内存容量使用Memory Tablespace时,Altibase数据库约有5倍性能的提升。