数据库技术发展如何搭载GPU、FPGA和SCM等新硬件技术_第1页
数据库技术发展如何搭载GPU、FPGA和SCM等新硬件技术_第2页
数据库技术发展如何搭载GPU、FPGA和SCM等新硬件技术_第3页
数据库技术发展如何搭载GPU、FPGA和SCM等新硬件技术_第4页
数据库技术发展如何搭载GPU、FPGA和SCM等新硬件技术_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

-5-数据库技术发展,如何搭载GPU、FPGA和SCM等新硬件技术?传统的引擎,包括Oracle、SQLServer等的磁盘引擎并没有针对SSD做出什么明显的转变,倒是SSD直接替换了磁盘,凭借优秀的IO力量就已经解决了许多现实问题。大内存对产品转变主要体现在SQLServer等增加了内存引擎,也消失了许多的内存数据库产品。数据库与新硬件技术关系:数据库技术的进展依靠应用需求的牵引力和新硬件产品的推动力。

最近十几年,新硬件产品对数据库系统设计的影响始终是一个比较热门的主题。期间最主要的硬件技术进步是多处理器(SMP)、多核(MultiCore)、大内存(BigMemory)和SSD。

新硬件对数据库设计的影响

多处理器、多核的流行促使了数据库系统设计要考虑充分利用多处理器和多核的并行处理力量,传统数据库的设计针对的是单一处理器或少数几个处理器的场景,并没有把重心放在这里。多核多处理器对数据库系统的高并发需求演进到了并行需求,这也是为什么1990年代并行数据库技术的讨论特别热门。

而SSD的消失大大提高了块设备的处理力量(很高的IOPS和很低的延迟),极大的缓解了慢速磁盘设备给数据库系统带来的挑战。可是SSD的物理特性(擦写、寿命等)又和磁盘存在较大的差别。

许多讨论和创新都集中在基于SSD的新存储引擎设计上,试图创造一些新的引擎,既可以充分利用SSD设备的IO力量,又避开其擦写和寿命的问题。甚至有一些讨论试图针对数据库的特点,定制SSD的访问API。

现在回顾来看,传统的引擎,包括Oracle、SQLServer等的磁盘引擎并没有针对SSD做出什么明显的转变,倒是SSD直接替换了磁盘,凭借优秀的IO力量就已经解决了许多现实问题。大内存对产品转变主要体现在SQLServer等增加了内存引擎,也消失了许多的内存数据库产品。

最近几年,针对NVM的讨论和开发消失得更多了一些,针对NVM设计一个全新的引擎更多的属于学术讨论和创业企业的范围,企业产品更多的是针对产品的某些部件做一些改进,例如Oracle、SAPHANA、SQLServer等。

除了NVM之外,还有一些硬件,例如GPU、FPGA、RDMA等也始终受到关注。其中,GPU、FPGA对数据库而言,起到的主要是对特定操作加速的作用,因此大多用在OLAP的场景。

新硬件引入的不同阶段

针对新硬件的引入,可以分为以下几个阶段:

纯粹的学术讨论阶段:主要的参加者为学术机构以及各大公司的讨论部门。通常的做法是针对新硬件完全从头设计一个新的存储引擎,并评估各种设计的可能,然后以此原型为基础,实现SQL等功能。主要目的是讨论各种潜在的可能性,并发表论文和专利等。间或也会有人依据论文创立公司。

工程化的讨论阶段:主要的参加者为各大公司的讨论部门或试验室。做法一般比学术讨论要务实一些,通常基于现有的产品做局部性的改造或者融合新老产品。在此过程中也可能会产生一些工程性的论文或专利等。此时,也可能会消失一些创业性公司。

产品化阶段:主要的参加者是公司的工程化团队,也会有讨论部门或试验室的参加。到了这一阶段就可以认为技术已经足够成熟。在商业化产品足够成熟后,小型的产品或一些开源的产品也会逐步接受相关的技术。

新硬件相关的数据库产品

多处理器、多核、大内存、SSD等的进步,对实际系统的影响要相对小一点;也就是说现有系统不做大的改动,实际上也很连续跑。对多处理器和多核的支持主要体现在并行处理上,这实际上也是1990年月的讨论主流,因此在现有的商业产品中早就得到了不同程度的优化。

大内存主要促进了内存数据库引擎的进展,不仅消失了许多新型的内存数据库如MemSQL、HANA等,传统产品中也消失了一些新的内存引擎,如SQLServer的Heckton。SSD领域的讨论虽然许多,但是对实际产品的影响好像不大。业界明显可以看到的反而是LSM类引擎的流行,例如以RocksDB为代表的KV存储引擎。

GPU、FPGA、NVM/SCM等t硬件设备本身很比较特别,因此对数据库系统的影响要相对大许多。而且由于它们也不像处理器、内存、SSD那样通用,早期许多公司都把产品设计为专用的Appliance,近些年则大多是在大型互联网公司的机房内进行规模化部署。专用性比较强的设备意味着可以做深度的定制开发,充分发掘其优势;反过来,也意味着数据库的通用性可能会受限制,不利于用户的接受。GPU、FPGA都适合做特定的数据库操作的加速,简单想到的如数据的SCAN以及谓词过滤,大量数据的排序,大表的JOIN、聚集等操作。甚至有一些CPU厂商或SSD厂商也可以利用FPGA或处理器的富余计算力量,在做压缩、CRC、加解密之外,也来加速数据库操作。

硬件技术:GPU

GPU技术日益成熟,GPU在特别数据应用加入方面也得到了进展和应用。GPU相关的数据库创业公司主要有Kinetica(2022年成立)、SQream(2022年成立)、ParStream(2022年成立)、PG-Strom(2022年NEC)、MapD(2022年成立)等。

硬件技术:FPGA

FPGA在OLAP领域最出名的产品应当是Netteza。此外还有KickFire(2022)等公司。前者被IBM收购,后者被Teradata收购,进展都不是很抱负,市场上的声音也小了许多。最近几年,互联网公司又在FPGA的加速方面做了许多探究,例如微软用FPGA来加速网卡的处理,百度用FPGA来加速查询处理等。

硬件技术:NVM/SCM

NVM作为许多种长久化内存形态的总称,最近几年由于Intel推出了相关的产品DCPMM(基于3DXPoint非易失

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论