PDF de programación - Integración de Salesforce y Pentaho

Imágen de pdf Integración de Salesforce y Pentaho

Integración de Salesforce y Pentahográfica de visualizaciones

Actualizado el 13 de Noviembre del 2018 (Publicado el 9 de Julio del 2018)
634 visualizaciones desde el 9 de Julio del 2018
570,7 KB
20 paginas
Creado hace 12a (27/09/2011)
Documento Técnico



Integración de Salesforce y Pentaho



Fecha creación: 27/09/2011

[email protected]

www.stratebi.com – www.todobi.com



1



1. Integrando SalesForce Cloud usando Pentaho Data

Integration (Kettle)



En tiempos de crisis el mercado se encuentra estancado por regla general,
y esa gran “tarta” debe ser repartida cada vez por más compañías (empresas
industriales, proveedores de servicio…). Para que una empresa logre sus
objetivos, debe ser más competitiva que nunca, y ahí entra lo que se conoce
como “toma de decisiones corporativa".

La mayoría de compañías toman decisiones lentas, previsibles y basándose
en formulas, en ocasiones intangibles y que no reflejan la realidad de su
negocio. Como se puede intuir entonces, uno de los secretos en la toma de
decisiones, son los datos en los que se basa, por lo que cuanta más muestra y
variedad de datos se tenga, más fina y acertada será nuestra respuesta al
mercado.

Será entonces, una buena práctica integrar progresivamente nuevas
fuentes en nuestro datawarehouse/datamart. Un proyecto por lo general
extrae datos de; BBDD de negocio, ERPs, Redes Sociales, Excels, Ficheros
Planos, web logs, web services, CRMs…y en el caso particular que nos atañe,
nos detendremos en estas dos últimas, que pueden ser englobadas
perfectamente dentro del mayor exponente de CRM en la nube hoy en día,
SalesForce.

En el artículo se refleja brevemente algunas experiencias adquiridas
durante algunos de nuestros proyectos en el ámbito de la integración de datos
con este origen tan peculiar, “SalesForce Cloud”.



2




2. Breve introducción sobre Cloud Computing.



Cloud Computing, como su propio nombre indica, es una disciplina de
computación distribuida que se basa en que la mayor parte del hardware y
software este en la nube, es decir, fuera de nuestra compañía.


Todo el hardware y software se ofrece como servicio, de manera que
las compañías “alquilan” lo que estrictamente necesitan. A continuación se
enumeran algunas de sus ventajas:


- Prestación y acceso a servicios mundialmente.
-
- Actualizaciones totalmente transparentes al usuario y a

Implementación de las aplicaciones más rápida.

las

aplicaciones.

- Uso eficiente de recursos y energía.
- Ahorro de costes en licencias e infraestructuras.


Toda esta oferta y posible demanda de servicios se lleva a cabo por

medio del paradigma orientado a servicios SOA
(Service Oriented
Architecture), que intenta eclipsar a anteriores como el Orientado a Objetos.


Y la pregunta es; ¿Qué es un servicio? Un servicio es un reflejo de un
proceso de negocio, una abstracción para aplicaciones organizativas de gran
escala (P. Singh) orientada a interactuar. Este paradigma trata aspectos como
que los servicios deben ser dirigidos por eventos, es decir, los procesos de
negocio no pueden ser diseñados asumiendo a priori el flujo de eventos sino
que deben de ser diseñados dinámicamente, con asincronismo, proveyendo
ciertas paradas en el proceso y su posible continuidad. Las características
básicas de un servicio son:


- Disponible en Internet y/o Intranets.
- Utiliza un sistema estándar de mensajería.
- Es independiente del lenguaje de programación y del sistema

operativo.

- Es Auto-descriptivo vía una gramática XML.
- Descubrirle vía un mecanismo simple de búsqueda.

La pila de protocolos de un servicio web se puede representar como
sigue:



Descubrimiento – UDDI: Esquemas XMl cuyo objetivo es describir empresas
y servicios web
Descripción – WSDL: Lenguaje común para describir servicios web,
permitiendo al cliente localizar un servicio web e invocar sus funciones
públicas
Mensajería XML– XML-RPC, XML, SOAP. Nos centraremos en SOAP ya que es



3

el más extendido, posibilitando el intercambio de información en formato
XML. La transmisión de información se basa en la infraestructura de correo
electrónico de Internet, por ello, un mensaje SOAP se puede definir como
un fichero XML que sigue la RFC 2822 para mensajes de correo electrónico
Transporte – HTTP, SMTP, FTP, BEEP



Los tipos de servicios disponibles en la nube, pueden ser clasificados en



las siguientes

tres capas:



IaaS (“Infraestructure as a Service”): Es la capa de más bajo
nivel, en ella se encuentran compañías como Amazon, con su
AWS (Amazon Web Services), alquilando infraestructuras con
un bajo coste y alta disponibilidad. Se pueden alquilar
productos como:

