首页 > CIO > 正文

Google工程师谈程序员的自我修养

2013-10-26 14:52:00  来源:highscalability

摘要:在Google基础设施发展背后的主要动机是保证日益增长的数据集稳定运行的挑战。举个例子,在同一时间Google的网页搜索量会大幅提升,我们会扩展索引规模,还经常对索引进行重建。
关键词: Google

    美国计算机协会十月的人物栏目对Sanjay Ghemawat进行了 专访,他是Google系统架构组(包括MapReduce、 BigTable、Spanner、GFS等)的Fellow,从1999年开始研究分布式系统、索引系统、压缩方案、内存管理、数据表达语言、RPC系统。 Sanjay与Jeff Dean共同获得了2012 ACM Infosys基金会计算机科学奖。


    Sanjay Ghemawat


    在专访中,Sanjay谈及了Google文化中很多有趣的方面。


    什么让Google成为Google


    进步是个现代的概念。通过个人的进步和行动,未来可以变的更加美好。这种信念已经流传了上百年。


    是什么推动进步?是挑战。独一无二的发现战胜了挑战。通常,当人们非常渴望做一件事时,就会倾其努力、思考和金钱去解决问题。而结果往往会创造出新的另人惊叹的事物。


    在Google也是这样的:


    在Google基础设施发展背后的主要动机是保证日益增长的数据集稳定运行的挑战。举个例子,在同一时间Google的网页搜索量会大幅提升,我们会扩展索引规模,还经常对索引进行重建。这意味着,我们不得不在很短的时间内有效的处理大量数据。这直接导致的结果是,我们的基础设施系统得到了发展。


    关于MapReduce:


    在《 Beautiful Code: Leading Programmers Explain How They Think》一书中,Sanjay提到了Beautiful Code。他表示,书中的MapReduce章节更多的是在阐述一个系统,这些阐述专注于如何解决主要问题(如何在有硬件失效的情况下快速处理大量数据)。


    MapReduce的产生动机源于Google需要解决遇到的问题。


    前沿的项目能产生大多数创新。也许这是因为在紧密的组织中成员间互相依赖,产生正量反馈,更多的创新由此产生。通常,我们被办公区的隔断分成一个一个的格子,这会切断一切正量反馈。另外很奇怪的一点是,大多数组织的结构是一层一层的堆叠,这让正量反馈无处生存。


    大数据职业建议


    如何在挑战困难的过程中不断学习?Sanjay给出了建议:


    在实践中学习;建立学习体系


    学习已知的系统,你可以在许多会议和论文中找到


    从快速和简单的实践做起;在不同的系统设计中,能找到高效建立模型的方式


    关于未来值得关注的重大技术,Sanjay表示:语言处理、计算机视觉(computer vision)、机器学习可以有效的解决当下许多问题,这也是对大数据领域的下一个挑战。大规模的学习集群已经实现,但需要大量的运算才能获得有价值的结果。我希望在这一领域能出现更多的巨头。


第三十五届CIO班招生
国际CIO认证培训
首席数据官(CDO)认证培训
责编:fanwei

免责声明:本网站(http://www.ciotimes.com/)内容主要来自原创、合作媒体供稿和第三方投稿,凡在本网站出现的信息,均仅供参考。本网站将尽力确保所提供信息的准确性及可靠性,但不保证有关资料的准确性及可靠性,读者在使用前请进一步核实,并对任何自主决定的行为负责。本网站对有关资料所引致的错误、不确或遗漏,概不负任何法律责任。
本网站刊载的所有内容(包括但不仅限文字、图片、LOGO、音频、视频、软件、程序等)版权归原作者所有。任何单位或个人认为本网站中的内容可能涉嫌侵犯其知识产权或存在不实内容时,请及时通知本站,予以删除。