Intégration de Salesforce et Heroku à Heroku Connect
Objectifs de formation
Une fois cette unité terminée, vous pourrez :
- Décrire l’architecture d’Heroku Connect
- Exliquer comment intégrer Salesforce et Heroku avec Heroku Connect
Heroku Connect
Vous pouvez utiliser Heroku Connect pour la réplication des données et les proxies de données. Heroku Connect est utilisée conjointement à la base de données hors-pair Heroku Postgres. Vous pouvez répliquer des données depuis et vers Salesforce dans cette base de données SQL, ou les traiter par proxy depuis la base de données Heroku Postgres vers Salesforce en utilisant Salesforce Connect, que nous présentons dans l'unité suivante.
La réplication des données avec Heroku Connect peut être unidirectionnelle, de Salesforce vers Heroku Postgres, ou bidirectionnelle. La réplication de données de Heroku Postgres vers Salesforce peut être configurée avec une latence très faible, mais pas en temps réel. Vous pouvez contrôler la latence en spécifiant un intervalle, ou opter pour une actualisation sur demande suite à des changements de l’API Salesforce Streaming.
Comme Heroku Connect utilise Heroku Postgres, toutes les fonctionnalités standard de base de données sont disponibles avec les données répliquées. Par exemple, Dataclips (une fonctionnalité Heroku Postgres) fournit une méthode aisée d’interrogation des données et de partage des requêtes via le Web ou avec des formats de type CSV.
Heroku Connect est souvent employée dans les applications entreprise à consommateur qui utilisent et peuvent modifier des données stockées dans Salesforce. Supposons que vous avez un catalogue de chapeaux de fête unicornes gonflables stocké dans Salesforce et que vous souhaitez l'afficher dans un site Web public. Heroku Connect facilite ce processus en répliquant les données des produits dans une base de données Heroku Postgres à laquelle le site Web public peut aisément accéder. Le site public peut être créé avec diverses technologies de source ouverte, notamment Node.js, Java ou PHP. Avec Heroku Connect, l'interface vers les données est un simple SQL standard.
Ce cas d'utilisation en lecture seule est courant, mais la mise à jour des informations dans Salesforce est également aisée. Par exemple, si le site Web public des produits autorise les utilisateurs à « aimer » un produit, cette information peut être stockée dans Salesforce pour aider l'équipe commerciale de support et les initiatives marketing.
Premiers pas avec Heroku Connect
Si vous avez un samedi soir de libre, vous pouvez également explorer la documentation détaillée de Heroku Connect pour aller plus loin. En réalité, n'importe quel soir de la semaine convient aussi.
Heroku Connect est un complément Heroku. Par conséquent, il peut être aisément provisionné et configuré via le tableau de bord Heroku. Pour configurer Heroku Connect, vous vous authentifiez à une instance Salesforce en utilisant OAuth et autorisez Heroku Connect à passer des appels d'API en votre nom. Heroku Connect utilise cette connexion d'API pour synchroniser les données entre Salesforce et la base de données Heroku Postgres.
Après avoir provisionné Heroku Connect pour votre application Heroku, vous configurez la méthode de synchronisation et les données à synchroniser. Une fois le mappage Salesforce vers la base de données configuré, votre application peut établir une connexion à la base de données Heroku Postgres et utiliser le SQL standard pour accéder aux données.
Architecture de l'application Heroku Connect
Lors de l'utilisation d'Heroku Connect pour la réplication des données, Salesforce contrôle le schéma des données. Pour ajouter des champs à un mappage, vous personnalisez l'objet dans Salesforce, puis configurez le mappage Heroku Connect. Vous pouvez mapper de multiples objets. Vous pouvez également mapper les relations entre des objets, ce qui permet de créer des objets personnalisés dans Salesforce qui sont associés à des objets standard. Par exemple, un objet Mentions j'aime d'un produit peut associer un Contact et un Produit. Seule l'application Heroku écrit cet objet. Dans Salesforce, les utilisateurs peuvent ensuite accéder aux données pour générer des rapports ou préparer des campagnes.
Généralement, les développeurs qui utilisent des applications Heroku ont un environnement de développement local qui reflète l'environnement Heroku. Vous pouvez aisément créer le schéma Heroku Connect dans une base de données Postgres locale pour inclure l’environnement de développement. Généralement, une application de test d'intégration sur Heroku se connecte à une instance de Salesforce, ce qui permet de tester les modifications apportées par le développeur avec une base de données Heroku Connect synchronisée avant de les envoyer en production.
La connexion à une base de données Heroku Postgres synchronisée vers Salesforce avec Heroku Connect est semblable à la connexion à n'importe quelle base de données Postgres. C'est une simple base de données !
Puisque les données ont été répliquées depuis Salesforce, vous pouvez exécuter des requêtes avec Postgres autant de fois que nécessaire, mais une seule lecture est effectuée depuis Salesforce (jusqu'à ce que les données changent ou que l'intervalle d'interrogation vérifie l'existence de modifications). La base de données Heroku Postgres est exécutée très près de l'application Heroku. Par conséquent, les lectures sont extrêmement rapides avec une faible latence.
Les insertions et les mises à jour sont de simples instructions SQL standard, qui sont synchronisées vers Salesforce selon les paramètres et la planification du mappage.