Welcome!

Microservices Expo Authors: Liz McMillan, Pat Romanski, Elizabeth White, Mehdi Daoudi, Yeshim Deniz

Related Topics: Microservices Expo, Java IoT, Containers Expo Blog, Agile Computing, @CloudExpo, Apache

Microservices Expo: Article

Big Data Analytics: Thinking Outside of Hadoop

UIMA and Hadoop in Big Data Analytics

Big Data Predictions
In the recent release of '2012 Hype Cycle Of Emerging Technologies,' research analyst Gartner evaluated several technologies to come up with a list of technologies that will dominate the future . "Big Data" related technologies form a significant portion of the list, in particular the following technologies revolve around the concept and usage of Big Data.

  • Social Analytics: This analytics allow marketers to identify sentiment and identify trends in order to accommodate the customer better.
  • Activity Streams: Activity Streams are the future of enterprise collaboration, uniting people, data, and applications in real-time in a central, accessible, virtual interface. Think of a company social network where every employee, system, and business process exchanged up-to-the-minute information about their activities and outcomes
  • Natural Language Question Answering: NLP is a technique for analysing naturally occurring texts as part of linguistic processing to achieve human like language processing.
  • Video Analytics: forming a conceptual and contextual understanding of the content of the video .
  • Context Enriched Services: Context-enriched services use information about a person or an object to proactively anticipate the user's need and serve up the content.

These areas are just representative but in general many of the emerging technologies revolve around the ability to process large amounts of data from hither to unconventional sources and extract meaning out of them.

Doing a general search on Big Data on Google, or any other technical forum, we find that Big Data is almost synonymous with Hadoop, the main reason being that  the storage and computational operations in Hadoop are parallel by design. Hadoop is highly scalable. Data can be accessed and operated upon without interdependencies until the results need to be reduced - and even the reduction itself can be performed in parallel. The result is that large amounts of data can be processed concurrently by many servers, greatly reducing the time to obtain results.

MapReduce is the basic component of Hadoop. It is a parallel programming framework that processes unordered data. All data are composed of a key and an associated value and processing occurs mainly in two phases, the Map phase and the Reduce phase.

However, careful analysis of the above technologies like Social Analyics, Video Analytics, and NLP, reveal that all of them definitely needed the massively parallel processing power of Hadoop, but they also need the level of intelligence that extracts meaningful information such that the Hadoop's Map & Reduce functions are effective to provide the required insight.

UIMA and Big Data Analytics
Hadoop in its raw form will not solve all the insight required for Big Data processing like in the technologies mentioned earlier. This is evident from the fact that most of the tutorials and examples on Hadoop Big Data Processing are about counting words or parsing text streams for specific words, etc. Naturally these examples are good from an academic perspective but may not solve the real life needs of Big Data processing and the associated insight needed for the enterprises.

UIMA stands for Unstructured Information Management Architecture. It is a component software architecture for the development, discovery, composition and deployment of multi-modal analytics for the analysis of unstructured information and its integration with search and knowledge management technologies.

The UIMA architecture supports the development, discovery, composition and deployment of multi-modal analytics, including text, audio and video.

Once the initial processors understands Video, Audio and other media documents like email and creates textual meaning out of it like the string of tokens or other patterns, these values can be parsed by various annotators of UIMA pipe line.

The parser subcomponent is responsible for converting the crawled document in its native format .

UIMA is an architecture in which basic building blocks called Analysis Engines (AEs) are composed to analyze a document and infer and record descriptive attributes about the document as a whole, and/or about regions therein. This descriptive information, produced by AEs is referred to generally as analysis results. Analysis results typically represent meta-data about the document content. One way to think about AEs is as software agents that automatically discover and record meta-data about original content.

Analysis Engines are constructed from building blocks called Annotators. An annotator is a component that contains analysis logic. Annotators analyze an artifact (for example, a text document) and create additional data (metadata) about that artifact. It is a goal of UIMA that annotators need not be concerned with anything other than their analysis logic - for example the details of their deployment or their interaction with other annotators.

An Analysis Engine (AE) may contain a single annotator (this is referred to as a Primitive AE), or it may be a composition of others and therefore contain multiple annotators (this is referred to as an Aggregate AE).

Some of the examples of Annotators could be :

  • Language Identification annotator
  • Linguistic Analysis annotator
  • Dictionary Lookup annotator
  • Named Entity Recognition annotator
  • Pattern Matcher annotator
  • Classification Module annotator
  • Custom annotators

