Software-defined networking (SDN) and big data were made for each other. As the volume of data for big data analytics continues to grow, machine-to-machine communications makes perfect sense. Only computer technology can react fast enough to channel big data information to the right resources for analysis, especially as you get into real-time big data analytics. So how do you choose the SDN solutions that are best for big data applications?
Like big data, the SDN market is booming. From $1.5 billion in sales in 2013, the SDN market is expected to reach $35.6 billion by 2018. The three factors that are driving demand for SDN are cloud computing, mobile computing, and, of course, big data. To make the most of SDN, you need to understand how it works in a symbiotic relationship with big data.
The Benefits of SDN
What SDN brings to enterprise networking is a dynamic, adaptable, manageable, and cost-effective way to handle data traffic, making it ideal for high-bandwidth applications like big data. The basic concept of SDN is that the network controls are abstracted from the lower network functions so applications and network services are abstracted, which means that network control becomes programmable. SDN offers a number of advantages for dynamic enterprise applications:
- It’s directly programmable because network control is decoupled from packet forwarding.
- It’s agile, allowing administrators to dynamically adjust traffic flow throughout the network.
- It can be automated so network administrators can configure and secure network resources quickly using automate SDN programs.
- It’s vendor-neutral, since SDN uses open standards, primarily the OpenFlow™ protocol. This simplifies network design since network instructions are delivered by the SDN controllers, rather than vendor devices.
Why SDN Makes Sense for Big Data
Using SDN for big data applications makes sense largely because of the way big data applications handle information.
Much of big data analytics consist of unstructured data – video, audio, text, email, and other content that can’t be processed using conventional database systems. A video feed, for example, has structured data such as file type, size, IP source, etc.; the content itself doesn’t have fixed field lengths. To query this data efficiently, big data uses parallel processing spread across multiple clusters. Big data intelligence is derived from three basic steps: 1) split the data across servers, 2) analyze each data block, and 3) merge the results.
This type of query requires a lot of bandwidth to handle distributed data. Since SDN decouples the control and data planes, the network becomes customizable, scalable, and agile; exactly what big data analytics need. The SDN controller maintains a global view of the network so it can accurately translate big data application requirements and program the network to handle big data traffic as needed.
Hadoop big data analysis is the perfect application for SDN. The tools are available today to apply SDN to southbound applications for network management. Creating a Hadoop big data becomes more complex as you include more factors. Consider the example of a retailer whose data increases by 20 to 40 percent annually. Hadoop can manage those data stores for trends that could save the retailer hundreds of thousands of dollars, but setting up Hadoop clusters and the servers and networking to support them can take weeks. With SDN, deployment can be automated and more accurate than manual network management tools.
Any Hadoop application that requires complex data sets or needs to deliver real-time results can benefit from SDN.
Why Big Data Makes Sense for SDN
And as SDN can optimize complex Hadoop analytics, big data also can be applied to optimize SDN.
Provisioning and managing any network is labor intensive. And when you add in factors such as virtualization (which is another valuable strategy for big data) the complexities mount and the amount of labor increases.
SDN centralizes control of the network, treating the enterprise as a unified resource. With a global view, the SDN controller can be used to manage the entire network, provisioning resources as needed to control data flow and balance workloads across the network. The SDN controller provides the central management point to orchestrate all the network components.
With a centralized SDN controller you have a central management location to respond to changes in the network. The more complex those changes the harder it is to keep up using manual tools. However, if you apply big data analytics to network data traffic, big data can be used to inform the SDN controller as to what appropriate action to take in response to network changes. For example, in response to traffic conditions, the SDN controller can be instructed to set up new optimal data paths.
When you apply big data analytics to SDN you have automated network traffic management. Changing network parameters are fed into big data analytics, which then send programmed responses to the SDN controller. Voila! You have a self-healing network.
The self-healing network is the ultimate in SDN/big data convergence, but we aren’t there quite yet. However, what we do know is that SDN and big data work well together when data-intensive analytics threaten network performance. When you need real-time analytics or greater reliability, automating network response and maintaining bandwidth, using SDN is a great way to ensure big data analytics performance.