Typical use cases
The typical use case for each of these tools is rather simple: data is here, it needs to be moved there. The rest is just details. While the classic uses of these technologies are ETL, master data management, and asynchronous processing, they should also be considered for any application that needs to move and transform data in places where simple log shipping or replication will not meet the need or does not provide all the functionality required (for example, diverse data sources).
While each of these tools can be extended to most data-movement scenarios, there are times when one is served better with other tools. The classic case of the need for an Enterprise Service Bus (ESB) application or the need to move data through a workflow, would be good examples of business needs where other technologies might be better suited. There are also industry-specific applications offered by Microsoft that may better fit a need. For example, Microsoft Amalga is designed to handle message...