Welcome!

@DXWorldExpo Authors: Liz McMillan, Yeshim Deniz, Pat Romanski, Zakia Bouachraoui, Elizabeth White

Related Topics: @DXWorldExpo, Containers Expo Blog, @CloudExpo

@DXWorldExpo: Article

Testing #BigData Applications | @CloudExpo @YourZephyr #AI #Analytics

Big Data applications are used for everything from targeting retail customers to bringing new pharmaceuticals to market quicker

Big Data applications are used for everything from targeting retail customers to bringing new pharmaceuticals to market more quickly. As their name suggests, they are built to acquire, sort and put to use vast sets of information, whether the data points are historical sales figures for a product, results of clinical trial simulations or details in an online dating profile.

There are plenty of freely available tools out there for building Big Data applications, most notably Apache Hadoop, which supports distributed storage and processing using commodity hardware. Partnerships between companies like Intel - the chipmaker has worked on Big Data frameworks such as its Trusted Analytics Platform, available on Rackspace and Amazon Web Services - and Cloudera, a company that specializes in Hadoop, have also made it easier for organizations to build Hadoop applications in recent years.

"Hadoop helps here with its HDFS (Hadoop Distributed File System), which lets you store a large amount of data on a cloud of machines," explained Vasu Swaminathan, director of quality engineering for Aspire Systems, in a blog post. "On top of HDFS, Hadoop provides an API to process the stored data which is Map Reduce. The idea is since the data is stored in a distributed manner across nodes, it can be processed well in that manner where each node can process the data stored on it instead of getting hit by performance degradation issues by moving it over the network."

So, "how do I build a Big Data application? is becoming an easier question to answer. But what about "how do I test a Big Data application?" That one is harder to deal with. Since these programs go beyond the capabilities and infrastructures that underpin typical pieces of PC or mobile software, they require a unique, scalable approach to testing.

Requirements and Tips for Testing a Big Data Application
Many so-called "Big Data applications" can be categorized as one of the following:

  • A data warehouse (DWH), which can be a federated physical or logical repository that collects data from a variety of sources (just like a literal warehouse may contain items from all over). DWH programs only work with structured data, and use batch processing to handle it. They are typically built on relational databases such as Oracle.
  • A Big Data storage system, which has fewer limitations and can accept more types of data. Such an application could process streaming data, unstructured data, etc. It might have a capacity well into the petabytes, whereas a DWH would only reach into the neighborhood of gigabytes or terabytes. It is built on a filesystem like HDFS.

Both types can be set up to work with items such as web search queries, medical records, video archives and documents of different kinds. The goal of testing these applications is largely to validate all of this information. In a widely read Quora answer on this topic, Parul Gangwar explained that there are four Vs of the data in question to look out for here: variety, volume, velocity and value.

Gauging these metrics and verifying the data as a whole is usually done through performance and functional testing. A few things to note along the way:

  • An early step is to make sure that the right data has been pulled into the system in the first place. Source data may be compared to what's actually in the Hadoop cluster.
  • Business logic may be evaluated on each node to verify that Map Reduce is working for the application.
  • Finally, the output of the application may be checked for corruption as well as application of the correct transformational rules.
  • Hadoop architectures may also be subjected to failover testing to make sure that they can hold up even under the heavy workloads that they are regularly saddled with.
  • The system should also be checked for basic capabilities such as its throughput and how well its subcomponents perform at tasks such as indexing messages.

Properly testing a Big Data application is helped by having knowledge of a variety of tools, frameworks and programming languages, everything from Java to Jenkins. An enterprise test management system is also valuable for its real-time capabilities when vetting Big Data applications.

Given the vast scale of Big Data programs, automation is particularly important during the building and testing phases. It helps improve and streamline software testing processes so that DevOps teams can move more quickly to validate the data throughout the application.

"[T]est automation can be a good approach in testing Big Data implementations," Swaminathan explained at the end of his post. "Identifying the requirements and building a robust automation framework can help in doing comprehensive testing. However, a lot would depend on how the skills of the tester and how the Big Data environment is set up."

More Stories By Sanjay Zalavadia

As the VP of Client Service for Zephyr, Sanjay Zalavadia brings over 15 years of leadership experience in IT and Technical Support Services. Throughout his career, Sanjay has successfully established and grown premier IT and Support Services teams across multiple geographies for both large and small companies.

Most recently, he was Associate Vice President at Patni Computers (NYSE: PTI) responsible for the Telecoms IT Managed Services Practice where he established IT Operations teams supporting Virgin Mobile, ESPN Mobile, Disney Mobile and Carphone Warehouse. Prior to this Sanjay was responsible for Global Technical Support at Bay Networks, a leading routing and switching vendor, which was acquired by Nortel. He has also held management positions in Support Service organizations at start-up Silicon Valley Networks, a vendor of Test Management software, and SynOptics.

Comments (0)

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.


DXWorldEXPO Digital Transformation Stories
Cloud computing delivers on-demand resources that provide businesses with flexibility and cost-savings. The challenge in moving workloads to the cloud has been the cost and complexity of ensuring the initial and ongoing security and regulatory (PCI, HIPAA, FFIEC) compliance across private and public clouds. Manual security compliance is slow, prone to human error, and represents over 50% of the cost of managing cloud applications. Determining how to automate cloud security compliance is critical...
Enterprises have taken advantage of IoT to achieve important revenue and cost advantages. What is less apparent is how incumbent enterprises operating at scale have, following success with IoT, built analytic, operations management and software development capabilities - ranging from autonomous vehicles to manageable robotics installations. They have embraced these capabilities as if they were Silicon Valley startups.
"MobiDev is a Ukraine-based software development company. We do mobile development, and we're specialists in that. But we do full stack software development for entrepreneurs, for emerging companies, and for enterprise ventures," explained Alan Winters, U.S. Head of Business Development at MobiDev, in this SYS-CON.tv interview at 20th Cloud Expo, held June 6-8, 2017, at the Javits Center in New York City, NY.
The Internet of Things is clearly many things: data collection and analytics, wearables, Smart Grids and Smart Cities, the Industrial Internet, and more. Cool platforms like Arduino, Raspberry Pi, Intel's Galileo and Edison, and a diverse world of sensors are making the IoT a great toy box for developers in all these areas. In this Power Panel at @ThingsExpo, moderated by Conference Chair Roger Strukhoff, panelists discussed what things are the most important, which will have the most profound e...
As IoT continues to increase momentum, so does the associated risk. Secure Device Lifecycle Management (DLM) is ranked as one of the most important technology areas of IoT. Driving this trend is the realization that secure support for IoT devices provides companies the ability to deliver high-quality, reliable, secure offerings faster, create new revenue streams, and reduce support costs, all while building a competitive advantage in their markets. In this session, we will use customer use cases...
Bill Schmarzo, author of "Big Data: Understanding How Data Powers Big Business" and "Big Data MBA: Driving Business Strategies with Data Science," is responsible for setting the strategy and defining the Big Data service offerings and capabilities for EMC Global Services Big Data Practice. As the CTO for the Big Data Practice, he is responsible for working with organizations to help them identify where and how to start their big data journeys. He's written several white papers, is an avid blogge...
When talking IoT we often focus on the devices, the sensors, the hardware itself. The new smart appliances, the new smart or self-driving cars (which are amalgamations of many ‘things'). When we are looking at the world of IoT, we should take a step back, look at the big picture. What value are these devices providing. IoT is not about the devices, its about the data consumed and generated. The devices are tools, mechanisms, conduits. This paper discusses the considerations when dealing with the...