Online machine learning algorithms are a class of algorithms which make decisions using historical data up to the present moment. Online machine learning algorithms are also known as streaming algorithms. Incremental training is then applied by each machine to learn one instance at a time. As new data becomes available, the algorithms do not require retraining on all data, since they continue to incrementally improve an existing model. Online algorithms have recently achieved improved efficiency over batch algorithms.
New larger scale problems have greatly increased the volume of data. Therefore, single machine solutions have been unable to provide satisfactory performance in efficient parallelization of online algorithms and still maintain accuracy.