说起分布式存储,大家可能都会觉得这是一个老生常谈的问题,虽然分布式存储并不是一个年轻的技术,许多开发者也对分布式存储耳熟能详,但分布式存储却并不是像想象中的那种简单的技术,它是一个涉及到文件系统、存储系统、网络、算法、管理等多方面技术的汇聚,因此,要想真正的掌握分布式存储技术,绝不是一件轻松的事。但对于开发者来说,如果不了解分布式存储技术,实际上对他们的开发工作还是会有很大的影响,特别是现在基于互联网的开发更是离不开对分布式存储技术的深入了解。
很多人可能从来没有考虑过这个问题,为什么需要分布式存储?实际上,使用分布式存储是“被迫”的,因为随着互联网的飞速发展、应用越来越丰富、用户数量越来越多、数据也成几何级增长,海量数据的存储给本地存储带了巨大压力,存储系统已经不堪重负,处于崩溃的边缘,因此,必须通过其他手段分散存储系统压力,分布式存储和分布式文件系统应运而生。
实际上,如果可能,应该是尽量不使用分布式的,因为这会增加系统的复杂度和管理难度,然而,虽然是这样,但这些终归是可以通过其他技术来解决,而如果不使用分布式,系统的可用性、稳定性都无法保证,更谈不上系统的高性能了。因此,说分布式是被迫使用的,一点也不夸张。
不难发现,分布式的目的就在于追求高性能与高可用这两个特性。分布式系统中遇到的各种理论、技术以及设计方案,其本质上就是为了解决这两个关键性问题而已。在想清楚了这个观点之后,那所谓的分布式也并没有这么高大上,深不可测。它无非是提出一些技术方法来解决遇到的一堆问题。