Integration
Overview
An integration is a means of connecting multiple systems, applications and/or databases with one another. They allow for data exchange and collaboration without the need for swivel-chairing between tools.
Types of Integrations
With regard to Salesforce there are a few types that you may encounter: Data, Application, Real-Time and Batch.
Data
The focus is the transformation of data To and From Salesforce to other external data sources, databases and/or systems. Through consolidation and transformation, you are helping to provide a unified view in one system.
Application
Focusing on connecting multiple applications and systems together in a seamless manner. This allows not only data, but processes as well, to flow bi-directionally, to increase efficiency and collaboration. You may see Application connections built with a Service Oriented Architecture (SOA). This makes the integration durable and reusable.
Real-Time
More of a method than a type, Real-Time integrations sync data between systems, databases, applications etc. with minimal delay. This type requires a bit more ground work to ensure success, but allows for real time analytics and decision making, immediate response to service requests and response to events.
Generally speaking real-time versions are seen in payment processing, inventory management and monitoring systems. Real-Time connections are often event driven in nature, meaning something is listening/looking for a change and when it occurs the data is processed via the integration.
Batch
Again, more of a method than a type, Batches sync mass amounts of data in scheduled intervals. They remove load on continuous system processing and are most useful when real time updates are NOT needed.
Batches find success when data can be gathered over a period of time and kicked off during non-peak business hours.
Integration Tooling
Implementing Integrations can come in a variety of ways. Some of the most common are through API’s. API’s come in many flavors, REST, SOAP, Batch etc, that all have a particular use case they function best in.
Middleware, like Mulesoft, performs as an API, but is “drag and drop” configurable, meaning you can have a 0 code project.
ETL Processes allow you to “Extract, Transform and Load” (just as the name implies), granting some flexibility into how data changes between systems.
Applications like Tableau use integrations into Salesforce to extract data and provide advanced analytics capabilities.
The best way to determine your tooling needs is to determine your integration case, define your security model, and evaluate your options from there.