关于Facebook,你不知道的3件事!

[摘要]小编有话说:提到Facebook你能想到什么?全球最大的社交网络?但小编今天要告诉你,不止于此,从Netflix到Uber再到Walmart的网站,我们每天
小编有话说:提到Facebook你能想到什么?全球最大的社交网络?但小编今天要告诉你,不止于此,从Netflix到Uber再到Walmart的网站,我们每天使用的许多应用和服务都是建立在Facebook开发的技术之上。
关于Facebook,你不知道的3件事!

 

 

在过去的15年里,Facebook重新定义了我们的社交。改变了我们与家人之间争吵的方式,改变了我们对隐私的理解和看法,同时也改变了我们对政府宣传的消费方式。但同时,在你不知道的地方,Facebook也改变了计算方式。从Netflix到Uber再到Walmart的网站,我们每天使用的许多应用和服务都是构建在 Facebook 开发并共享的技术之上。

随着Facebook的用户数不断增多,数量级从百万级飙升至数十亿级。需要处理的用户信息数据变得惊人,它不得不开发出各种各样的工具来处理这些数据,甚至包括开发设计承载这些数据库的数据中心的硬件。最近,它开发出了一个为网络和移动应用程序构建界面的新方法,而且,还是开源的。Facebook曾以开源的方式发布了大量的工作成果,这意味着其他任何人都可以使用,修改和分享Facebook的发明。

“Facebook多年来一直是开源的驱动力,与更广泛的社区分享许多关键技术”,Linux基金会执行董事Jim Zemlin说。该基金会拥有一个致力于GraphQL的组织,GraphQL是一种由Facebook创建的编程语言,用于处理应用程序和服务器之间的通信,现在许多公司都在使用这种语言。

由于 Facebook 的开放性,它的许多技术已经成为行业标准。

“Facebook不仅转变了我们构建服务器的方式,同时也为我们编写浏览器和手机代码提供了巨大的帮助”,Airbnb的技术负责人Adam Neary表示,“整个生态系统可以说都是由Facebook开创并开源的技术推动的。”

/ 大数据的诞生 /

Facebook对大型计算社区的第一个重大贡献就是Cassandra,这是一个可以扩展到数百或数千台服务器的数据库系统。

Facebook并不是第一家建立这样一个数据库的公司。亚马逊和谷歌都发表过相关论文,详细介绍自己对于分布式数据库的创新,但两家公司都没有真正发布这些内部应用程序的代码。 Facebook工程师Avinash Lakshman曾参与过亚马逊的相关论文项目,他与Prashant Malik将亚马逊和谷歌的论文思路结合起来创建了Cassandra。并于2008年将相关代码进行了开源,它很快就被各大公司广泛使用,例如云计算公司Rackspace。

“他们不仅仅是在复制谷歌和亚马逊所做的事情,他们还做了不同的事情,是创新”,Jonathan Ellis说。2010年,Jonathan Ellis在担任Rackspace员工时曾广泛使用Cassandra,并与他人共同创建了DataStax,一家为企业客户提供Cassandra支持的公司。

今天,根据 DB-Engines网站的数据,Cassandra在世界最受欢迎的数据库排行榜上位列11名。 Apple、Netflix、Instagram和Uber都是该项目的用户和贡献者。

Facebook也是开源数据处理平台Hadoop的早期贡献者,Hadoop几乎成了大数据的代名词。 Hadoop的早期开发大部分是由雅虎基于Google发布的论文完成的。但Facebook是雅虎以外首批采用Hadoop并为该平台贡献额外工具的公司之一。 Hadoop催生了多家创业公司,如由前Facebook研究科学家Jeff Hammerbacher与人共同创立的Cloudera。

近年来,Facebook在人工智能研究方面投入了大量资金,以便更多地利用其数据,并且已经发布了部分研究成果。2015年,它开放了部分人工智能算法的源代码,用于一个名为Torch的流行人工智能平台,这比谷歌开放其AI引擎TensorFlow提前了差不多一年的时间。其后,Facebook继续为Torch变体PyTorch的开发提供资金,现在PyTorch已经是目前第三大最受欢迎的人工智能框架。

/ 开放数据中心 /

 

对于 Facebook 来说,仅仅开发能够处理数百万用户数据的软件是不够的,它还必须设计计算机和建筑物来管理所有的数据。

在此过程中,Facebook提出了一些不同寻常的想法,从使用外部空气冷却而非工业冷却系统的“露天”数据中心,到能够快速更换处理器和其他组件的“模块化”服务器。

