浅谈云计算05 | 云存储等级及其接口工作原理

一、云存储设备

在这里插入图片描述

在当今数字化飞速发展的时代,数据已然成为个人、企业乃至整个社会的核心资产。从日常生活中的珍贵照片、视频,到企业运营里的关键业务文档、客户资料,数据量呈爆炸式增长。面对海量的数据,如何安全、高效且便捷地存储,成为了大家共同面临的关键挑战。云存储设备,恰如应运而生的璀璨新星,正逐步取代传统存储模式,引领数据存储迈向全新未来。

云存储设备,简单来说,是依托云计算技术,通过互联网将数据存储于远程服务器集群中的创新存储方案。它打破了传统存储对本地物理设备的依赖,让数据存储不再受限于硬盘容量、地理位置等因素。无论是身处繁华都市的办公室,还是在偏远地区出行,只要接入互联网,用户就能随时随地访问、管理自己的数据,真正实现数据随身,存储无界。

二、云存储等级

2.1 文件存储:为企业办公提供高效协作支持

文件存储,就如同我们日常使用的电脑文件夹,它以文件和文件夹的形式来组织、存储数据。这种存储方式对结构化数据极为友好,例如办公文档、电子表格等。在企业办公场景中,员工们可以通过云存储平台轻松上传、下载各类办公文件,并且能够实时共享、协同编辑,大大提高了团队协作效率。像腾讯文档、石墨文档等在线协作平台,便是依托文件存储技术,让分布在各地的团队成员宛如在同一办公室般紧密协作,共同推动项目进展。

2.2 块存储:数据库等高性能需求场景的首选

块存储则是将数据切割成固定大小的数据块,每个数据块都有独立的地址标识,就好比把一个大型仓库划分成众多小隔间,每个隔间都有精准编号。它专为那些对输入输出(I/O)性能要求苛刻的应用场景量身打造,如数据库管理系统、企业资源规划(ERP)软件等。以金融行业为例,银行的核心交易系统需要在瞬间处理海量的交易数据读写请求,块存储凭借其超低延迟、超高吞吐量的特性,确保交易数据能够快速、准确地被存储和读取,保障金融业务的稳定运行。

2.3 数据集存储:数据安身立命之所

一般而言,数据集中的数据在关系数据库里以表格形式巧妙编排。这些表格中的数据,是由一条条记录有序排列而成。每一条记录都像是一个独特的 “故事片段”,完整地描述了某个具体对象或事件。以进一步剖析每条记录,我们会发现它是由包含不同信息的各个字段所构成。用户信息表为例,一条记录可能就代表着一位特定用户的所有相关信息,从姓名、性别到联系方式,乃至注册时间等,无一遗漏。合理的数据集存储方式,能够确保数据的高效访问与处理。

2.4 对象存储:灵活应对海量非结构化数据

对象存储,是一种相对新颖且极具创新性的存储方式。这里的 “对象”,可简单理解为包含了数据本身、元数据(描述数据的相关信息,如数据类型、创建时间、所有者等)以及唯一标识符的数据集合。打个比方,就像图书馆里的每一本书,书的内容是数据,书的作者、出版年份、分类标签等信息就是元数据,而每本书独一无二的馆藏编号便是唯一标识符。对象存储特别适合存储图片、视频、音频等海量的非结构化数据。如今,社交媒体平台上每天都会产生数以亿计的图片、视频,云存储服务商利用对象存储技术,能够轻松应对如此庞大且零散的数据,为用户提供可靠的存储服务,确保数据随时可访问,永不丢失。

三、云存储接口的基本工作原理

3.1 文件存储接口:NFS、CIFS

在云存储的文件存储领域,NFS(Network File System,网络文件系统)和 CIFS(Common Internet File System,通用互联网文件系统)是两大核心协议。它们都遵循 POSIX(Portable Operating System Interface,可移植操作系统接口)标准,这意味着无论在何种操作系统下,只要支持该标准,就能无缝对接使用。

NFS 起源于 UNIX 系统,它基于远程过程调用(RPC)机制实现。当客户端向服务器发起文件访问请求时,如读取一个文档,客户端的 NFS 模块会将请求封装成 RPC 消息,发送到服务器端。服务器端的 NFS 守护进程接收并解析请求,从本地文件系统获取相应数据,再通过 RPC 回复给客户端。在企业内部的 Linux 服务器集群环境中,员工们使用的各种 Linux 工作站可通过 NFS 挂载共享的文件存储目录,实现代码、文档等资源的共享,协同开发项目,仿佛所有文件就在本地磁盘一样便捷。

