【存储基础】存储设备和服务器的关系和区别

文章目录

  • 1. 存储设备和服务器的区别
  • 2. 客户端访问数据路径
    • 场景1:经过服务器处理
    • 场景2:客户端直连
  • 3. 服务器作为"中转站"的作用

刚开始接触存储的时候,以为数据都是存放在服务器上的,服务器和存储设备是一个东西,但其实二者之间是有区别的。

1. 存储设备和服务器的区别

打个比方,服务器是餐厅服务员,存储设备是后厨冰箱。

维度存储设备服务器
核心功能持久化保存数据提供计算能力、运行业务逻辑
本质数据的“仓库”,存放数据的地方数据的“加工厂”,处理数据的地方
硬件形态硬盘(HDD/SSD)、磁盘阵列(SAN/NAS)等CPU+内存+网卡+操作系统+应用软件
核心目标安全、可靠、高效地存储数据处理请求、执行计算、协调资源
是否运行程序否,纯数据存储,无计算能力运行操作系统和应用程序,如数据库、Web服务等

2. 客户端访问数据路径

一般情况下,客户端访问数据要经过服务器处理,但也有直接访问存储设备的场景。

场景1:经过服务器处理

在这里插入图片描述

存储类型访问路径经过服务器的原因
文件存储(NAS)客户端->NAS服务器->存储设备NAS服务器提供文件系统协议如NFS、SMB等,客户端无法直接操作物理存储块
块存储(SAN)客户端->服务器OS->SAN存储服务器操作系统将SAN提供的“裸盘”格式化为文件系统,客户端通过服务器访问
分布式存储客户端->元数据服务器->存储节点需要中间节点定位数据位置、协调读写操作(如HDFS的NameNode)

场景2:客户端直连

在这里插入图片描述

存储类型访问方式限制条件
对象存储客户端直连对象桶(通过HTTP API)需预先配置访问权限(如安全策略等),无需服务器中转
部分DAS场景客户端直接读写本地/直连硬盘仅限本地物理访问,如PC读取内置硬盘
特殊协议客户端通过iSCSI/FC协议直连SAN存储需要存储设备暴露LUN(逻辑单元号)且客户端需要安装专用驱动,企业级场景比较少见

3. 服务器作为"中转站"的作用

  1. 安全控制:服务器实现身份认证、权限管理等,防止未授权的访问;
  2. 数据处理:执行业务逻辑,如文件的版本控制等;
  3. 协议转换:将存储设备的底层协议(如SCSI指令)转换为客户端能理解的协议(如SMB协议);
  4. 高可用保障:服务器集群提供故障转移(如主从切换),存储设备自身无法实现。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.pswp.cn/news/907906.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

macOS 安装 Grafana + Prometheus + Node Exporter

macOS 安装指南:Grafana Prometheus Node Exporter 目录简介🚀 快速开始 安装 Homebrew1. 安装 Homebrew2. 更新 Homebrew 安装 Node Exporter使用 Homebrew 安装验证 Node Exporter 安装 Prometheus使用 Homebrew 安装验证安装 安装 Grafana使用 Home…

不可变集合类型转换异常