Facebook发布了所有这些设计作为开放计算项目的一部分,该项目现在是一个独立的组织。它在2011年宣布开放计算时遭到了质疑,尽管当时开源软件已经较为成熟,但还不清楚Facebook的特殊想法是否对其他公司有用。但很快,像台湾公司Quanta这样的供应商就开始销售基于Facebook设计的电脑,包括Rackspace、微软和苹果在内的其他公司也为这项计划贡献了自己的硬件设计。

今天,Facebook正在与爱立信和德国电信等电信公司合作开展电信基础设施项目,以帮助他们建立新的开源电信基础设施,包括一个名为ARIES的远程天线系统和一个名为Terragraph的无线信号塔连接系统。

 

关于Facebook,你不知道的3件事!

 

 

 

/ 完成拼图 /

 

在其最初十年的大部分时间里,被广泛使用的Facebook开源贡献就是这些幕后基础设施。 比如,Netflix可能使用Cassandra来管理您在数据中心的信息,但这并不意味着您将在其网站上与Facebook代码进行交互。而这种情况在2013年开始发生变化,当时Facebook发布了React,这是一个开放源代码的“库”,Facebook和现在许多其他人用它来构建看起来像原装应用程序的Web界面。

React花了一些时间才能流行起来,但近年来它超越了Google的框架Angular,成为构建“前端”应用程序最广泛使用的库,Airbnb,Netflix和Walmart都使用React。

编程教育网站FreeCodeCamp的创始人Quincy Larson表示:“在2015年,我突然发现我在旧金山的朋友们开始放弃像jQuery和Angular这样的工具,转而开始使用React,他们非常信赖React。”

这可能与2015年React Native的发布有关。React Native使开发人员能够使用React为Android和iOS开发应用程序,这意味着他们可以使用相同的代码开发Web和移动应用程序。

Facebook并不是第一个提供使用Web技术构建移动应用程序的工具,也不是第一个提供用于构建Web应用程序的开源库。但咨询公司Rightpoint的首席创新官Greg Raiz表示,将这两种想法结合起来让它变得独一无二。“我认为这是一个整体故事,”他说,“这有助于完成这个拼图。”

 

关于Facebook,你不知道的3件事!

 

 

 

【原文全文】

How Facebook Has Changed Computing

Over the past 15 years, Facebook has changed the way we keep in touch with friends, how we feud with family members, how we think about privacy, and how we consume Russian propaganda—not always for the better. But Facebook also changed computing. From Netflix to Uber to Walmart’s website, many of the apps and services we use every day are built with technologies that Facebook developed and then shared with the world.

As the company grew to accommodate millions, and eventually billions, of users, it had to create tools, from data storage software that can handle mind-boggling amounts of user information to hardware designs for data centers that host those databases. More recently it created new ways to build interfaces for its web and mobile apps. Crucially, Facebook didn't keep these creations to itself. It released much its work as open source, meaning that anyone else could use, modify, and share Facebook's inventions.

"Facebook has been a driving force in open source for years, sharing many critical pieces of technology with the broader community," says Jim Zemlin, executive director at the Linux Foundation. The foundation hosts an organization dedicated to GraphQL, a programming language created by Facebook to handle communications between apps and servers that is now used by many other companies.

Because of Facebook’s openness, many of its technologies have become industry standards. "Facebook has played a tremendous role in shifting not only in the way we build our servers, but also how we write code for browsers and phones," says Adam Neary, a tech lead at Airbnb. "The entire ecosystem is driven by technologies that Facebook pioneered and then open sourced."

The Birth of Big Data

One of Facebook's first big contributions to the larger computing community was Cassandra, a database system that can scale across hundreds or thousands of servers.

Facebook wasn't the first company to build such a database. Amazon and Google had both published papers detailing their own distributed database innovations, but neither company had actually released the code for these internal applications. Facebook engineers Avinash Lakshman, who had worked on Amazon's paper, and Prashant Malik combined ideas from both the Amazon and Google papers to create Cassandra. Then, in 2008, they released the code. Soon it was being used by other companies, such as cloud computing company Rackspace.

"Facebook has been a driving force in open source for years, sharing many critical pieces of technology with the broader community."

——Jim Zemlin, executive director, Linux Foundation

