Distributed graph processing: an approach based on overlay composition
MapReduce: simplified data processing on large clusters