记录一个异常:class java.util.ImmutableCollections$ListN cannot be cast to class java.util.ArrayList (java.util.ImmutableCollections$ListN and java.util.ArrayList 文章目录 1、原因2、解决方式一3、解决方式二4、关于不可变集合的补充4.1 JDK8和9的对比4…

【DAY37】早停策略和模型权重的保存

内容来自浙大疏锦行python打卡训练营 浙大疏锦行 知识点: 过拟合的判断:测试集和训练集同步打印指标模型的保存和加载 仅保存权重保存权重和模型保存全部信息checkpoint,还包含训练状态 早停策略 作业: 对信贷数据集训练后保存权…

【Zephyr 系列 3】多线程与调度机制:让你的 MCU 同时干多件事

好的,下面是Zephyr 系列第 3 篇:聚焦 多线程与调度机制的实践应用,继续面向你这样的 Ubuntu + 真板实战开发者,代码清晰、讲解通俗、结构规范,符合 CSDN 高质量博客标准。 🧠关键词:Zephyr、线程调度、k_thread、k_sleep、RTOS、BluePill 📌适合人群:想从裸机开发进…

实现RabbitMQ多节点集群搭建

目录 引言 一、环境准备 二、利用虚拟机搭建 ​ 三、镜像集群配置 四、HAProxy实现负载均衡(主用虚拟机操作) 五、测试RabbitMQ集群搭建情况 引言 在现代分布式系统中,消息队列(Message Queue)扮演着至关重要的角色,而 RabbitMQ 作为…

异步上传石墨文件进度条前端展示记录(采用Redis中String数据结构实现-苏东坡版本)

昔者,有客临门,亟需自石墨文库中撷取卷帙若干。此等文册,非止一卷,乃累牍连篇,亟需批量转置。然吾辈虑及用户体验,当效东坡"腹有诗书气自华"之雅意,使操作如行云流水,遂定…

Axure 基础入门

目录 认识产品经理 项目团队* 基本概述 认识产品经理 A公司产品经理 B公司产品经理 C公司产品经理 D公司产品经理 产品经理工作范围 产品经理工作流程* 产品经理的职责 产品经理的分类 产品经理能力要求 产品工具 产品体验报告 原型设计介绍 原型设计概述 为…

零基础学习计算机网络编程----socket实现UDP协议

本章将会详细的介绍如何使用 socket 实现 UDP 协议的传送数据。有了前面基础知识的铺垫。对于本章的理解将会变得简单。将会从基础的 Serve 的初始化,进阶到 Client 的初始化,以及 run。最后实现一个简陋的小型的网络聊天室。 目录 1.UdpSever.h 1.1 构造…

普中STM32F103ZET6开发攻略(二)

接上文:普中STM32F103ZET6开发攻略(一)-CSDN博客 各位看官老爷们,点击关注不迷路哟。你的点赞、收藏,一键三连,是我持续更新的动力哟!!! 目录 接上文:普中…

用提示词写程序(3),VSCODE+Claude3.5+deepseek开发edge扩展插件V2

edge扩展插件;筛选书签,跳转搜索,设置背景 链接: https://pan.baidu.com/s/1nfnwQXCkePRnRh5ltFyfag?pwd86se 提取码: 86se 导入解压的扩展文件夹: 导入扩展成功: edge扩展插件;筛选书签,跳转搜索,设置背景

电脑桌面便签软件哪个好?桌面好用便签备忘录推荐

在日常办公中,一款优秀的桌面便签工具能显著提升工作效率。面对市面上琳琅满目的选择,不少用户都难以抉择。如果你正在寻找一款兼具轻量化与多功能性的便签软件,那么集实用性与便捷性于一身的"好用便签",或许就是你的理…

性能优化 - 工具篇:基准测试 JMH

文章目录 Pre引言1. JMH 简介2. JMH 执行流程详解3. 关键注解详解3.1 Warmup3.2 Measurement3.3 BenchmarkMode3.4 OutputTimeUnit3.5 Fork3.6 Threads3.7 Group 与 GroupThreads3.8 State3.9 Setup 与 TearDown3.10 Param3.11 CompilerControl 4. 示例代码与分析4.1 关键点解读…

2025年十大AI幻灯片工具深度评测与推荐

我来告诉你一个好消息。 我们已经亲自测试和对比了市面上最优秀的AI幻灯片工具,让你无需再为选择而烦恼。 得益于AI技术的飞速发展,如今你可以快速制作出美观、专业的幻灯片。 这些智能平台的功能远不止于配色美化——它们能帮你头脑风暴、梳理思路、…

雪花算法:分布式ID生成的优雅解决方案

一、雪花算法的核心机制与设计思想 雪花算法(Snowflake)是由Twitter开源的分布式ID生成算法,它通过巧妙的位运算设计,能够在分布式系统中快速生成全局唯一且趋势递增的ID。 1. 基本结构 雪花算法生成的是一个64位(lo…

第1章:走进Golang

第1章:走进Golang 一、Golang简介 Go语言(又称Golang)是由Google的Robert Griesemer、Rob Pike及Ken Thompson开发的一种开源编程语言。它诞生于2007年,2009年11月正式开源。Go语言的设计初衷是为了在不损失应用程序性能的情况下…

Higress项目解析(二):Proxy-Wasm Go SDK

3、Proxy-Wasm Go SDK Proxy-Wasm Go SDK 依赖于 tinygo,同时 Proxy - Wasm Go SDK 是基于 Proxy-Wasm ABI 规范使用 Go 编程语言扩展网络代理(例如 Envoy)的 SDK,而 Proxy-Wasm ABI 定义了网络代理和在网络代理内部运行的 Wasm …

NVMe IP现状扫盲

SSD优势 与机械硬盘(Hard Disk Driver, HDD)相比,基于Flash的SSD具有更快的数据随机访问速度、更快的传输速率和更低的功耗优势,已经被广泛应用于各种计算领域和存储系统。SSD最初遵循为HDD设计的现有主机接口协议,例…

`docker commit` 和 `docker save`区别

理解 docker commit 和 docker save 之间的区别对于正确管理 Docker 镜像非常重要。让我们详细解释一下这两个命令的作用及其区别。 1. docker commit 作用: docker commit roop-builder roop:v1 命令的作用是基于一个正在运行的容器 roop-builder 创建一个新的镜…

Linux内核体系结构简析

1.Linux内核 1.1 Linux内核的任务 从技术层面讲,内核是硬件和软件之间的一个中间层,作用是将应用层序的请求传递给硬件,并充当底层驱动程序,对系统中的各种设备和组件进行寻址。从应用程序的角度讲,应用程序与硬件没有…

python爬虫:Ruia的详细使用(一个基于asyncio和aiohttp的异步爬虫框架)

更多内容请见: 爬虫和逆向教程-专栏介绍和目录 文章目录 一、Ruia概述1.1 Ruia介绍1.2 Ruia特点1.3 安装Ruia1.4 使用案例二、基本使用2.1 Request 请求2.2 Response - 响应2.3 Item - 数据提取2.4 Field 提取数据2.5 Spider - 爬虫类2.6 Middleware - 中间件三、高级功能3.1 …