浅谈SPDK(一)什么是SPDK

您所在的位置:网站首页 机械硬盘是做什么的 浅谈SPDK(一)什么是SPDK

浅谈SPDK(一)什么是SPDK

2024-07-16 13:41:55| 来源: 网络整理| 查看: 265

也学习了一段时间的spdk,对spdk的大体有些了解,这里记录粗浅理解,以后继续加强完善和学习。

为什么要引入SPDK?

1、现在的硬盘SSD从性能、功耗以及密度上都相比传统机械硬盘HDD存在巨大的优势。 2、以前的linuxIO栈针对HDD做了诸多优化:page cache等;内核采用中断方式进行DMA(外部设备不通过CPU而直接与系统内存交换数据的接口技术)。而现在ssd的出现,这样的优化会使ssd的硬盘存在空缺,不能充分利用。 3、以前的方式会存在大量的内核上下文切换和中断,造成大量的延迟和开销。现在spdk采用将设备驱动代码放在用户态,避免内核上下文切换。spdk采用轮询模式代替传统的IO模型。

​ 在传统的I/O模型中,应用程序提交读写请求后进入睡眠状态,一旦I/O完成,中断就会将其唤醒。​ 轮询的工作方式则不同,应用程序提交读写请求后继续执行其他工作,以一定的时间间隔回头检查I/O是否已经完成。 传统的方式:中断开销只占整个I/O时间【io读取慢】的很小的百分比,因此给系统带来了巨大的效率提升。 现在的方式:持续引入更低时延的持久化设备,中断开销成为了整个I/O时间中不可忽视的部分。所以我们必须区优化,使其达到平衡。

[1]Rocksdb加SPDK改善吞吐能力建设

什么是SPDK

首先要明确spdk是一个框架,而不是一个分布式系统,spdk的基石(官网用了bedrock 这个词)是用户态(user space)、轮询(polled-mode)、异步(asynchronous)、无锁(lockless)的NVMe驱动,其提供了零拷贝、高并发直接从用户态访问ssd的特性。其最初的目的是为了优化块存储落盘。但随着spdk的持续演进,大家发现spdk可以优化存储软件栈的各个方面。

很多分布式存储系统都在思考如何吸纳spdk框架,或是采用spdk代表的高性能存储技术,来优化整条IO链路。 [2]什么是SPDK,以及什么场景需要它 [3]What is SPDK

最后

我学习spdk的目标是,利用其去调用rocksdb,运行在用户态,这些spdk设计之初就有了,我需要做的是灵活使用它,它现在肯定没有优化完全,所以存在哪些地方需要改进也需要完善。 spdk只是开了个头,当然了解这些肯定不够,还需要一些基础知识,我已知需要了解的清单如下:

学习linux的IO栈,了解为什么引入SPDK和nvme(以前是机械硬盘,现在是高性能的存储方式了)了解CockroachDB的整体架构,目标方便后面讲技术嵌入到当前框架; 用户手册分布式数据库系统(DDBS) 概述 rocksdbnvme

SPDK的指导原则是通过消除每一处额外的软件开销来提供最少的时延和最高的效率。



【本文地址】

公司简介

联系我们

今日新闻


点击排行

实验室常用的仪器、试剂和
说到实验室常用到的东西,主要就分为仪器、试剂和耗
不用再找了,全球10大实验
01、赛默飞世尔科技(热电)Thermo Fisher Scientif
三代水柜的量产巅峰T-72坦
作者:寞寒最近,西边闹腾挺大,本来小寞以为忙完这
通风柜跟实验室通风系统有
说到通风柜跟实验室通风,不少人都纠结二者到底是不
集消毒杀菌、烘干收纳为一
厨房是家里细菌较多的地方,潮湿的环境、没有完全密
实验室设备之全钢实验台如
全钢实验台是实验室家具中较为重要的家具之一,很多

推荐新闻


图片新闻

实验室药品柜的特性有哪些
实验室药品柜是实验室家具的重要组成部分之一,主要
小学科学实验中有哪些教学
计算机 计算器 一般 打孔器 打气筒 仪器车 显微镜
实验室各种仪器原理动图讲
1.紫外分光光谱UV分析原理:吸收紫外光能量,引起分
高中化学常见仪器及实验装
1、可加热仪器:2、计量仪器:(1)仪器A的名称:量
微生物操作主要设备和器具
今天盘点一下微生物操作主要设备和器具,别嫌我啰嗦
浅谈通风柜使用基本常识
 众所周知,通风柜功能中最主要的就是排气功能。在

专题文章

    CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