存储系统| 青训营笔记

47 阅读2分钟

这是我参与「第五届青训营 」伴学笔记创作活动的第 12 天

本次来随便讲讲存储系统。请大家酌情阅读。

存储

这里讲的存储就是我们最常见的存储了,学过机组的同学,肯定也知道计算机中有哪些存储。从机组上我们能分为三大类:缓存、内存和外存。现在的cpu缓存也在不断的变大,什么三级缓存啥的,一块缓存还能有好几M。

在缓存下一级就是我们的内存系统,这个不用多讲,电脑玩的多的肯定都了解是什么。最后就是我们的外部存储了,这部分包含的东西可就很多了。我们的硬盘如ssd、hdd,都是属于这一行列的。我们的磁带存储(用于冷存储文档)也是属于外存。甚至你可以说,往石碑上刻个字都可以属于外存。

我们可以在存储这个金字塔上画一道线,在内存与外存的分界线上画一条。在此之上的我们作为易失性存储,而下方的为持久性存储。

对于我们的硬件,我们有RAID系统。例如RAID0,就是不做备份。所有的数据都是存在盘中的,一旦发生硬盘损坏,那么数据将会丢失无法找回。而RAID1则是一块硬盘就有一块备份盘。这样可以避免硬盘故障导致的数据丢失。但是你也可以看到,我们存储的利用率只有50%。

最后是现在分布式系统。追求一个超高性能的主机或者超大容量的硬盘,都是会让钱包望而却步的。但是我们可以用实惠的价格买到很多容量不大的硬盘。而且使用多个硬盘还可以开启数据备份,提升数据的可用性。所以现在分布式存储也变得火。

数据库

数据库分为两种,分别是关系型数据库和非关系型数据库。

关系型数据库有我们常用的Mysql、postgresql和sql server。采用关系模型来存储数据。很好的将数据之间的关联性保存下来。存储和使用都很符合对象的关系。

非关系型数据库则是将所有的数据都视为了文档,可以说也是一种KV模型。非关系型数据库存储的数据并不像关系型数据库的数据一样是结构化的。非关系数据库存的都是非结构化的数据。可以是XML也可以是JSON,其内容不固定。

非关系的数据有常见的就是mongoDB,也适合用来存储大数据。