Query Processing for Massively Parallel Systems