分布式技术为何能适配海量文档的管理?
这是一个很好的命题,首先,我们可以从技术角度和业务角度来解读这个命题。
一、技术角度剖析海量存储文档的解决方案
涉及到海量文档的管理,他就不仅仅是文档的存储,而且还涉及到文档内容的搜索,文档内容的语义分析,文档内容识别,文档类型转换等工作。
如果是少量的文件,这些都是很简单的事情,但是数据量一旦增大,这处理起来就是一个很大的挑战了,为什么这样说呢,
举个例子:假如你一分钟要处理5个文档,每个文档40页,每页1000个字,这个时候可能一台服务器能够应付得过来
但是当你要处理的文档数量增加到50个文档的时候,这个时候你的服务器估计就开始吃不消了,
当你的文档再大一个数量级,猛增到500个的时候,这个时候要么把他们丢到队列里面去无止境的排队,要么直接让服务器宕机,没有第三种选择。
那么解决办法是什么呢?
答案就是分布式,其实这并不是什么西方的智慧,这个分布式其实就是借鉴了我们的老祖宗秦始皇的分而治之的思想,想当年六国联合起来围攻秦国,秦始皇想到的办法是什么呢?对了,我想你应该听过这个故事,就是分而治之。
那么我们的分布式也是这样,你文档数量非常大,那么我们就把你的文档分成很多个部分,分派到不同的服务器去处理,这样一分下来,是不是每台服务器的压力就小了很多,后续如果量再增大,我们就再加服务器。海量文档的问题就迎刃而解了。
二、业务角度分析
从业务角度出发,我们可以把不同的文档入口划分到不同的服务器上,这样就可以在源头上做了拆分,从而降低了单个服务器群的负担。