While a detailed description of Annotators in processing unstructured data is beyond the scope of this article, you can appreciate the power of Annotator with one specific example below.

The OpenCalais Annotator component wraps the OpenCalais web service and makes the OpenCalais analysis results available in UIMA. OpenCalais can detect a large variety of entities, facts and events like for example Persons, Companies, Acquisitions, Mergers, etc.

Summary
As is evident from the above facts, frameworks like UIMA extend the Big Data processing towards much more meaningful insights and map them to real world scenarios. While the Massively Parallel Processing abilities of Hadoop will be a key factor in Big Data initiatives, it is not alone enough and frameworks like UIMA will be playing a much larger part.

More Stories By Srinivasan Sundara Rajan

Highly passionate about utilizing Digital Technologies to enable next generation enterprise. Believes in enterprise transformation through the Natives (Cloud Native & Mobile Native).

Microservices Articles
"We do one of the best file systems in the world. We learned how to deal with Big Data many years ago and we implemented this knowledge into our software," explained Jakub Ratajczak, Business Development Manager at MooseFS, in this SYS-CON.tv interview at 20th Cloud Expo, held June 6-8, 2017, at the Javits Center in New York City, NY.
Traditional IT, great for stable systems of record, is struggling to cope with newer, agile systems of engagement requirements coming straight from the business. In his session at 18th Cloud Expo, William Morrish, General Manager of Product Sales at Interoute, will outline ways of exploiting new architectures to enable both systems and building them to support your existing platforms, with an eye for the future. Technologies such as Docker and the hyper-convergence of computing, networking and...
Containers, microservices and DevOps are all the rage lately. You can read about how great they are and how they’ll change your life and the industry everywhere. So naturally when we started a new company and were deciding how to architect our app, we went with microservices, containers and DevOps. About now you’re expecting a story of how everything went so smoothly, we’re now pushing out code ten times a day, but the reality is quite different.
Gone are the days when application development was the daunting task of the highly skilled developers backed with strong IT skills, low code application development has democratized app development and empowered a new generation of citizen developers. There was a time when app development was in the domain of people with complex coding and technical skills. We called these people by various names like programmers, coders, techies, and they usually worked in a world oblivious of the everyday pri...
Using new techniques of information modeling, indexing, and processing, new cloud-based systems can support cloud-based workloads previously not possible for high-throughput insurance, banking, and case-based applications. In his session at 18th Cloud Expo, John Newton, CTO, Founder and Chairman of Alfresco, described how to scale cloud-based content management repositories to store, manage, and retrieve billions of documents and related information with fast and linear scalability. He addres...
When building large, cloud-based applications that operate at a high scale, it’s important to maintain a high availability and resilience to failures. In order to do that, you must be tolerant of failures, even in light of failures in other areas of your application. “Fly two mistakes high” is an old adage in the radio control airplane hobby. It means, fly high enough so that if you make a mistake, you can continue flying with room to still make mistakes. In his session at 18th Cloud Expo, Lee A...
While some developers care passionately about how data centers and clouds are architected, for most, it is only the end result that matters. To the majority of companies, technology exists to solve a business problem, and only delivers value when it is solving that problem. 2017 brings the mainstream adoption of containers for production workloads. In his session at 21st Cloud Expo, Ben McCormack, VP of Operations at Evernote, discussed how data centers of the future will be managed, how the p...
"Peak 10 is a hybrid infrastructure provider across the nation. We are in the thick of things when it comes to hybrid IT," explained , Chief Technology Officer at Peak 10, in this SYS-CON.tv interview at 20th Cloud Expo, held June 6-8, 2017, at the Javits Center in New York City, NY.
DevOps tends to focus on the relationship between Dev and Ops, putting an emphasis on the ops and application infrastructure. But that’s changing with microservices architectures. In her session at DevOps Summit, Lori MacVittie, Evangelist for F5 Networks, will focus on how microservices are changing the underlying architectures needed to scale, secure and deliver applications based on highly distributed (micro) services and why that means an expansion into “the network” for DevOps.
Containers and Kubernetes allow for code portability across on-premise VMs, bare metal, or multiple cloud provider environments. Yet, despite this portability promise, developers may include configuration and application definitions that constrain or even eliminate application portability. In this session we'll describe best practices for "configuration as code" in a Kubernetes environment. We will demonstrate how a properly constructed containerized app can be deployed to both Amazon and Azure ...