解释编程语言Sawzall;用于数据密集型应用的分布式文件系统的“谷歌文件系统”(Google File System);还有为处理分布式系统队列分组和任务调度的“谷歌工作队列”(Google Workqueue)。
正是从Sawzall这些工具里体现出谷歌对计算效率的执著关注。并不是每家公司都能从底层去解决效率问题,但是对谷歌来说,为常规关系型数据库无法容纳的大规模数据集专门设计一种编程语言是完全合理的。即使其他编程工具可以解决问题,谷歌的工程师们仍然会为了追求效率而另外开发一套定制方案。谷歌工程师认为,Sawzall能与C++中的MapReduce相媲美,而且它更容易编写一些。
谷歌对效率的关注使它不可能对标准Linux内核感到满意;谷歌会根据自己的需要运行修改过的内核版本。通过调整Linux的底层性能,谷歌工程师们在提高了整体系统可靠性的基础上,还一并解决了数据损坏和数据瓶颈等一系列棘手问题。对内核的修改也使谷歌的计算机集群系统因为通信效率的提高而运行得更快。
当然,谷歌偶尔也会出现系统故障,情况一旦发生,无数的用户就会受到影响了。三年前一次持续30分钟的系统故障使20%的搜索流量受到影响。
谷歌开发了自己的网站服务器却没有使用开源的Apache服务器,尽管它在网站服务器的市场占有率超过60%。迪博纳认为,谷歌的网站服务器可以运行在更多数量的主机上,对谷歌站点上内容庞大又彼此互相依赖的应用程序来说,这种服务器的负载均衡能力远比Apache的能力更高。
同时,在用标准公共网关接口(CGI)访问数据库动态网页方面,谷歌服务器的编程难度要比 Apache更高,但是最终运行速度却更快。“如果我们能够压榨出10%~20%的性能,我们就可以节省出更多系统资源、电量和人力了。”迪博纳在总结中指出。
谷歌还设计了自己的客户关系管理(CRM)系统用于支持自己基于竞价和点击的互联网广告收费业务。但对是否需要设计自己的工具,谷歌的态度也不是一成不变的。比如在财会软件上,它就使用了甲骨文公司(Oracle)的Financials软件。
美林拿着一只叉子举例说明现成的产品也可以带来价值。但在有些场合现成的软件产品就不一定适用了。“我们的文化在各个层面对我们的运作都有深远影响,”他表示,“所以我们不想让购买所得的工具改变我们的工作方式和文化层面。”
保持活泼
谷歌没有透露它在IT上的开销。Susquehanna 金融集团(Susquehanna Financial Group)分析师玛丽安.沃尔克(Marianne Wolk)估计今年上半年谷歌在IT上的花费高达三亿美元,相当于在此期间谷歌全部收入的30%。而在过去几年间,谷歌把全部收入的50%花在了IT上。现在,随着公司的发展,IT开销比例正在下降,其他领域如房地产业的投入正在增加。
非正统的科研人员管理方式使谷歌没法和大多数科技公司一样把研究和开发的预算分离开来。高级工程和研发副总裁阿兰.尤斯塔斯(Alan Eustace)解释说:“在许多大公司你会发现研究和工程是分离的。”但是把这两部分预算分离开来,他认为“就等于从制度上遏制了把各项工作变得更加有趣的可能。”
谷歌的IT是“去中心化”(Decentralized)的管理方式。公司没有CIO或首席技术官(CTO),但它拥有一大群高级工程师和技术人员。这中间包括主管系统基础设施工程的副总裁比尔.库格伦(Bill Coughran),他负责掌管和支撑谷歌在线应用的大型分布式运算程序,而尤斯塔斯则负责产品的研发。
谢尔盖.布林(Sergey Brin)的身份并不仅是谷歌的创始人之一,他的日
众多站长实践证明SEO网赚的最简单方法是==>
透过 Google AdSense 使您的网站产生收益 上一篇:
下一篇: