A Hybrid MapReduce Model for Prolog
Joana Côrte-Real, Inês Dutra and Ricardo Rocha
December 2014
Abstract
Interest in the MapReduce programming model has been rekindled by
Google in the past 10 years; its popularity is mostly due to the
convenient abstraction for parallelization details this framework
provides. State-of-the-art systems such as Google's, Hadoop or SAGA
often provide added features like a distributed file system, fault
tolerance mechanisms, data redundancy and portability to the basic
MapReduce framework. However, these features pose an additional
overhead in terms of system performance. In this work, we present a
MapReduce design for Prolog which can potentially take advantage of
hybrid parallel environments; this combination allies the easy
declarative syntax of logic programming with its suitability to
represent and handle multi-relational data due to its first order
logic basis. MapReduce for Prolog addresses efficiency issues by
performing load balancing on data with different granularity and
allowing for parallelization in shared memory, as well as across
machines. In an era where multicore processors have become common,
taking advantage of a cluster's full capabilities requires the hybrid
use of parallelism.
Bibtex
@InProceedings{corte-real-isic14,
author = {J. Côrte-Real and I. Dutra and R. Rocha},
title = {{A Hybrid MapReduce Model for Prolog}},
booktitle = {Proceedings of the 14th International Symposium on Integrated Circuits (ISIC 2014)},
pages = {340--343},
editor = {Y. P. Zhang and P. K. Chan},
month = {December},
year = {2014},
address = {Singapore},
}
Download Paper
PDF file