There are different approaches to putting models into productions, with benefits that can vary dependent on the specific use case. Take for instance the use case of churn prediction. There is value in having a static value already that can easily be looked up when someone calls a customer service centre. However, there is some extra value that could be gained if for specific events, the model could be re-run with the newly acquired information.
There is generally different ways to both train and serve models into production:
Train: one off, batch and real-time/online training
Serve: Batch, Realtime (Database Trigger, Pub/Sub, web-service, in App)
Deployment is the method by which one integrates a machine learning model into an existing production environment to make practical business decisions based on data. It is one of the last stages in the machine learning life cycle. Also, it can be one of the most cumbersome stages at times. We have used both techniques – train as well as serve while deploying ML models in the past as per the project scope.