Plexxi是一家软件定义网络(SDN)初创公司,提供控制器、交换机等企业网络解决方案。作为Plexxi的产品管理高级总监,Marten Terpstra最近在他的博客中详细讲述了大数据为企业网络所带来的变革,以及企业的应对方法。我们对这篇文章进行了整理,希望能够对您有所启发。
在大数据时代,人们很少谈论跟网络相关的话题,仿佛网络与大数据是风马牛不相及的两回事。事实上,网络不仅跟大数据应用息息相关,而且还发挥了非常重要的作用。但对于很多网络工程师来说,他们并没有认清这一点。
如今在一个典型的数据中心架构中,包含了大量松耦合的应用和半分布式的存储设备。一个基于Web的应用实际上是由很多组件组成的,如应用负载均衡、web服务器前端、应用后端,而且都有相应的数据库作为数据存储。这些数据库会有本地或者集中化或半分布式的物理存储设备,存储又有复制和备份的组件。所有的数据中心内部的流量都需要将正确的数据传送给应用用户。这里的用户可以是一个人,也可以是另外的一个应用。
上述这种较为传统的分布式应用,其通信方式是相对直接的,很好理解。通过基础的测量和分析工具,你就可以完整地了解到一个应用的各个组件之间的运转方式,它们之间是如何交互的以及它们需要什么样的网络环境等等。在部署应用之前,开发人员几乎不用为网络工程师提供具体的需求和指导。而在这个应用走完至少一个扩展和性能调整周期之后,基本就会形成一个固定的模式并保持下去。对于网络工程师来说,他们要做的就是确保能够为这一模式提供合理的网络连接。
然而针对大数据应用,它给我们提出了新的课题。大数据应用往往是以高度并行化的方式运行,它们部署在一个分布式系统当中,这需要在基础设施当中进行海量数据的“大挪移”.大数据应用在设计的时候,会假定数据与其消费方式都是持续分布式的,并且在一个大数据集群当中复制到各个节点。许多应用都要应对多种不同的数据分析任务。而数据集以及数据生成方式更是多种多样,因此它们对于网络的要求也会有所不同。正式基于这一点,我们就需要一个更加动态的网络环境来满足大数据应用的需求。
我们看到,如今有很多大数据应用是部署在1GbE网络上的。很多企业认为,网络根本就不叫个事儿,大数据只不过是一个计算密集型的项目。这其实是最基本的错误理解。事实上,许多大数据应用都是在处理半实时的流数据,每个数据集只需要一个相对较小的计算资源。而这些数据需要新型的连接方式,这是我们以前所没有遇到过的。
上周我跟一个Ad Tech的工程师聊,这是一家发展速度非常快的企业,提供市场营销与广告相关的技术解决方案。他目前管理了一个大数据集群,其中有200台物理服务器,使用了市场中最高端的网络交换机。在开放一半的可用端口之前,网络堵塞问题就已经非常严重了。这个集群中,机架间需要每秒钟传输700GB甚至1TB的流量。说实话,市面上很少有网络设备能够应对这样的需求。
有人会说,多加带宽不就完了嘛。而Ad Tech公司的这个案例,恰恰印证了我们所说的,企业在处理这样的应用需求时需要重新思考他们的网络架构。传统的思路已经不能跟支持新的应用和新的需求了。应用在发生变化,服务器、存储以及它们的工作方式也在发生变化,网络工程师需要积极拥抱这种变化。
但惧怕或者逃避不能解决任何问题,不管你喜不喜欢,该来的总归要来。网络工程师要尽最大努力理解它们的需求,摆脱传统思维的束缚,然后思考什么样的网络能够解决这些问题。因为网络在其中起到了非常重要的作用,它对大数据应用的性能会产生巨大影响。