架构师训练营第八周学习笔记
本周的内容比较多,先针对文件存储方案做下笔记。
存储方案
文件存储方案有不同的优化阶段。先是提高文件读写效率,然后考虑数据安全性,如何保证数据不丢失。
机械硬盘
机械硬盘比较原始,效率比较低。数据读写要通过磁盘的转动、磁臂的移动及磁头的读写等一些列操作之后,才能实现数据的读写。
固态硬盘
固态硬盘没有了磁盘转动、磁臂及磁头的物理运动,通过电子元件的操作,效率得到了很大提升。
磁盘阵列
如何进一步提升效率呢?同时,还有一个问题,磁盘容易损坏,如何保证磁盘损坏时数据不丢失?答案就是将数据保存多份,同时读写,效率高了,数据安全性也得到了保证。然后就有了磁盘阵列(Redundant Arrays of Independent Disks,RAID)。
磁盘阵列有多重方案。它们的演化过程大概是:
保证数据冗余多分
数据冗余份数太多,空间利用率低,然后就有了校验位机制(通过异或运算)
两块盘有问题时,校验位机制就不够了,然后就有了双重校验位机制
应用层解决方案(HDFS)
RAID 机制只是考虑如何提高单台机器上的读写效率和安全性。要想进一步提高效率和安全性,单台机器上可做的事情就不多了,然后就有了在应用面提出解决方案,比如 HDFS。
数据结构
二叉排序树
左子树上所有结点的值均小于或等于它的根结点的值。 右子树上所有结点的值均大于或等于它的根结点的值。 左、右子树也分别为二叉排序树。
不平衡的二叉排序树
平衡二叉(排序)树
从任何一个节点出发,左右子树深度之差的绝对值不超过1。左右子树仍然为平衡二叉树。
旋转二叉树恢复平衡
红黑树
跳表
网络模型
OSI 七层模型和 TCP/IP 四层模型
非阻塞 IO(NIO)
select, poll, epoll
版权声明: 本文为 InfoQ 作者【一马行千里】的原创文章。
原文链接:【http://xie.infoq.cn/article/cc88347f165be9d2b3a1749d2】。文章转载请联系作者。
评论