The image DSDecs.gif shows how to decide which type of data source to use.
If you do not require JTA, use a native data source.
If you require JTA (for example, EJB) and you require two-phase commit, use a non-emulated data source.
If you require JTA (for example, EJB) and you do not require two-phase commit, use an emulated data source.
End of description.