Historias de clientes / Software e Internet

2022
Logotipo de Salesforce

La UIP de Salesforce utiliza instancias de spot de Amazon EC2 para reducir el tiempo de procesamiento de los datos en más de un 90 % y ahorrar más de 1 millón de USD al mes

1 millón de USD

ahorrados al mes

Entre 200 y 250 TB

procesados por el mismo coste de lo que antes serían 100 TB 

De 4 horas a 15 minutos

se redujo el tiempo de procesamiento

Pruebas de configuración

exploradas y comprobadas en cuestión de horas

Información general

El equipo de la plataforma de inteligencia unificada (UIP) de Salesforce, que administra un lago de datos en términos de petabytes, deseaba innovar a la hora de analizar y procesar los datos, con el objetivo de ahorrar costes y aumentar la eficiencia. Gracias a Amazon Web Services (AWS) para combinar modelos de aprovisionamiento de instancias de Amazon Elastic Compute Cloud (Amazon EC2), que proporciona una capacidad de computación segura y de tamaño ajustable para prácticamente cualquier carga de trabajo, el equipo de la UIP logró crear una infraestructura de computación escalable y elástica. Su infraestructura de computación remodelada tarda menos en procesar el doble de datos y ahorra a la empresa más de 1 millón de USD al mes.

Salesforce utiliza AWS para sus flujos de trabajo de datos, mientras que AWS utiliza Salesforce para administrar las relaciones con los clientes. Esta asociación facilita a los desarrolladores que utilizan ambas tecnologías crear y lanzar aplicaciones de clientes, usar servicios de AWS de forma nativa en Salesforce y conectar de forma segura datos y flujos de trabajo en Salesforce y AWS.

Business coworkers discussing new ideas and brainstorming in a modern office

Oportunidad | Diseñar para lograr la eficiencia en AWS

A finales de 2019, el equipo de la UIP comenzó la transición de su clúster local a Amazon EMR, una plataforma de macrodatos en la nube para ejecutar trabajos de procesamiento de datos distribuidos a gran escala, consultas SQL interactivas y aplicaciones de machine learning con marcos de análisis de código abierto como Apache Spark, Apache Hive y Trino. El uso de Amazon EMR ayuda a Salesforce a reducir la complejidad de la administración de sus marcos de macrodatos y proporciona integración nativa para instancias de spot de Amazon EC2, lo que ayuda a las empresas a aprovechar la capacidad no utilizada de Amazon EC2 en la nube.

El equipo determinó que las cargas de trabajo que se ejecutaban en Apache Spark eran buenas candidatas para usar instancias de spot como parte de una estrategia de optimización de costes. Apache Spark en Amazon EMR cuenta con reintentos automáticos, que ayudan a proporcionar resiliencia en caso de reclamaciones de instancias de spot debido a los requisitos de capacidad de Amazon EC2. Además, el equipo de la UIP utiliza Spark Streaming para procesar datos en intervalos de 5 minutos, otro factor que ayuda a minimizar la posibilidad de tener que hacer reintentos.

Para encontrar la mayor disponibilidad al precio más bajo, la UIP de Salesforce probó el uso de instancias de spot junto con otras opciones de compra de Amazon EC2. Ejecutó hipótesis con varios porcentajes de instancias de spot e instancias bajo demanda de Amazon EC2, por las que las empresas pagan por la capacidad de computación por segundo sin ningún compromiso a largo plazo y tienen control total sobre el ciclo de vida de la instancia. Para sus instancias bajo demanda, la UIP de Salesforce utilizaba Savings Plans, un modelo de precios flexibles que ofrece precios más bajos en comparación con los precios bajo demanda, a cambio de un compromiso de uso específico. Con el objetivo de equilibrar la fiabilidad del clúster con descuentos en instancias, el equipo de la UIP identificó una configuración óptima con la que un 60 % de su uso de Amazon EC2 se beneficiaba de instancias de spot y el resto utilizaba la cobertura de Savings Plans. Para cumplir sus acuerdos de nivel de servicio (SLA), la UIP de Salesforce creó sus flotas pensando en el rendimiento. Divide las cargas de trabajo en clústeres de SLA y no SLA en función de las características del procesador y la capacidad de cumplir los requisitos temporales de los SLA. «En lo que respecta a la creación de nuestra flota, creo que la verdadera ventaja es la cantidad de tipos de instancias que se pueden utilizar», afirma Eric Legault, ingeniero jefe de Salesforce. «Utilizar AWS nos ayudó a jugar con muchas configuraciones diferentes de máquinas y probar diferentes hipótesis. Solo era cuestión de cambiar la configuración y un par de horas después podíamos ver si realmente funcionaba o no. Creo que eso ha contribuido en gran medida al éxito».

kr_quotemark

El escalamiento administrado de Amazon EMR desempeña un papel importante en nuestra posibilidad de utilizar la capacidad elástica de la nube. Y reducimos significativamente los costes con solo utilizar las instancias de spot de forma innovadora».

Eric Legault
Ingeniero jefe, Salesforce

Solución | Ahorrar millones con las instancias de spot

En consonancia con las prácticas recomendadas de AWS para el uso de instancias de spot, el equipo brindó estabilidad adicional a su flota al pasar de dos o tres tipos de instancias a 27, manteniendo la misma capacidad. El equipo de la UIP ejecuta 12 clústeres especializados con fines diferentes, mediante tipos de instancias optimizados para CPU, memoria o cargas de trabajo equilibradas y con una combinación de procesadores Intel y AMD. «Cuantos más tipos de instancias se tengan, más resistente será el clúster», afirma Legault.