"They went beyond just cloning what Google and Amazon did and innovate, they did something different," says Jonathan Ellis, who used Cassandra extensively as a Rackspace employee and went on to co-found DataStax, a company that supports Cassandra for corporate clients, in 2010.

Today Cassandra is the 11th most popular database in the world, according to the site DB-Engines. Apple, Netflix, Instagram, and Uber are all users and contributors to the project.

Facebook was also an early contributor to the open-source data-crunching platform Hadoop, which became almost synonymous with big data. Much of the early development of Hadoop, which was based on papers published by Google, was done by Yahoo. But Facebook was one of the first companies outside of Yahoo to adopt Hadoop and contribute additional tools for the platform. Hadoop spawned multiple startups like Cloudera, which was co-founded by former Facebook research scientist Jeff Hammerbacher.

Facebook has invested heavily in artificial intelligence research in recent years to make more use of its data, and it's published some of that work too. In 2015, the company open sourced implementations of some of its AI algorithms for use with a popular AI platform called Torch, nearly a year before Googleopened up its AI engine TensorFlow. Facebook went on to fund the development of a variant of Torch called PyTorch, which is now the third-most-popular AI framework, according to an analysis by data scientist Jeff Hale.

Opening the Data Center

It wasn't enough for Facebook to build software that could handle millions of users. The company also had to design the computers and buildings to manage all that data.

Along the way, Facebook came up with some unusual ideas, ranging from"open air" data centers that use outside air for cooling rather than industrial cooling systems, to "modular" servers that enable you to quickly swap out processors and other components.

Facebook released all of these designs as part of the Open Compute Project, which is now an independent organization. Facebook faced skepticism when it announced Open Compute in 2011. Though open source software was already well established by that point, it wasn't clear if Facebook's idiosyncratic ideas would be useful to other companies. But soon enough, vendors like the Taiwanese company Quanta began selling computers based on Facebook's designs, and others including Rackspace, Microsoft, and Apple contributed their own hardware designs to the initiative.

Today, Facebook is working with telecommunications companies like Ericsson and Deutsche Telekom on the Telecom Infra Project to help them build new open source telecommunications infrastructure, including a long-range antenna system called ARIES and a system for connecting cell towers wirelessly called Terragraph.

Completing the Puzzle

For most of its first decade, Facebook’s most widely used open source contributions were these sorts of behind-the-scenes infrastructure. Netflix might have used Cassandra to manage your information in a data center, but that didn't mean you would interact with Facebook code on its website. That started to change in 2013, when Facebook released React, a "library" of open source code that Facebook and now many others use to build web interfaces that look and feel like native apps.

React took some time to catch on, but in recent years it's become the most widely used library for building "front-end" applications, surging past Google's framework Angular. Airbnb, Netflix, and Walmart all use React.

"In 2015 I noticed that quite suddenly my friends in San Francisco started dropping tools like jQuery and Angular in favor of using React, and they swore by it," says Quincy Larson, founder of the programming education siteFreeCodeCamp.

That probably has something to do with the release of React Native in 2015. React Native enables developers to build native applications for Android and iOS using React, meaning that they can use the same code for both web and mobile apps.

Facebook wasn't the first to offer tools for building mobile apps using web technologies, nor was it the first to offer open source libraries for building web applications. But combining the two ideas set it apart says Greg Raiz, the chief innovation officer at consulting company Rightpoint. "I think it's just a holistic story," he says. "It helped complete the puzzle."

 

原文链接:https://www.wired.com/story/how-facebook-has-changed-computing/

还不够爽?来CDEC吧! 点击

扩展链接

这有更多Facebook相关、专家、协会、CEO现场讲解行业和趋势,限时免费报名哦!

(3月5日后门票298元)




版权声明:

凡本网注明”来源:中国软件网(http://www.soft6.com)”的所有作品,版权均属于中国软件网或昆仑海比(北京)信息技术有限公司,未经本网书面授权,不得转载、摘编或以其它方式使用上述作品。

任何行业、传播媒体转载、摘编中国软件网(http://www.soft6.com)刊登、发布的产品信息及新闻文章,必须按有关规定向本网站载明的相应著作权人支付报酬并在其网站上注明真实作者和真实出处,且转载、摘编不得超过本网站刊登、转载该信息的范围;未经本网站的明确书面许可,任何人不得复制或在非本网站所属的服务器上做镜像。

本网书面授权使用作品的,应在授权范围内使用,并按双方协议注明作品来源。违反上述声明者,昆仑海比(北京)信息技术有限公司将追究其相关法律责任。