Predict ball-by-ball outcome of a match given teams as input IPL cricket match prediction by simulating ball-to-ball outcomes using K-means clustering and collaborative filtering, where the dataset is constructed by web-scraping, stored on Hadoop and processed using MapReduce. Given two teams with their batting and bowling order, we predict the scores for the 2 teams and determine the winner.