La UIP de Salesforce procesa ahora entre 200 y 250 TB al día y registra aproximadamente el doble de esa cantidad de datos por el mismo coste que antes suponía procesar 100 TB. Al rediseñar el procesamiento de la ingesta con un enfoque de streaming y utilizar instancias de spot para aumentar la infraestructura al tiempo que se controlaban los costes, el equipo también mejoró la eficiencia del procesamiento al reducir el tiempo de ingesta y procesamiento de datos de 4 horas a 15 minutos. Para ofrecer una mayor visibilidad de sus métricas de computación, Salesforce utiliza Amazon CloudWatch, un servicio de monitorización y observabilidad de los recursos de AWS. El equipo monitoriza las aplicaciones mediante paneles personalizados creados con el software de código abierto Grafana, que proporciona visualización de las métricas operativas.

La solución de la UIP de Salesforce también utiliza el escalamiento administrado de Amazon EMR, que redimensiona automáticamente el clúster para obtener el mejor rendimiento al menor coste posible. Para compensar la posibilidad de una reclamación de instancia de spot, Salesforce permite que su clúster escale aproximadamente un 5 % por encima de su capacidad. La capacidad adicional significa un procesamiento más rápido para proporcionar más disponibilidad y estabilidad en el clúster cuando sea necesario. «Creo que esa es realmente la ventaja, que podemos escalar y desescalar verticalmente cuando la capacidad no sea necesaria», afirma Legault. «Este proceso también se ocupa de lo que haya salido en términos de reclamación». Además, el uso de una nueva capacidad del escalamiento administrado de Amazon EMR evita que la UIP de Salesforce desescale verticalmente las instancias que almacenan datos de fragmentación intermedia para Apache Spark, lo que se traduce en un mejor rendimiento y un menor coste.

La incorporación de las instancias de spot por parte de la UIP de Salesforce complementa el uso de Savings Plans y reduce los costes de computación en más de un 60 %, lo que permite ahorrar a la empresa más de 1 millón de USD al mes. Además de los dos clústeres que se ejecutan a tiempo completo, el equipo de la UIP puede escalar verticalmente de forma rentable un tercer clúster cuando sea necesario para dar cabida a una afluencia repentina de datos. El uso de instancias de spot por parte del equipo de la UIP para gestionar la ampliación también ayuda a reducir costes en otras áreas de Salesforce, ya que se liberan instancias de Savings Plans que otros equipos pueden utilizar para reducir costes durante los periodos de mayor actividad.

Resultado | Administrar flotas de forma más inteligente

Como parte del proceso de optimización, el equipo de la UIP utiliza el asistente de instancias de spot, que ayuda a las empresas a determinar los grupos con menos posibilidades de interrupción y proporciona ahorros con respecto a las tarifas bajo demanda. El equipo espera hacer la administración dinámica de flotas aún más inteligente mediante la puntuación de asignación de spot de Amazon EC2, que puede recomendar, casi en tiempo real, una región o zona de disponibilidad de AWS en función de los requisitos de Salesforce. Con la puntuación de asignación de spot de Amazon EC2, el equipo de la UIP planea encontrar aún más capacidad y precios más bajos a medida que se expande por las regiones de AWS. «Utilizamos la capacidad de la nube y la amplia gama de tipos de instancias de Amazon EC2 para hacer cosas que no podríamos hacer de manera local», afirma Legault. «El escalamiento administrado de Amazon EMR desempeña un papel importante en nuestra posibilidad de utilizar la capacidad elástica de la nube. Y reducimos significativamente los costes con solo utilizar las instancias de spot de forma innovadora».

Acerca de Salesforce

Como principal plataforma de administración de las relaciones con los clientes (CRM) y de interacción con los clientes, Salesforce presta servicio a más de 150 000 empresas en todo el mundo. Salesforce une a los equipos de ventas, servicios, marketing, comercio y TI con una única visión compartida de la información de los clientes, lo que ayuda a hacer crecer las relaciones tanto con los clientes como con los empleados.

Servicios de AWS utilizados

Amazon Elastic Compute Cloud (EC2)

Amazon Elastic Compute Cloud (Amazon EC2) ofrece la plataforma de computación más amplia y completa, con más de 500 instancias y la posibilidad de elegir el procesador, el almacenamiento, la red, el sistema operativo y el modelo de compra de vanguardia, en función de lo que mejor se ajuste a las necesidades que plantea la carga de trabajo.

Más información »

Instancias de spot de Amazon EC2

Las instancias de spot de Amazon EC2 permiten aprovechar la capacidad sin usar de EC2 en la nube de AWS.

Más información »

Savings Plans

Savings Plans es un modelo de precios flexibles que ofrece precios más bajos en comparación con los precios bajo demanda, a cambio de un compromiso de uso específico (medido en USD/hora) durante un periodo de uno o tres años.

Más información »

Escalamiento administrado de Amazon EMR

Con el escalamiento administrado de EMR puede especificar los límites de computación mínimos y máximos para sus clústeres y Amazon EMR los redimensiona automáticamente para lograr el mejor rendimiento y uso de recursos.

Más información »

Comenzar ahora

Organizaciones de todos los tamaños y de todos los sectores transforman sus negocios y cumplen sus misiones todos los días con AWS. Contacte nuestros expertos y comience hoy mismo su propia jornada en AWS.