问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501
你好,欢迎来到懂视!登录注册
当前位置: 首页 - 正文

块储存,对象存储,文件存储的区别和联系

发布网友 发布时间:2022-04-23 14:36

我来回答

4个回答

懂视网 时间:2022-04-29 22:36

using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Text; 5 using System.IO; 6 using System.Runtime.Serialization.Formatters.Binary; 7 8 namespace MsChartHelp 9 { 10 static class FileSerialize 11 { 12 //获取文件时可以直接拿数组 13 public static T GetFileInfo<T>(string filePath) where T : new() 14 { 15 T t = new T(); 16 CreateFile<T>(filePath); 17 FileStream fs = new FileStream(filePath, FileMode.Open); 18 BinaryFormatter bf = new BinaryFormatter(); 19 if (fs.Length < 1) { return t; } 20 t = (T)(bf.Deserialize(fs)); 21 fs.Close(); 22 return t; 23 } 24 25 //BIN文件是否存在 26 private static void CreateFile<T>(string filePath) where T : new() 27 { 28 T t = new T(); 29 if (!File.Exists(filePath)) 30 { 31 FileStream fs = new FileStream(filePath, FileMode.Create); 32 BinaryFormatter bs = new BinaryFormatter(); 33 bs.Serialize(fs, t); 34 fs.Close(); 35 } 36 } 37 38 //保存数组LIST<U> 39 public static void Save<u>(string filePath, List<u> South) 40 { 41 List<u> souTrim = (List<u>)South; 42 FileStream fs = new FileStream(filePath, FileMode.Create); 43 BinaryFormatter bff = new BinaryFormatter(); 44 try 45 { 46 bff.Serialize(fs, souTrim); 47 } 48 catch (Exception) 49 { 50 51 throw; 52 } 53 finally 54 { 55 56 fs.Close(); 57 } 58 } 59 60 61 public static void Save<T>(string filePath, T South) 62 { 63 FileStream fs = new FileStream(filePath, FileMode.Create); 64 BinaryFormatter bff = new BinaryFormatter(); 65 try 66 { 67 bff.Serialize(fs, South); 68 } 69 catch (Exception) 70 { 71 72 throw; 73 } 74 finally 75 { 76 77 fs.Close(); 78 } 79 } 80 } 81 } View Code

 

 

缺点

1.如果有10w条记录,修改一条你就需要重写这个BIN文件,开销相当大,另外如果只是查询一条记录你也需要重新将这个BIN所有内容加载到内存建立对应的对象。


2.Access, SQL Server可以简单理解做了2件事情,第一他提供了统一界面,任何语言任何进程通过sql都可以与之通讯,获取数据。

第二件事情他提供了索引机制,通过索引不需要加载所有数据到内存就能根据sql定位查询结果。

3.修改对象结构会造成数据无法读取,需要保留原对象与新对象,将原数据读取至原对象,然后通过程序转换到新对象,将新对象重新保存在一个新文件(BIN)里面,最后原对象文件和原数据文件(BIN)删除。

4.实时保存,不建议实时保存,等所有处理完毕延迟保存数据最好。

但是如果你的应用很小,内存足够hold住数据,且不需要实时保存,那么此方法是可行的,而且可以说比用access都好,呵呵。

具体问题具体分析,合适就好。

BIN文件对象数据库,直接存储对象做数据库,小型项目用它准没错

标签:

热心网友 时间:2022-04-29 19:44

通常来讲,磁盘阵列都是基于Block块的存储,而所有的NAS产品都是文件级存储。
1. 块存储:DAS SAN
a) DAS(Direct Attach Storage): 是直接连接于主机服务器的一种存储方式,每台服务器有独立的存储设备,每台主机服务器的存储设备无法互通,需要跨主机存取资料室,必须经过相对复杂的设定,若主机分属不同的操作系统,则更复杂。
应用:单一网络环境下且数据交换量不大,性能要求不高的环境,技术实现较早。
b) SAN(Storage Area Network): 是一种高速(光纤)网络联接专业主机服务器的一种存储方式,此系统会位于主机群的后端,它使用高速I/O联接方式,如:SCSI,ESCON及Fibre-Channels.特点是,代价高、性能好。但是由于SAN系统的价格较高,且可扩展性较差,已不能满足成千上万个CPU规模的系统。
应用:对网速要求高、对数据可靠性和安全性要求高、对数据共享的性能要求高的应用环境中。

