Integrar Salesforce y Heroku con Heroku Connect
Objetivos de aprendizaje
Después de completar esta unidad, podrá:
- Describir la arquitectura de Heroku Connect.
- Explicar cómo integrar Salesforce y Heroku con Heroku Connect.
Heroku Connect
Puede utilizar Heroku Connect para la replicación de datos y los proxies de datos. Heroku Connect se utiliza en conjunción con la increíble base de datos Postgres de Heroku. Puede replicar datos de Salesforce de forma bidireccional en esta base de datos SQL, o puede hacer de proxy desde la base de datos Postgres de Heroku en Salesforce utilizando Salesforce Connect, que trataremos en la siguiente unidad.
La replicación de datos con Heroku Connect puede ser en una dirección, de Salesforce a Heroku Postgres o bidireccional. La replicación de datos de Heroku Postgres a Salesforce se puede configurar para su ejecución con un nivel de latencia mínimo, pero no en tiempo real. Tiene la opción de controlar la latencia mediante un intervalo especificado. Otra alternativa es un sondeo a petición en respuesta a los cambios de la API de transmisión de Salesforce.
Debido a que Heroku Connect utiliza la base de datos Postgres de Heroku, todas las funciones estándar de bases de datos están disponibles con los datos replicados. Por ejemplo, Dataclips (una función de Heroku) proporciona una manera sencilla de consultar los datos y compartir las consultas a través de la Web o con formatos como CSV.
Un uso común para Heroku Connect es las aplicaciones de negocio a consumidor que utilice y cambie potencialmente datos almacenados en Salesforce. Suponga que tiene un catálogo de productos de sombreros de fiesta hinchables con forma de unicornio almacenado en Salesforce y desea un sitio web público para mostrar ese catálogo. Heroku Connect facilita eso replicando los datos de los productos en una base de datos Postgres de Heroku de modo que el sitio público puede acceder fácilmente a los datos. El sitio público podría construirse con una variedad de tecnologías de código abierto, como Node.js, Java o PHP. La interfaz a los datos con Heroku Connect es simplemente SQL estándar.
Este caso de uso de solo lectura es común, pero las actualizaciones de vuelta en Salesforce son también sencillas. Por ejemplo, si el sitio web público de productos permitiera a los usuarios darle a "Me gusta" a un producto, esa información podría guardarse en Salesforce para asistir en las ventas back-office y los esfuerzos de marketing.
Información general sobre Heroku Connnect
Puede profundizar en la documentación sobre Heroku Connect detallada para obtener más información cuando tenga una noche de sábado libre. En realidad, vale cualquier noche.
Heroku Connect es un complemento de Heroku, de modo que es fácil de aprovisionar y configurar mediante el tablero Heroku. Para configurar Heroku Connect, usted se autentica en una instancia de Salesforce empleando OAuth y permitiendo que Heroku Connect realice llamadas de API en su nombre. Heroku Connect utiliza esta conexión de API para sincronizar los datos entre Salesforce y la base de datos Postgres de Heroku.
Después de aprovisionar Heroku Connect para su aplicación Heroku, usted configura cómo y qué datos se sincronizan. Después de configurar la asignación de Salesforce a la base de datos, su aplicación puede realizar una conexión con la base de datos Postgres de Heroku y utilizar SQL estándar para acceder a los datos.
Arquitectura de aplicaciones para Heroku Connect
Cuando utiliza Heroku Connect para la replicación de datos, Salesforce posee el esquema de los datos. Para agregar campos a una asignación, usted personaliza el objeto en Salesforce y luego configura la asignación de Heroku Connect. Puede asignar múltiples objetos. También puede asignar relaciones entre objetos, lo que le permite crear objetos personalizados en Salesforce que están relacionados con objetos estándar. Por ejemplo, un objeto Me gusta de Productos podría reunir un Contacto y un Producto. Solo la aplicación Heroku podría escribir en este objeto. Los usuarios de back-office en Salesforce luego pueden acceder a los datos para la creación de reportes y campañas.
Normalmente, los desarrolladores que trabajan en aplicaciones Heroku tienen un entorno de desarrollo local que refleja el entorno en Heroku. Puede crear fácilmente el esquema de Heroku Connect en una base de datos Postgres local para que autocontenga el entorno de desarrollo. Una aplicación de prueba de integración en Heroku normalmente conecta con una instancia de Salesforce de modo que los cambios de ese desarrollador puedan probarse en una base de datos sincronizada de Heroku Connect antes de trasladarlos a producción.
La conexión con una base de datos Postgres de Heroku que está sincronizada con Salesforce con Heroku Connect no presenta diferencia a conectar con cualquier otra base de datos Postgres. ¡Es solo una base de datos!
Debido a que los datos se replicaron desde Salesforce, puede ejecutar consultar numerosas veces en Postgres, pero solo se realiza una lectura desde Salesforce (hasta que cambien los datos o el intervalo de sondeo compruebe si hay cambios). Debido a que la base de datos Postgres de Heroku se ejecuta muy cerca de la aplicación Heroku, las lecturas son increíblemente rápidas con baja latencia.
Las inserciones y actualizaciones son todas declaraciones SQL estándar y se sincronizan con Salesforce según la configuración y la programación de la asignación.