CIFS 则主要应用于 Windows 环境,它脱胎于微软的 SMB(Server Message Block,服务器消息块)协议。CIFS 采用请求 - 响应模式,在 Windows 网络中,当用户在 “网络邻居” 里访问共享文件夹时,背后便是 CIFS 在发挥作用。例如,一家小型公司内部搭建了基于 Windows Server 的文件服务器,员工们通过各自的 Windows 电脑,使用 CIFS 协议轻松访问共享的办公文件,进行日常的文档编辑、资料查阅等工作,极大提高了办公效率。

3.2 块存储接口:SCSI

SCSI(Small Computer System Interface,小型计算机系统接口)协议在块存储里扮演着关键角色。它定义了一套完整的命令集,用于主机和存储设备之间的数据传输、设备管理等操作。

SCSI协议采用典型的总线结构,在这一总线上,能够连接包括主机适配器(一般指 SCSI 控制器)以及众多不同类型的 SCSI 外围设备。每个设备都被赋予一个独一无二的 SCSI ID(标识符),这个标识符就如同设备在 SCSI 总线上的 “身份证”,用于在复杂的系统环境中精准识别和区分各个不同的设备。例如,在一个由多块硬盘组成的 SCSI 硬盘阵列里,每一块硬盘都拥有属于自己独立且唯一的 SCSI ID,确保数据传输的准确性与高效性。

当主机有数据交互需求时,SCSI 控制器发起含操作码、逻辑单元号及相关参数的 SCSI 命令,如主机读取硬盘数据时生成特定命令。接着,SCSI 控制器通过总线发含目标设备 SCSI ID 的 “选择” 信号,目标设备识别 ID 后响应并与主机建立连接。之后,目标设备解析命令并执行,如硬盘接读取命令后定位并读取数据。数据传输方向分设备到主机与主机到设备,有同步和异步两种模式,不同 SCSI 标准同步速率有所区别。命令执行完,目标设备向主机返回状态信息及其他消息,主机据此决定后续操作,保障系统稳定高效运行。

3.3 对象存储接口:RESTful API、S3 API

对象存储的接口主要围绕对象展开。对象,作为对象存储的核心单元,整合了数据、元数据以及唯一标识符。其存储接口主要包括 RESTful API 和 S3 API。

REST(Representational State Transfer)是一种软件架构风格,RESTful API 基于 HTTP 协议,以资源为核心,将对象存储中的每个对象、容器等视为资源,为其赋予唯一 URL 用于定位。客户端借助标准 HTTP 方法操作资源,像 GET 获取对象数据、PUT 上传或更新对象、DELETE 删除对象等。请求时,客户端需提供如访问密钥和秘密密钥等身份验证信息,以在请求头或查询参数中发送,服务端验证其有效性,判断客户端是否有权限执行操作。服务端接收请求后,依据请求操作处理资源,并返回含状态码(指示成功或各类错误情况)、响应头(包含元数据)及响应体(对象数据或错误信息)的 HTTP 响应,客户端据此进行相应处理。

S3(Simple Storage Service)API 是亚马逊公司开发的对象存储接口,已成为事实上的行业标准,许多对象存储系统都兼容 S3 API。它提供了一组简单的操作,用于在云端存储和检索数据对象。S3 API 以桶作为对象存储的容器,客户端通过CreateBucket操作创建桶,并可指定名称与位置等属性,借助ListBuckets操作获取桶列表,以桶名访问特定桶。针对对象操作,客户端使用PutObject操作,指定桶名、对象键及对象数据上传对象;运用GetObject操作,依据桶名和对象键下载对象;通过DeleteObject操作删除指定桶中的对象。在身份验证方面,S3 API 采用签名机制,客户端利用访问密钥和秘密密钥,按特定规则对请求关键信息(如 HTTP 方法、请求头、请求时间等)进行组合与哈希计算生成签名,服务端接收请求后,使用相同规则与客户端访问密钥验证签名有效性,只有验证通过的请求才会被处理。此外,对象和桶均可关联元数据,客户端上传对象时可通过PutObject请求头部信息添加,服务端响应时会返回相关元数据,方便客户端了解资源详情。

3.4 数据库存储接口

