Apache Giraph is an iterative graph processing system built for high scalability. Giraph adds several features beyond the basic Pregel model, including master computation, sharded aggregators, edge-oriented input, out-of-core computation, and more. Giraph is a natural choice for unleashing the potential of structured datasets at a massive scale.
Apache Spark is an open-source cluster computing framework. Spark uses in-memory primitives which makes performance up to 100 times faster in contrast to Hadoop's two-stage disk-based MapReduce paradigm.Spark is a real time large data processing system that can use primary memory very effectively.
Hadoop MapReduce is a software framework for distributed processing of large data sets on compute clusters of commodity hardware. MapReduce takes care of scheduling tasks, monitoring them and re-executing any failed tasks.Main feature of MapReduce is the Batch processing of large volumes of data on secondary storage.