2. 文件存储
通常NAS产品都是文件级存储。
NAS(Network Attached Storage):是一套网络存储设备,通常直接连在网络上并提供资料存取服务,一套NAS储存设备就如同一个提供数据文件服务的系统,特点是性价比高。
它采用NFS或CIFS命令集访问数据,以文件为传输协议,可扩展性好、价格便宜、用户易管理。目前在集群计算中应用较多的NFS文件系统,但由于NAS的协议开销高、带宽低、延迟大,不利于在高性能集群中应用。

3. 对象存储:
总体上讲,对象存储同时兼具SAN高级直接访问磁盘特点及NAS的分布式共享特点。
核心是将数据通路(数据读或写)和控制通路(元数据)分离,并且基于对象存储设备(OSD),构建存储系统,每个对象存储设备具备一定的职能,能够自动管理其上的数据分布。
对象储存结构组成部分(对象、对象存储设备、元数据服务器、对象存储系统的客户端)
3.1 对象
一个对象实际就是文件的数据和一组属性信息的组合。
3.2 对象存储设备(OSD)
OSD具有一定的智能,它有自己的CPU、内存、网络和磁盘系统。
OSD提供三个主要功能:包括数据存储和安全访问
(1)数据存储 (2)智能分布 (3)每个对象元数据的管理
3.3 元数据服务器(Metadata Server , MDS)
MDS控制Client与OSD对象的交互,主要提供以下几个功能:
(1) 对象存储访问
允许Client直接访问对象,OSD接收到请求时先验证该能力,再访问。
(2) 文件和目录访问管理
MDS在存储系统上构建一个文件结构,限额控制、包括目录、文件的创建、访问控制等
(3) Client Cache 一致性
为提高性能,在对象存储系统设计时通常支持Client的Cache。因此带来了Cache一致性的问题,当Cache文件发生改变时,将通知Client刷新Cache,以防Cache不一致引发的问题。
对象存储:
一个文件包含了属性(术语叫matadata元数据,例如该文件的大小、修改时间、存储路径等)以及内容(简称数据)。
以往的文件系统,存储过程将文件按文件系统的最小块来打散,再写进硬盘,过程中没有区分元数据(metadata)和数据。而在每个块最后才会告知下一个块的地址,因此只能一个一个读,速度慢。
而对象存储则将元数据独立出来,控制节点叫元数据服务器(服务器+对象存储管理软件),里面主要存储对象的属性(主要是对象的数据被打散存放到了那几台分布式服务器中的信息),而其他负责存储数据的分布式服务器叫做OSD,主要负责存储文件的数据部分。当用户访问对象时,会先访问元数据服务器,元数据服务器只负责反馈对象存储在那些OSD。假设反馈文件A存储在B,C,D三台OSD,那么用户就会再次访问三台OSD服务器去读取数据。
这时三台OSD同时对外传输数据,因此传输的速度就加快了。OSD服务器数量越多,这种读写速度的提升就越大。
另一方面,对象存储软件有专门的文件系统,所以OSD对外又相当于文件服务器,那么就不存在文件共享方面的困难了,也解决了文件共享方面的问题。
因此对象存储的出现,很好的结合了块存储与文件存储的优点。

