中国IDC圈12月3日报道:在过去的几年里,企业已经纷纷认识到大数据中蕴藏着海量有价值的信息这一事实。供应商都开始狂热地致力于开发大数据分析新技术,如Hadoop Map/Reduce、Dryad、Spark和HBase,以便有效地将这些数据转换成有价值的信息资本。而这一趋势无疑将受益于另一种新技术的出现:软件定义的网络(SDN)。
所谓的大数据,其实大部分是非结构化的数据。虽然结构化的数据更符合传统的数据库架构,而非结构化的数据则较难处理。举个例子来说,对于视频存储数据而言。虽然视频文件的格式、文件大小、和源IP地址都是结构化数据,但视频内容本身并不适合固定长度的字段,都是非结构化的。而从大数据分析中获得的大部分有价值的数据信息均来自于非结构化数据的搜索和查询功能。例如,从视频剪辑中的成千上万张面孔中使用面部识别算法挑选出一个人。
该技术针对的是需要通过高速以太网连接的服务器上的成千上万大型集群数据进行快速有效的并行计算解析的问题。因此,大数据的智能挖掘处理过程主要包括如下三步:1)数据分割成多个服务器节点;2)并行分析每个数据块;3)合并结果。
通过连续重复这些操作,直到对整个数据集完整进行了分析。
由于这些并行计算拆分合并的性质,可以将大数据分析放置在一个具有重大的负载的底层网络。即使是采用世界上处理速度最快的服务器,数据处理速度也依然是大数据处理速度方面大瓶颈。大数据只能是尽可能快地保持与网络传输相同的速度在拆分合并阶段在服务器之间传输数据。例如,Facebook的一项跟踪研究表明,这种数据连续传输占到总运行时间的33%,而对于许多工作而言,通信阶段就超过了运行时间的50%.
通过解决这一网络瓶颈,我们可以显着加快大数据分析的步伐。其具有双重的意义:1 )更好地利用集群管理为提供基础设施的云服务提供商降低TCO;2 )更快的完成处理工作,帮助基础设施租户实现实时分析。
我们需要的是一个智能化的网络,通过每个阶段的计算,自适应的调整,以适应数据传输分割与合并阶段的带宽要求,不仅提高速度,而且还提高了带宽利用率。
SDN的作用
软件定义的网络在建立用于大数据分析的智能自适应网络方面具有巨大潜力。由于控制和数据面板的分离,SDN提供了一个良好的定义编程接口,使得智能软件编程网络是高度可定制的、具备可扩展性和灵活性,以满足大数据的需求。
SDN可以根据需求配置网络,以充分满足虚拟机计算的大小和形状要求,进而达到最佳状态。这直接解决了大数据需要大规模并行应用程序所面临的处理速度较慢的大挑战。处理速度缓慢是因为大多数虚拟机的大数据应用程序计算都花费了相当大量的时间用于等待大量数据分散聚集到达操作平台,以便可以开始处理。利用SDN,网络可以按照需求和容量规模在拆分合并操作过程中创建安全的途径,从而大大减少了等待时间,因此总的处理时间也就随之减少了。
这种软件定义的网络非常智能,基本上可以了解应用程序需要从网络上获得什么资源,以便获得更好的精度和效率提供给大数据应用程序。原因是两方面:1)存在明确的计算和通信模式,如Hadoop Split-Merge分析或Mapreduce paradigm; 2)存在一个集中的管理结构,使得利用应用程序层面对信息成为可能,例如Hadoop Scheduler或HBase Master.
借助SDN控制器所具有的底层网络状态的全局视图,智能软件可以准确地通过编程网络解析应用程序的需求。
SDN还提供了其他协助管理、整合和分析大数据的功能。新的SDN面向包括OpenFlow和OpenStack等网络协议,使网络管理更加容易,更加智能化,自动化程度更高。OpenStack使设置和配置网络元素所需的人力少了很多,OpenFlow有助于网络自动化获得更大的灵活性,以支持新的需求:如数据中心自动化、BYOD趋势、安全和应用程序加速。
从规模的角度来看,SDN在发展针对大数据的网络基础设施方面也起着至关重要的作用,便于简化管理成千上万的开关,以及增强供应商之间的互操作性,加快了网络基础建设和应用程序开发。OpenFlow协议与任何供应商的OpenFlow设备兼容,这种互操作性不会阻碍企业利用专有解决方案将大数据转化为信息资本。
鉴于大数据强大的影响力和潜在的价值越来越清晰,确保企业网络为扩展到这些新兴的需求做好准备将是一个关键性的步骤,进而确保企业的长期业务成功。很显然,一个成功的解决方案将充分利用两大关键要素:大数据应用程序所提供的存在模式和网络SDN所提供的可编程性。从这个角度来看,SDN的确是为使得网络适应更远、更快、驾驭更大知识量和保持创新的步伐做好准备过程中发挥了重要作用。
本文作者Bithika Khargharia是一位高级工程师,专注于极端网络架构和垂直解决方案。在技术研究和开发领域拥有包括曾供职于思科的超过十年的经验。Bithika在跨行业系统工程方面的经验包括绿色技术、可管理性和性能、服务器、网络和大型数据中心架构、分布式(网格)计算、自动化计算和软件定义的网络。