3.4.1 关系型数据库

关系型数据库以其结构化的数据存储模式著称,数据按照表、行、列的形式组织,就像规整的电子表格。常见的代表有 MySQL、Oracle 等。

它们通常使用 SQL(Structured Query Language,结构化查询语言)作为数据接口协议。企业的客户关系管理(CRM)系统,大量的客户信息、订单记录、售后反馈等数据存储在关系型数据库中。当业务人员需要查询某个客户的所有订单时,通过在前端界面输入 SQL 查询语句,数据库系统解析该语句,依据预设的表结构关系,从众多关联表中精准提取所需数据,快速返回结果,助力企业精准把握客户需求,优化业务决策。

3.4.2 非关系型数据库

非关系型数据库则针对海量、半结构化或非结构化数据而生,数据存储形式更为灵活多样,常见类型有键值对、文档、列族、图形等。代表产品如 MongoDB(文档型)、Redis(键值对型)。

以 MongoDB 为例,它使用类似 JSON 的 BSON(Binary JSON)格式存储文档数据,其接口提供丰富的操作方法,如插入文档、查询文档、更新文档等。在社交媒体平台,用户的动态、评论、点赞等复杂多样且频繁更新的数据,通过 MongoDB 的接口高效存储与管理。当用户刷新社交页面时,后台迅速调用接口从数据库中抓取最新动态数据,实时呈现给用户,营造活跃的社交互动氛围。

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

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

相关文章

反转链表题目