为什么还要使用块存储和文件存储:
1.有一类应用是需要存储直接裸盘映射的,比如数据库。因为数据库需要存储裸盘映射给自己后,再根据自己的数据库文件系统来对了裸盘进行格式化,因此不能采用其他已经被格式化为某种文件系统的存储。此类更适合块存储。
2.对象存储的成本比普通的文件存储还是较高,需要购买专门的对象存储软件以及大容量硬盘。如果对数据量要求不是海量,只是为了作文件共享的时候,直接用文件存储的形式就好了,性价比高。

热心网友 时间:2022-04-29 21:02

一图分辨块存储、对象存储、文件存储

热心网友 时间:2022-04-29 22:37

首先说下文件存储,块存储,典型代表 DAS,NAS,SAN 做个一个详细的对比表,可以系统看下他们的区别与使用场景的差异:

块存储、文件存储、对象存储三者区别与联系(解释最清楚)

块存储、文件存储和对象存储在技术层面上分别对应块-&gt;文件-&gt;对象逐级的层次关系。文件存储基于块存储实现,对象存储基于文件存储或直接基于块存储,其后端存储通常基于本地文件系统。尽管存在结合与混搭趋势,但它们在数据结构、存储机制和应用领域上存在本质差别。四、分布式存储在块存储、文件存储、对象存储的...

对象存储、文件存储和块存储有什么区别?

块存储是一种基于块的存储架构,它主要提供块级别的数据存储和服务。特点包括:数据以块为单位进行存储,每个块都有固定的尺寸。强调高性能的输入输出能力和可扩展性。主要用于需要高性能存储的应用,如数据库、虚拟机等。详细解释:对象存储非常适合处理大量的非结构化数据,如照片、视频和音频文件等。由于...

对象存储、文件存储和块存储有什么区别?

2. 可分步性上,块存储在异地应用不实际,文件存储虽可分布式但存在瓶颈,对象存储则以其高并发分步能力见长。3. 文件大小上,块存储支持各种大小数据,文件存储特别适合大文件,而对象存储适应性强,可处理各种文件大小。4. 接口方面,块存储使用Driver和kernel module,文件存储采用POSIX,对象存储则主要...

对象存储、文件存储和块存储的区别是什么?

在文件大小上,块存储主要针对大小固定的热点数据,文件存储适合大文件,而对象存储则适合各种文件大小的存储需求。在接口方面,块存储通常使用Driver和kernel module,文件存储采用POSIX接口,而对象存储采用RESTful API。技术上,块存储常见的有SAN(如DAS和SAN),文件存储以HDFS和GFS为代表,对象存储则有Swi...

块储存,对象存储,文件存储的区别和联系

1.有一类应用是需要存储直接裸盘映射的,比如数据库。因为数据库需要存储裸盘映射给自己后,再根据自己的数据库文件系统来对了裸盘进行格式化,因此不能采用其他已经被格式化为某种文件系统的存储。此类更适合块存储。2.对象存储的成本比普通的文件存储还是较高,需要购买专门的对象存储软件以及大容量硬盘。

对象存储、文件存储和块存储有什么区别?

一、存储设备不同 1、对象存储:对象存储的对应存储设备为swift,键值存储。2、文件存储:文件存储的对应存储设备为FTP、NFS服务器。3、块存储:块存储的对应存储设备为cinder,硬盘。二、特点不同 1、对象存储:对象存储的特点是具备块存储的高速以及文件存储的共享等特性。2、文件存储:文件存储的特点是...

对象存储、文件存储和块存储有什么区别?

区别如下:1、速度不同 块存储:低延迟(10ms),热点突出;文件存储:不同技术各有不同;对象存储:100ms-1s,冷数据;2、可分步性不同 块存储:异地不现实;文件存储:可分布式,但有瓶颈;对象存储:分步并发能力高;3、文件大小不同 块存储:大小都可以,热点突出;文件存储:适合大文件;对象...

块存储、文件存储、对象存储这三者的本质差别是什么?

