One of the major advantages of online methods is that updates are performed on a much more fine-grained basis-it is often the case that online methods converge faster than batch methods, particularly on larger data sets.
online methods have the disadvantage of being harder to implement (they often must be implemented inside the decoder, whereas batch methods can be separate), and also generally being less stable (with sensitivity to the order in which the training data is processed or other factors).