裁缝般地定制软件
为了能尽量压榨硬件性能,谷歌开发了相当数量的定制软件。创新产品主要包括用于简化处理和创建大规模数据集的编程模型MapReduce;用于存储和管理大规模数据的系统BigTable;分析分布式运算环境中大规模数据集的解释编程语言Sawzall;用于数据密集型应用的分布式文件系统的“谷歌文件系统”(Google File System);还有为处理分布式系统队列分组和任务调度的“谷歌工作队列”(Google Workqueue)。
正是从Sawzall这些工具里体现出谷歌对计算效率的执著关注。并不是每家公司都能从底层去解决效率问题,但是对谷歌来说,为常规关系型数据库无法容纳的大规模数据集专门设计一种编程语言是完全合理的。即使其他编程工具可以解决问题,谷歌的工程师们仍然会为了追求效率而另外开发一套定制方案。谷歌工程师认为,Sawzall能与C++中的MapReduce相媲美,而且它更容易编写一些。
谷歌对效率的关注使它不可能对标准Linux内核感到满意;谷歌会根据自己的需要运行修改过的内核版本。通过调整Linux的底层性能,谷歌工程师们在提高了整体系统可靠性的基础上,还一并解决了数据损坏和数据瓶颈等一系列棘手问题。对内核的修改也使谷歌的计算机集群系统因为通信效率的提高而运行得更快。
当然,谷歌偶尔也会出现系统故障,情况一旦发生,无数的用户就会受到影响了。三年前一次持续30分钟的系统故障使20%的搜索流量受到影响。
谷歌开发了自己的网站服务器却没有使用开源的Apache服务器,尽管它在网站服务器的市场占有率超过60%。迪博纳认为,谷歌的网站服务器可以运行在更多数量的主机上,对谷歌站点上内容庞大又彼此互相依赖的应用程序来说,这种服务器的负载均衡能力远比Apache的能力更高。
同时,在用标准公共网关接口(CGI)访问数据库动态网页方面,谷歌服务器的编程难度要比 Apache更高,但是最终运行速度却更快。“如果我们能够压榨出10%~20%的性能,我们就可以节省出更多系统资源、电量和人力了。”迪博纳在总结中指出。
谷歌还设计了自己的客户关系管理(CRM)系统用于支持自己基于竞价和点击的互联网广告收费业务。但对是否需要设计自己的工具,谷歌的态度也不是一成不变的。比如在财会软件上,它就使用了甲骨文公司(Oracle)的Financials软件。
美林拿着一只叉子举例说明现成的产品也可以带来价值。但在有些场合现成的软件产品就不一定适用了。“我们的文化在各个层面对我们的运作都有深远影响,”他表示,“所以我们不想让购买所得的工具改变我们的工作方式和文化层面。”
| 共5页: 上一页 [1] 2 [3] [4] [5] 下一页 | |||||||
|
|
· 艾默生、HP联手推出新.. · 服务器在无盘网吧的现.. · 航天联志发布四核四路.. · 双机MSCS安装配置手册(.. · 双机MSCS安装配置手册.. · 双机MSCS安装配置手册.. |
· 曙光百万亿次超级计算.. · 欧瑞斯推出一体化IT设.. · 观察:数据中心未来的.. · 微软将超1亿收购语义搜.. · 雅虎与微软恢复谈判却.. · 恶意网站来源前三名来.. |
|
||||
| · NAC安全访问控制 · 网络布线测试仪器 · Windows Server 2008专.. · Windows远程桌面应用 · 网络故障排除宝典 · 运营商封堵ADSL共享 中.. · 解析35岁技术人的价值.. · 世纪枭雄比尔盖茨的王.. |
· 主流品牌防火墙配置 · ASP.NET开发教程 · 超级计算机TOP500专题 · Vista SP1对决XP SP3 · SQL Server 2008/2005.. · 程序员如何成长? · C#技术开发指南 · 虚拟化技术还有点“虚” |
|||
|
||||
| · SOA 面向服务架构 · SQL Server 2008/2005.. · Apache技术专题 · 三层交换技术专题 · SQL Server入门到精通 · Windows远程桌面应用 · C#技术开发指南 · Apache技术专题 |
· Windows集群服务应用 · C#技术开发指南 · 国际文档格式标准开战 · 路由器设置与口令恢复 · Linux 集群技术专题 · PHP开发应用手册 · SOA 面向服务架构 · 企业数据恢复指南 |
|||
|
||||
| · SQL Server入门到精通 · SQL Server 2008/2005.. · SOA 面向服务架构 · Apache技术专题 · C#技术开发指南 · 三层交换技术专题 · Apache技术专题 · C#技术开发指南 |
· Windows远程桌面应用 · 企业数据恢复指南 · Windows集群服务应用 · 路由器设置与口令恢复 · Linux 集群技术专题 · SOA 面向服务架构 · 了解统一威胁管理(UTM).. · 反垃圾邮件技术应用 |
|||