-



o BBDD relacionales.
o Almacenamiento.
o VPNs.
o Servicios de computación (máquinas)
o Clustering.



- PaaS (“Platform as a Service”): Esta capa ofrece una
encapsulación sistema+entorno de desarrollo, por ejemplo
una maquina Linux, con conexión de red al exterior, con una
bbdd mysql y con un apache montado, con el objetivo, por
ejemplo, de hospedar la web corporativa. Un ejemplo de este
caso es Google App Engine, que ofrece un entorno de
desarrollo de GWT donde podemos compilar, probar y
ejecutar aplicaciones web en la infraestructura de Google, es
decir, no necesitas ningún servidor para que tus usuarios
puedan comenzar a usar las aplicaciones desarrolladas, tan
sólo, sube la aplicación a Google, proporciónale el nombre de

4

dominio y comparte tu aplicación con el mundo o limítalo a
usuarios de tu organización.


- SaaS (“Software as a Service”): Se corresponde con la capa
más alta de los servicios en la nube, y en la que se ofrecen
software como servicio, un ejemplo, es Windows, con su
Windows 365, ofreciendo todas las funcionalidades de la suite
MS Office a través de servicios web. Otro ejemplo que en este
articulo no puede dejarse en el tintero es SalesForce con su
“SalesForce Cloud” que veremos de manera detallada en el
siguiente punto.



Esta disciplina de computación tiene muchas ventajas, pero también se
encuentra envuelta en un ambiente de controversia; hay expertos que afirman
que se ha reinventado la rueda (The Times) y otros, que con esta disciplina se
estan limitando las libertades del usuario (Richard Stallman). Con muchos
seguidores y detractores, lo que realmente si se puede llegar a decir de ella,
es que es una disciplina que ha dado y que seguirá dando mucho que hablar
durante los próximos años.



3. SalesForce Cloud.



Es conocido como el mejor CRM off-site que actualmente existe. Para
los usuarios finales, simplemente parece una página web con información de
clientes, pero es mucho más que eso, es una aplicación con una arquitectura
orientada a servicios que posibilita:


- Tener los datos centralizados en un único servidor.
- Posibilidad de utilización y gestión de estos datos con un
simple navegador web desde cualquier dispositivo con
conexión a Internet, un usuario y una password.



Esta arquitectura orientada a servicio utiliza el protocolo de

transmisión SOAP(Simple Object Access Protocol.


Para conocer detalladamente los servicios que provee la arquitectura

http://www.salesforce.com/us/developer/docs/api/index.htm


de SalesForce, tenemos a nuestra disposición el API de salesForce:



En él, podemos encontrar llamadas a servicios web como:

https://www.salesforce.com/services/Soap/u/20.0



5

La llamada anterior, se corresponde con el servicio web para conexión
a Salesforce Cloud, en ella cabe destacar la versión del servicio web del que
estamos hablando, en este caso 20.0.



Existen diferentes modalidades de alquiler del servicio:



SalesForce desde Pentaho Data Integration (Kettle)



Ya conocemos Pentaho Data Integration y sabemos de su gran potencia
y funcionalidad. Desde la versión 3.2 se encuentra ya integrado por defecto el
paso “Salesforce Input” para poder extraer información de cualquier módulo
de SalesForce y en versiones actuales como 4.1.0 se encuentran además otros
pasos como “Salesforce Delete”, “SalesForce Insert”, “SalesForce Update”,
”SalesForce Upsert”:



Salesforce Input


Salesforce Delete

SalesForce Insert

SalesForce Update

SalesForce Upsert



6

Antes de arrancar PDI, se deben revisar si los jars que se encuentran
disponibles en nuestra versión de PDI se corresponder con los necesarios para
conectar con la versión de SalesForce que queremos interactuar. Los plugins
de salesForce en PDI se encuentran en el directorio:


\data-integration\libext\salesforce



Por ejemplo, en la versión PDI 3.2 tenía por defecto el plugin para
Salesforce 10.0 la versión PDI 3.8 la 20 y la versión PDI 4.2.0 GA, tiene
incorporada ya la 21.


En la mayoría de los proyectos de integración en lo que interviene
SalesForce como fuente, usamos todos los pasos de salesforce que nos provee
PDI, ya que tras el proceso de integración y data quality se nos suele requerir
realimentar SalesForce con información limpia y más “rica”. En este caso
concreto sólo vamos a indagar en el paso “SalesForce Input”, este paso nos
permitirá extraer datos de nuestro CRM, para posteriormente integrar datos
de SalesForce en nuestro DataWarehouse. A continuación se describe la
configuración de este paso y cada una de sus pestañas:
  • Links de descarga
http://lwp-l.com/pdf12410

Comentarios de: Integración de Salesforce y Pentaho (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad