一只体重只有 1 到 2 毫克的蚂蚁,能绕过障碍物,快速有效地找到猎物,这足以让我们最先进的机器人深感汗颜…… 然而,尽管拥有这些明显的智慧,那些形单影只的蚂蚁也只会漫无目的地四处游荡,直到数量超过几十只时才会出现变化;与此同时,更高层次的智能也开始出现。随着数量的增加,这种转变更加惊人,数以百万计的蚂蚁可以建造拥有复杂的通风系统、下水道和回收设施的“城市”。蚂蚁是除了人类之外唯一具备大规模联合作业能力的生物,它们种植活的农作物,蓄养和役使蚜虫及其他昆虫,“榨取”它们以获得食物;蚁群会彼此交流、学习、组成团队并参与战争。
在 2019 年 5 月于巴塞罗那举行的欧洲IT Spotlight 大会上,我在 NetEvents 的主题演讲中,将蚂蚁的行为与最先进的数据中心、以及高效数字转换所需的更高级别智能进行了比较。这种动态反应的智能不应仅存在于 一个CPU、一台服务器或存储、或者网络、或者任何单一的应用程序中,更需要解决的问题是 — 将大量本地数据集在上述所有的设备中进行整体优化,以建立数据中心级计算机。就像蚁群一样,它们没有中央控制系统,却能工作的有条不紊。最新的机器学习模型就像蚁群一样,也没有单一的控制程序,在由智能网络连接、由计算和存储设备组成的数据中心内,是数据自己在驱动着所有进程。这种“深度学习”也可以与人脑媲美 — 人脑是一个由相对较小的处理元件组成的庞大网络,这些元件被称为突触,它在这个庞大网络中的移动其实就是在处理数据。
一个数据爆发的时代
作为前言,我想举一个在普通数据采集过程中出现变化的例子。2007 年,诺基亚(一家市值 1,500 亿美元的企业)决定投资新兴的汽车卫星导航市场,他们收购了 Navitech,一家在欧洲拥有约 500 万台交通摄像头的公司,他们意识到如果导航系统能与实时交通状况保持同步,将会为其带来巨大的竞争优势。同年,一家名为 Waze 的以色列公司成立,该公司的宗旨与 Navitech 相似,只不过 Waze 并非通过安装数百万个交通传感器来收集数据,而是通过每个用户手机上的应用程序来获取数据。这使 Waze 可以利用每个智能手机中的 GPS 定位芯片,收集交通流量数据并将其上传到 Waze的系统,在没有任何成本的情况下快速部署了数以千万计的交通传感器。接下来的情况就众所周知了:在五、六年的时间里,诺基亚的市值缩水至低于 Navitech 的收购价,而 Waze 则被谷歌收购。
这是一个很好的例子,反映了从向外收集数据到让数据向内涌入的根本性转变:其中的区别类似于从井中打水和汇集落在地上的雨水。在图 1 中,我们可以看到这一转变带来的一些影响,其中蓝色的“数据增长”线在 2007 年之后很快变得更加陡峭,并向上飙升;图中的直线表示摩尔定律预期的处理能力的线性增长;红线表示实际 CPU 性能的增长正在放缓,因为我们正在接近芯片的极限。但请注意,表示网络带宽的绿线与数据增长的走势几乎一致。旧时以 CPU 为核心的思维方式已开始走向没落,我们需要跳出固有思维模式 — 跳出计算机的思维定势,以解决当今企业面临的重大问题。
为了产生有用的业务价值,需要处理大量数据集,然而如今,任何单独的处理单元都无法做到这点。相反,我们需要的是优化整个栈中的计算、存储、网络和应用程序等所有元素,使它们能够协同工作以建立一个数据中心级的计算机,用整个集群来提供服务。这需要数据为机器编程,而不是由人为机器来编程。正如由数百万只蚂蚁的经验汇聚而成的大量数据将会激活和产生智能,并能建设性的进行项目开发;机器学习也是从海量物联网数据中挖掘出其意义和相关性,并创造出新的、高效的应用程序。
从群体到云
这是关于云的介绍,云的出现改变了计算的交付形式,云正在将计算从服务器转向服务。如果你家里有电,这意味着你插上了插座,获得了电力,就像打开水龙头接通水管一样。如果你家里有一台电脑,传统意义上这意味着你有一个充满计算能力的箱子,你要负责让箱子里的一切都能正常运行。但云计算让我们更接近于取电的方式,在这种模式下,计算机不再固定于办公桌上,而更像是一个插座,你可以通过它获取服务。我们需要跳出计算机的思维定势,才能理解这种变化的含义。
如果你对通信的想象仅限于用信鸽来传递信息,那么你的创造力可能会局限在一个维度上,寻找飞的更快的信鸽。但如今的视频会议带来的不仅仅是快速的沟通,它还可以使在不同位置的人同时看到和听到,甚至可以实现不同语言之间的机器翻译。因此,要在性能上实现真正的巨大突破,你需要跳出固有思维。
我们与 Oracle 合作的关于Oracle集群数据库系统的改造就是一个不错的例子。他们最初使用传统网络技术,但无论如何优化他们的系统,通信软件开销总是瓶颈,性能改进非常有限。然后,在采用了具有 RDMA(远程直接内存访问)功能的更加智能的网络后,他们终于取得了突破。使用这项技术可以消除网络开销,并使访问远程资源的成本与访问本地资源的成本相似,Oracle 利用这项技术大大提升了系统资源的效率。经过重新设计的 Oracle 系统,网络带宽从 10 Gb/s 提高到 了40 Gb/s,实现了 4 倍的提升;通过采用 RDMA 技术消除了传统的网络软件开销,他们得到的不仅是这 4 倍的速度提升,而是 50 倍的性能改进。这和更好、更高效的智能网络是分不开的。
智能网络
智能网络不仅仅是通过线缆移动数据的速度有多快,而是在网络的任何地方都变得越来越智能。秘诀就是在数据移动过程中对其进行处理。蚁群中的每只蚂蚁都会接收自身感知到的数据,以及通过嗅觉感知到来自其他蚂蚁的数据;蚂蚁自己会处理这些数据,并通过气味将自己的信号发送出去,这些信号在网络中不断级联,逐渐在蚁群被赋予了意义和普适性。同样,在我们最先进的网络产品中,每个交换机内都有计算单元,因此我们在数据移动过程中进行数据聚合。
如今,这项技术正在被用于 HPC 和机器学习。当我们对神经网络模型的多个实例中的数据集进行神经网络训练时,在单独的训练后,训练结果需要被整合,这通常需要花费与训练本身同样多的时间,分布式执行该过程可将“参数服务器”的处理速度加快 10 倍,从而将训练的时间从数天缩短到数小时,或从数周缩短到数天。我们称其为 SHARP — 可扩展分层聚合和归约协议。其它网络只会在计算单元之间移动数据,SHARP 却可以在数据通过网络时对其进行处理和计算,有效地将网络本身变成了一个功能强大的协处理器,从而显著提高应用性能。
对于存储网络,我们提供 SNAP — 基于软件定义的网络加速处理。我们的 Bluefield 智能网卡虚拟化技术可以将云中的资源模拟为的本地设备,而不再是需要在主机上更改 API 的网络设备。SNAP 支持各种基于传统操作系统的机器,它能够神奇地将各种东西转变成本地设备。因此,采用我们的智能网卡,可以调用网络中的不同机器的资源,将它们作为本地存储设备来使用,或本机上的本地存储服务来使用。我们正在与主要云厂商进行试点合作,并计划在一年后投入生产(见图 2)。
再举一个有效利用资源的例子:网络功能虚拟化(NFV)是一种强大的技术,可以通过将各种进程整合到裸金属服务器上以减少到处都是盒子,但这会使负载都集中到服务器,从应用的角度来看,这会降低数据中心的效率,因为它会消耗大量的计算资源。要解决这个问题,你可以将大部分的网络虚拟化操作卸载到智能网卡上 — SmartNIC。
这样安全吗?
但这能在不牺牲安全性的前提下实现吗?传统的数据中心主要在使用M&M 安全模型,这个模型的特色是外强内弱,主要在数据中心边缘进行保护。在云应用中,我们允许在运行我们的安全策略的同一台机器上运行不受我们控制的应用程序。一旦恶意软件在我们的计算服务器上运行,它可能会接管我们的安全策略,从而接管数据中心。就这样,整个数据中心被我们许可的在机器上运行的程序接管了。
为了保护我们的数据中心,我们必须确保攻击者和受害者不在同一台计算机上,我们需要改变安全模型,将外强内弱改为外强内也强,数据中心的每台机器都必须受到保护。
BlueField的SNAP 技术允许将安全策略运行在BlueField 卡自己的操作系统上,将其应用程序服务器分离出来。借助 BlueField,我们可以将基础架构计算和应用程序计算分层隔离。此外,我们还可以完全独立地升级计算服务器和基础架构服务器 ,互不影响。这样更安全,也更高效。
结论
我们在当下以及未来将面临的情况是:大量的非结构化数据要求机器学习的能力越老越强,将会产生超出我们想象的新应用程序。
估值达 4 万亿美元的盈利商机正等着我们攫取。而跳出计算机的思维定势将是我们面临的挑战。
文章转自Mellanox CTO Michael Kagan