存储设备不同:对象存储的对应存储设备为swift,键值存储。文件存储的对应存储设备为FTP、NFS服务器。块存储的对应存储设备为cinder,硬盘。特点不同:对象存储的特点是具备块存储的高速以及文件存储的共享等特性,文件存储的特点是一个大文件夹,大家都可以获取文件。块存储的特点是分区、格式化后,可以使用...

详解块存储、文件存储、对象存储区别

本文将深入解析块存储、文件存储和对象存储之间的区别,帮助你理解它们的特点和应用场景。1. 块存储块存储通过RAID和LVM等技术提供数据保护,利用多块廉价硬盘构建逻辑磁盘,提高性能和性价比。优点包括数据冗余、并行写入和可能的高速传输。缺点是需要专用的SAN架构,成本较高且不利于不同操作系统间的文件...

对象存储、文件存储和块存储有

本文主要探讨对象存储、文件存储和块存储的差异,包括它们的存储设备、特点及各自的局限性。首先,我们来看看它们在存储设备上的不同:对象存储:其基础设备是Swift的键值存储系统,提供高速且具有文件共享特性。 文件存储:主要依赖FTP和NFS服务器,以文件夹形式实现多人共享文件。 块存储:cinder支持的...

声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。
E-MAIL:11247931@qq.com
江阴龙奇包装材料有限公司《齐鲁人造板》杂志 江阴市元和彩印包装有限公司公司简介 求CS怎么玩 用pp点点通和vagaa看电影 假如你是临沂新华中学学生张亮,你发现你学校门口放学时间经常因为家长接 ... 设置朋友圈不让他看,他还能看见吗 微信里面设置不让某人看,那他看的到吗? 不让他看我的朋友圈他还能看到吗! 舒淇从小被家暴,她说"有些衣服,脱了就再也穿不上了",咋回事? 舒淇星路历程 对象存储、文件存储和块存储的区别? 块存储、文件存储、对象存储这三者的本质差别是什么? “望闻问切”的“切”,怎么念? 中医中望闻问切,具体指什么内容? 中医望闻问切是什么意思? 望闻问切指的是什么? 望闻问切什么意思 望闻问切 切字的读音? 中医四诊:望闻问切中的“切”发什么音? 成语&quot;望闻问切&quot;是什么意思? 中医望闻问切的切是什么读音 中医的望闻问切中的闻和切是什么? 怎么加tap tap好友 中医里的“望闻问切”中的“切”是个什么意思呢 “望闻问切”的“切”指的是什么? tap加速器支持多设备登录吗 望闻问切的切指什么 Tap加速器这个软件的人多吗? 望闻问切的切读音是什么、要正确的!!! tap tap如何加歌 对象存储是什么?对象存储的基本定义 描述对象存储,与文件存储,块存储的区别 什么是对象存储? 对象存储,块存储,文件存储那个好? 我在工商银行办理的网上银行请问第一次登陆网上银行的密码是什么 有对象存储了为什么还要有文件存储和块存储? 在AI中怎么把一个图形复制粘贴到另一个图形的下方?快捷键是什么? 如何修改工行企业网银登录密码? 在AI 软件中如何使用复制和粘贴 文件系统和OpenStack对象存储有何不同 忘记普及版工行企业网上银行登录密码怎么办? AI里想要把东西排满一张纸 最快捷的复制方法 快捷键是什么? 小鸟云的云数据库和对象存储有什么区别? 在AI软件里剪切后文件再次粘贴用什么工具 AI软件里图中的 “粘贴选项”对话框的快捷键是什么?或者在软件里怎么找出“粘贴选项”的对话框? ai剪贴板数据在哪里 AI复制渐变色怎么复制,快捷键是什么。 三品plm安装时失败要怎么卸载残留文件 酸辣土豆丝的正确做法? AI中复制文字的时候怎样才能跟粘贴地方的文字格式一样!
  • 焦点

最新推荐

猜你喜欢

热门推荐