文章目录 反转链表题目链接:[在线OJ](https://leetcode.cn/problems/reverse-linked-list/description/)题目详解思路1:思路1算法复杂度 思路2代码实现思路2算法复杂度 结语 欢迎大家来到我的博客,给生活来点impetus 让我们进入《题海探骊》…

【1】Word:邀请函

目录 题目 文字解析 流程 题目 文字解析 考生文件夹☞Word.docx☞一定要用ms打开,wps打开作答无效☞作答完毕,F12或者手动另存为(考生文件夹:路径文件名) 注意:一定要检查,很有可能你前面步…

三 BH1750 光感驱动调试1

一 扫描设备 查看手册 BH1750 光感模块 寄存器地址为 0x23 官方手册 : http://rohmfs.rohm.com/en/products/databook/datasheet/ic/sensor/light/bh1750fvi-e.pdf su 然后用 i2cdetect 扫描设备: 拨,插 对比, 探测设备挂载在 /dev/i2c-5 上, 从设备地址为 0x23 二 …

学习threejs,使用TrackballControls相机控制器

👨‍⚕️ 主页: gis分享者 👨‍⚕️ 感谢各位大佬 点赞👍 收藏⭐ 留言📝 加关注✅! 👨‍⚕️ 收录于专栏:threejs gis工程师 文章目录 一、🍀前言1.1 ☘️THREE.TrackballControls 相…

【Linux系统】—— vim 的使用

【Linux系统】—— vim 的使用 1 vim 的基本概念2 vim 的多模式3 命令模式下的命令集3.1 进入/退出其他模式3.2 光标移动命令集3.3 复制/剪切/粘贴/删除命令集3.4 撤销命令集3.5 查找命令集3.6 替换命令集3.7 进入与退出替换模式 4 批量化编译5 底行模式6 vim 小技巧7 vim简单配…

nginx负载均衡-基于端口的负载均衡(一)

注意: (1) 做负载均衡技术至少需要三台服务器:一台独立的负载均衡器,两台web服务器做集群 一、nginx分别代理后端web1 和 web2的三台虚拟主机 1、web1(nginx-10.0.0.7)配置基于端口的虚拟主机 [rootOldboy extra]# …

HTML5实现好看的博客网站、通用大作业网页模板源码

HTML5实现好看的博客网站、通用大作业网页模板源码 前言一、设计来源1.1 主界面1.2 列表界面1.3 文章界面 二、效果和源码2.1 动态效果2.2 源代码 源码下载结束语 HTML5实现好看的博客网站、通用大作业网页模板源码,博客网站源码,HTML模板源码&#xff0…

微调神经机器翻译模型全流程

MBART: Multilingual Denoising Pre-training for Neural Machine Translation 模型下载 mBART 是一个基于序列到序列的去噪自编码器,使用 BART 目标在多种语言的大规模单语语料库上进行预训练。mBART 是首批通过去噪完整文本在多种语言上预训练序列到序列模型的方…

linux-28 文本管理(一)文本查看,cat,tac,more,less,head,tail

之前提到过linux的几个重要哲学思想,使用纯文本文件保存软件的配置信息是其中之一,所以大多数情况下,我们对整个系统的操作,都是通过编辑它的配置文件来完成,那也就意味着,处理文本文件是我们作为系统管理员…

基于Piquasso的光量子计算机的模拟与编程

一、引言 在科技飞速发展的当下,量子计算作为前沿领域,正以前所未有的态势蓬勃崛起。它凭借独特的量子力学原理,为解决诸多经典计算难以攻克的复杂问题提供了全新路径。从优化物流配送网络,以实现资源高效调配,到药物分子结构的精准模拟,加速新药研发进程;从金融风险的…

该虚拟机似乎正在使用中。 如果该虚拟机未在使用,请按“获取所有权(T)”按钮获取它的所有权。否则,请按“取消(C)”按钮以防损坏。

问题已解决 问题回顾: 解决方法一(大部分都是这个原因): 首先先检查是否打开了多个VMware应用程序,如果打开了关掉所有vm重开即可,如果不确定后台是否多开可以去任务管理器查看关闭 解决方法二(…

计算机网络 —— 网络编程(TCP)

计算机网络 —— 网络编程(TCP) TCP和UDP的区别TCP (Transmission Control Protocol)UDP (User Datagram Protocol) 前期准备listen (服务端)函数原型返回值使用示例注意事项 accpect (服务端)函数原型返回…

Elasticsearch学习(2) :DSL和RestClient实现搜索文档

之前的学习中——Elasticsearch学习(1) ,我们已经导入了大量数据到elasticsearch中,实现了elasticsearch的数据存储功能。但elasticsearch最擅长的还是搜索和数据分析。 所以这篇我们研究下elasticsearch的数据搜索功能。我们分别使用DSL(Domain Specif…

备战蓝桥杯:树的存储与遍历(dfs和bfs)

树的概念 树的逻辑结构是树形结构,和我们之前的线性结构又不太一样了,是一种一对多的关系 树的结点分为根节点,叶子结点(没有分支的结点) 以及分支结点 从上往下看,每个结点都有0个或多个后继 从下往上…

欧拉公式和傅里叶变换

注:英文引文机翻,未校。 如有内容异常,请看原文。 Euler’s Formula and Fourier Transform Posted byczxttkl October 7, 2018 Euler’s formula states that e i x cos ⁡ x i sin ⁡ x e^{ix} \cos{x} i \sin{x} eixcosxisinx. When…

《零基础Go语言算法实战》【题目 2-22】Go 调度器优先调度问题

《零基础Go语言算法实战》 【题目 2-22】Go 调度器优先调度问题 下面代码的输出是什么?请说明原因。 package main import ( "fmt" "runtime" "sync" ) func main() { runtime.GOMAXPROCS(1) wg : sync.WaitGroup{} wg.Add(10)…

解读若依微服务架构图:架构总览、核心模块解析、消息与任务处理、数据存储与缓存、监控与日志

文章目录 1. 引言2. 架构总览3. 核心模块解析3.1 服务注册与配置中心Nacos:微服务的中枢 3.2 网关层ruoyi-gateway:服务的统一入口 3.3 核心业务服务3.4 认证服务ruoyi-auth:认证与授权的守护者 3.5 异构服务整合Sidecar:连接异构…

Rank-Analysis——LOL 排位战绩查询分析器

项目地址: https://github.com/wnzzer/lol-rank-record-analysis 项目采用 Golang electron lol 战绩查询,一键查询你的混子队友! 很早以前就想做这个,最近学了学前端的内容,就拿这个练练手,后端也是新学…

el-table自定义按钮控制扩展expand

需求:自定义按钮实现表格扩展内容的展开和收起,实现如下: 将type“expand”的表格列的宽度设置为width"1",让该操作列不展示出来,然后通过ref动态调用组件的内部方法toggleRowExpansion(row, row.expanded)控…

FFmpeg入门

在音视频处理领域,有一款神器级的工具横扫开发者圈,那就是 FFmpeg。它被誉为“音视频处理的瑞士军刀”,凭借强大的功能和开源的特性成为众多开发者和媒体从业者的首选。今天,我们就来聊聊 FFmpeg 的入门使用,带你轻松开…