Data assimilation combines observational information with numerical models to improve the model state and parameters that control model processes. It can also be used to assess model deficiencies, which is important knowledge to improve the model predictions. The most common application of data assimilation is to initialize forecasts, e.g. for weather forecasting. However, also the state and prediction of ocean models can be improved by data assimilation, for example by utilizing satellite observations of sea surface temperature or sea surface height. There are various types of ocean observational data with large quantity and poor homogeneity, which makes data assimilation a great challenge.This course introduces data assimilation techniques, especially the research progress of several data assimilation methods developed based on the two theoretical foundations of optimal control and statistical estimation, as well as the application status of these methods in scientific research.