各个击破算法和Google云计算的基础
Posted Jump Asher
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了各个击破算法和Google云计算的基础相关的知识,希望对你有一定的参考价值。
云计算涉及的面很广,从储存、计算、资源的调度到权限的管理等。云计算的关键之一是,如何把一个非常大的计算问题,自动分解到许多计算能力不是很强大的计算机上,共同完成。针对这个问题谷歌给出了一个叫做MapReduce的程序,其根本原理就是十分常见的分治(Divide-and-Conquer)算法,我称之为“各个击破”法。
分治算法是计算机科学中最漂亮的工具之一。它的基本原理:将一个复杂的问题,分成若干个简单的子问题进行解决。然后,对子问题的结果进行合并,得到原有问题的解。
将一个大任务拆分成小的子任务,,并且完成子任务的计算,这个过程叫做Map,将中间结果合并成最终结果,这个过程叫做Reduce。当然,如何将一个大的矩阵自动拆分,保证各个服务器负载均衡,如何合并返回值,就是MapReduce在工程上做的事情了。
云计算最早追溯到甲骨文公司的拉里▪埃里森在上个世纪90年代初提出的概念——网络电脑。和拥有客户端的微软不同,甲骨文拥有服务器端最重要的软件——数据库。
首先云计算保证用户可以随时随地访问和处理信息,非常方便地与他人共享信息。
其次云计算保证用户可以使用云端的大量计算资源,包括CPU处理器和存储器(内存和磁盘),而无需自己购置设备。
云计算的核心技术:存储、资源管理和信息安全。
云计算的普及首先离不开大型数据中心的建设和全球高速光纤主干网的铺设。
云计算的发展是全社会的事情,最终需要公开的接口标准和服务。在全球信息化的今天,最好的模式莫过于构建开放的开发环境和工具。
以上是关于各个击破算法和Google云计算的基础的主要内容,如果未能解决你的问题,请参考以下文章