当构建超大规模计算平台的时候,有许多不同的系统设计选项,但可选的操作系统只有一个,那就是Linux。
别人都把这个看做天经地义,可麻省理工学院和桑迪亚的一个团队不这么想,他们指出,传统操作系统的工作是管理硬件,但现在控制处理器和计算引擎差别越来越大。换句话说,操作系统更像是管理硬件资源的资源跟踪器。他们把数据库管理系统与操作系统放在了并列的位置,一个是管理硬件资源的,一个是管理数据库资源的,把数据库系统归类为操作系统当中。
表面上听起来有些不合逻辑,或者不够准确。事实上,在TabulaROSA(表格操作系统架构)上模拟数据库系统实测的效果令人印象深刻,前者是在3.2万核的超算平台上运行的,后者是在核心数比前者多2000倍,但是是在Linux平台上运行的,然而,查找表的性能表现上,前者是后者的20倍。
“当前主流的操作系统模式能追溯到50年前,这些系统都是面向办公功能而设计的,运行确定性硬件上的,然而,这些传统的操作平台在面对专用处理器的时候就只能干瞪眼了,”该团队的专家解释说,比如你为了用GPU之类的加速硬件,必须通过与操作系统交互才能用这些处理器。其实就是指出了硬件异构计算对于系统的影响。
数据库系统和集群上的操作系统在功能上有一些重叠,以上文提到的TabulaROSA为例,在这个系统中,这些功能都放在了数据库表中了。
虽然有很多LInux的变种支持异构系统,但该团队表示当前的OS有许多多余的部分需要被拿掉,换成数据库的方式。
TabulaROSA
TabulaROSA探讨了“利用数据库系统的功能和数学特性来实现操作系统功能的潜在优势”,该理论是建立在数据库系统已经完成了操作系统大部分功能的前提下的,包括数据提取和清理,转换,分析,数据跨系统迁移等。
该团队根据“严格的数学语义”定义了关键的系统功能,这些功能可直接转换为数据库的操作。由于数据库表操作的数学是基于线性系统的,这些操作具有许多数学属性,这使得大规模的并行操作时的正确性得到非常理想的保证,所以,结论是,非常适合应用于大规模并行操作系统。
纵轴指进程数,横轴是同时执行的管理器(forkers)数量,蓝色线是TabulaROSA,绿色线是基于Linux的操作系统
纵轴指进程数,横轴是同时执行管理器(forkers)的数量,蓝色线是TabulaROSA,绿色线是基于Linux的操作系统
“TabularROSA模拟的管理器(forkers)和基于Linux的32,000+核心超算平台进行比较。262,000多个管理器(forkers)可管理超过68,000,000,000个进程,模拟显示出TabulaROSA具有在大规模并行规模上执行操作系统功能的潜力。 TabulaROSA仿真表明,与Linux相比,性能提高了20倍,同时在完全可搜索的表中管理了2000多倍的进程“
实验中的效率容易检测出来,但是实际中的效率可能没这么高,但总比基于Linux的大规模超算中的表现要好的多。
原文地址:
https://www.nextplatform.com/2018/07/23/replacing-linux-with-a-database-system/
领取专属 10元无门槛券
私享最新 技术干货