A method of managing a massively parallel processing, MPP, database performed by a coordinator node in a system comprising a plurality of data processing nodes (120, 125, 130), the coordinator node, an interconnect providing communication among the coordinator node and each of the plurality of data processing nodes (120, 125, 130), wherein each of the plurality of data processing nodes (120, 125, 130) comprises a processor and a storage for managing different rows of a table of the MPP database, wherein the table stores multiple rows and each row indicates a correspondence between a key and a data record, and the method comprising: a.) inspecting the plurality of data processing nodes (120, 125, 130) (step 310) and determining for each inspected data processing nodes, whether a frequency with which queries are directed toward the data processing node exceeds a first threshold (step 315); b.) if no in step a.), ending the method (step 340); c.) if yes in step a.), determining for each key value in the table a query frequency of querying the corresponding key value (step 320); d.) determining whether any query frequency determined in step c.) is above a second threshold (step 325); e.) if no in step d.), ending the method (step 340); f.) if yes in step d.), determining the MPP database as being skewed on at least one key value; g.) marking the table as being in an hybrid distribution mode being a combination of a hash distribution mode and a random distribution mode and identifying those keys having the query frequency above the second threshold as outlier keys (step 330); h.) determining those data processing nodes having stored the outlier keys and moving, for each determined data processing node, selected data records of rows and its corresponding key values of the rows among the data records corresponding to the outlier keys stored on the determined data processing node according to the random distribution mode to other data processing nodes among the plurality of data processing nodes (step 335). a.) inspecting the plurality of data processing nodes (120, 125, 130) (step 310) and determining for each inspected data processing nodes, whether a frequency with which queries are directed toward the data processing node exceeds a first threshold (step 315); b.) if no in step a.), ending the method (step 340); c.) if yes in step a.), determining for each key value in the table a query frequency of querying the corresponding key value (step 320); d.) determining whether any query frequency determined in step c.) is above a second threshold (step 325); e.) if no in step d.), ending the method (step 340); f.) if yes in step d.), determining the MPP database as being skewed on at least one key value; g.) marking the table as being in an hybrid distribution mode being a combination of a hash distribution mode and a random distribution mode and identifying those keys having the query frequency above the second threshold as outlier keys (step 330); h.) determining those data processing nodes having stored the outlier keys and moving, for each determined data processing node, selected data records of rows and its corresponding key values of the rows among the data records corresponding to the outlier keys stored on the determined data processing node according to the random distribution mode to other data processing nodes among the plurality of data processing nodes (step 335).