Distributed Computing

Distributed computing system is basically a collection of processors interconnected by a communication network in which each processor has its own local memory and other peripherals and the communication between any two processors takes place by message passing over the communication network. For a particular processor, its own resources are local, whereas the other processors and their resources are remote. Together, a processor and its resources are usually refereed to as a node or site or machine of the distributed computing  

Data Intense Application

A program or computer system that handles large quantities of data and extremely repetitive tasks. In the context of web application a data intense application may need to connect to various data centers to fetch required data during a computation. 
Applications such as Ticketing systems are examples of data intense applications. 

MapReduce Algorithm


MapReduce is a patented software framework introduced by Google to support distributed computing on large data sets on clusters of computers.The framework is inspired by map and reduce functions commonly used in functional programming although their purpose in the MapReduce framework is not the same as their original forms. MapReduce libraries have been written in C++, C#, Erlang, Java, Ocaml, Python, Ruby, F#, R and other programming languages.( Source)

Virtual Machine

virtual machine (VM) is a software implementation of a machine (i.e. a computer) that executes instructions like a physical machine (wikipedia)A self-contained operating environment that behaves as if it is a separate computer. For example, Java applets run in a Java virtual machine (VM) that has no access to the host operating system


This design has two advantages:

  • System Independence: A Java application will run the same in any Java VM, regardless of the hardware and software underlying the system. 
  • Security: Because the VM has no contact with the operating system, there is little possibility of a Java program damaging other files or applications. The second advantage, however, has a downside. Because programs running in a VM are separate from the operating system, they cannot take advantage of special operating system features. ( Source)

Vertical Cloud

In the business parlance vertical means a specific domain. For instance in software industry one speaks of banking as a vertical. By vertical we mean specific industry. Insurance, petroleum are some other examples of vertical.  In cloud computing, vertical clouds are defined as follow. 
  
A vertical cloud, or vertical cloud computing, is the phrase used to describe the optimization of cloud computing and cloud services for a particular vertical  is specific use application. The cloud provider will offer specialized functions and options that best meet industry-use and specifications. Today, the vertical health-care cloud is one of the more well-established vertical clouds.