Al utilizar los volúmenes de Amazon EBS más rápidos y de mayor tamaño podemos abastecer a más clientes y más datos. Ya no nos preocupamos de si vamos a poder satisfacer nuestras necesidades de almacenamiento, ya que los clústeres crecen con el paso del tiempo.  
Joseph Poirier Senior Manager of Platform Infrastructure

Bazaarvoice proporciona soluciones de comercio social a las principales marcas del mundo, incluidos los minoristas líderes internacionales Best Buy y The Home Depot, además de marcas conocidas como Adidas y Samsung. Las soluciones de Bazaarvoice ayudan a las empresas a recopilar, visualizar y analizar las clasificaciones, opiniones y recomendaciones generadas por los clientes, así como el contenido social publicado en línea acerca de sus marcas, productos y servicios. Los clientes de Bazaarvoice utilizan los datos para aumentar las ventas, adquirir clientes nuevos, mejorar sus productos y servicios e incrementar la involucración de los consumidores en varios canales. Cada mes, más de 700 millones de personas ven y comparten opiniones y experiencias acerca de decenas de millones de productos en la red de Bazaarvoice.

Desde su fundación en 2005, Bazaarvoice ha querido incrementar la elasticidad de su plataforma tecnológica. “Queríamos pasar de una arquitectura tradicional aislada y basada en SQL y un entorno de colocación administrado a una arquitectura NoSQL más elástica”, explica Gary Allison, vicepresidente ejecutivo de ingeniería en Bazaarvoice. “Por ejemplo, a medida que crecimos, queríamos la flexibilidad de poder comprar capacidad de almacenamiento según fuera necesaria, en lugar de hacer conjeturas a gran escala sobre el hardware físico que pudieran resultar acertadas o equivocadas”, asegura Joseph Poirier, director sénior de infraestructura de plataforma de Bazaarvoice.

Bazaarvoice adoptó la nube para satisfacer sus necesidades de elasticidad en 2008 y, en la actualidad, ha trasladado todos sus servicios de atención al cliente a Amazon Web Services (AWS). “Fuimos una de las primeras empresas en adoptar AWS”, explica Allison. “Para disfrutar de verdadera elasticidad, sabíamos que necesitábamos un proveedor de la nube fiable como AWS para alojar nuestro entorno”.

Bazaarvoice comenzó a utilizar AWS como plataforma en la nube principal para su entorno. La compañía utiliza más de 20 servicios de AWS, incluyendo instancias de Amazon Elastic Compute Cloud (Amazon EC2) para alojar la plataforma de su sitio web, Elastic Load Balancing para distribuir las solicitudes de red entrantes y Amazon Simple Storage Service (Amazon S3) para almacenar datos. “Ejecutamos casi todo en AWS, incluidas 50 aplicaciones que abarcan desarrollo, control de calidad y producción”, afirma Allison. “En cualquier momento, disponemos de unas 4 000 instancias de Amazon EC2 en ejecución en múltiples zonas de disponibilidad”.

Una parte principal de la implementación en AWS de Bazaarvoice es Amazon Elastic Block Store (Amazon EBS), que proporciona volúmenes de almacenamiento a nivel de bloque persistentes para uso con las instancias de Amazon EC2. “La elasticidad de Elastic Block Store es algo fundamental para nosotros”, explica Poirier. “Con Amazon EBS, podemos administrar nuestra capacidad informática y de almacenamiento de forma mucho más sencilla”. Amazon EBS también desempeña un papel fundamental para Bazaarvoice, ya que completa la transición de sus servicios del entorno de colocación a AWS. “Amazon EBS nos facilita la migración, ya que hemos podido replicar todo en AWS”, mantiene Allison. “A medida que los consumidores de todo el mundo visitan sitios de comercio electrónico y leen las opiniones, acceden a bases de datos maestras y esclavas situadas sobre las bases de datos replicadas”.

Tras experimentar un rápido crecimiento, a Bazaarvoice le preocupaban las posibles limitaciones en los datos de su implementación existente en Amazon EBS. “El tamaño de nuestro contenido se duplica da 18 meses, y nos estábamos acercando al volumen máximo de EBS de un terabyte”, explica Poirier. “Al mismo tiempo, seguíamos transfiriendo los datos de una base de datos maestra a una arquitectura NoSQL, de modo que habíamos efectuado varias separaciones lógicas de clientes en clústeres. Algunos de los clústeres se acercaban al límite de un terabyte para la replicación de la base de datos maestra en AWS”.

Por lo tanto, a Bazaarvoice le preocupaba tener que modificar la arquitectura de algunas de sus aplicaciones. “El volumen de EBS era nuestra puerta de acceso a AWS y hacía que todos los demás servicios funcionaran”, mantiene Poirier. “Habíamos realizado numerosas labores de ingeniería para reducir la cantidad de datos enviados a las réplicas de AWS, y nos preocupaba tener que realizar muchas más para resolver el problema de la limitación de los datos”.

Viendo el desafío al que se enfrentaba Bazaarvoice, Amazon invitó a la empresa a ser una de las primeras en adoptar los nuevos volúmenes de EBS, que eran más rápidos y de mayor tamaño. Estos nuevos volúmenes son capaces de abastecer hasta 16 terabytes y proporcionan hasta 20 000 IOPS aprovisionadas, en comparación con las 4 000 IOPS de las versiones anteriores. Además, los volúmenes recién creados pueden transferir datos con más del doble de rapidez. “Tuvimos la oportunidad de probar volúmenes de EBS más rápidos y de mayor tamaño, lo que nos entusiasmó, ya que parecía la solución ideal al reto al que nos enfrentábamos debido al crecimiento de los datos”, explica Poirier.

Bazaarvoice pudo probar el desempeño de los nuevos volúmenes EBS antes de su producción. “Replicamos uno de nuestros clústeres de mayor tamaño, que se acercaba al límite, y colocamos una versión más pequeña de la infraestructura de la base de datos en el nuevo volumen de EBS,”, explica Poirier. “Recopilamos el equivalente de una semana de solicitudes entrantes aproximadamente – miles de millones de solicitudes – y probamos el nuevo volumen de EBS para ver cuál era su desempeño en comparación con los volúmenes antiguos”, nos cuenta. "En las pruebas, Amazon logró un desempeño del volumen de EBS superior al que habían previsto ver en el programa beta".

En la actualidad, Bazaarvoice puede abastecer con facilidad el espectacular crecimiento de sus datos sin preocuparse por limitaciones de tamaño. “Hemos comenzado a trasladar algunos de nuestros clústeres de volúmenes de un terabyte a volúmenes de dos terabytes, lo que se adapta mejor al crecimiento de nuestros datos. Y si tenemos que trasladarlos a volúmenes de tres terabytes, no supondrá ningún problema. En un entorno tradicional, algo así llevaría meses de planificación”, asegura Poirier. “Al utilizar los volúmenes de Amazon EBS más rápidos y de mayor tamaño podemos abastecer a más clientes y más datos. Ya no nos preocupamos de si vamos a poder satisfacer nuestras necesidades de almacenamiento, ya que los clústeres crecen con el paso del tiempo”.

Además, al disponer de más espacio para almacenar datos y la capacidad de acceder a ellos con mayor rapidez, la compañía se puede concentrar en crear nuevas aplicaciones en lugar de realizar más labores de ingeniería para intentar reducir el volumen de los datos enviados a las réplicas de AWS. “Habíamos contemplado dividir uno o más clústeres en varios, lo cual habría resultado complicado y costoso”, explica Poirier. “Además, teníamos numerosos vínculos entre clústeres, por lo que hubiéramos tenido que duplicarlos. Hubiera supuesto mucho trabajo que no queríamos realizar. Al utilizar los volúmenes de Amazon EBS más rápidos y de mayor tamaño, lo evitamos por completo”.

Bazaarvoice también podrá aprovechar las excelentes capacidades de desempeño de los volúmenes de EBS más rápidos y de mayor tamaño. “En nuestras pruebas, validamos la mayor cantidad de IOPS y las tasas de desempeño superiores que AWS nos había proporcionado, y en general observamos un desempeño igual o superior para los clústeres de nuestra base de datos”, nos cuenta Poirier. “Estamos convencidos de que veremos los mismos resultados en la producción”. Gracias a la mejora en el desempeño, la compañía podrá volver a crear bases de datos esclavas con mayor rapidez. “Cuando creamos una base de datos esclava, la instancia tarda tiempo en prepararse a partir de una instantánea”, asegura Poirier. “En las pruebas, observamos que el tiempo de preparación era el doble de rápido con los nuevos volúmenes de EBS. Por lo tanto, si debemos poner en marcha otra esclava para abastecer el incremento en el tráfico del sitio web, podemos hacerlo el doble de rápido.”

Además, la compañía cuenta con mayor flexibilidad durante la transición a una arquitectura NoSQL. “Todavía estamos transfiriendo el resto de nuestras bases de datos a AWS”, explica Poirier. “Durante el proceso, tendremos más opciones en cuanto a almacenamiento, instancias informáticas e incluso precios bajo demanda”. Y Bazaarvoice seguirá beneficiándose de la elasticidad que aporta AWS. “EC2 forma parte fundamental del servicio que ofrecemos a nuestros clientes, ya que nos permite poner en marcha recursos o eliminarlos según sean necesarios en función de la demanda”, mantiene Poirier. “Además, cada vez que Amazon introduce nuevos tipos de instancias, podemos adoptarlas de forma sencilla para beneficiarnos de un desempeño y precio mejores”.

Bazaarvoice piensa ampliar el alcance de su implementación en AWS en los próximos meses. “Nuestro éxito se debe a AWS, por lo que estamos deseando agregar más servicios en el futuro”, asegura Allison. “Nuestros contactos en AWS nos han ayudado enormemente, ya sea para explicarnos las nuevas arquitecturas como incluso nuevas estrategias para el servicio que proporcionamos a cientos de millones de personas. Al contar con la potencia de AWS en nuestra plataforma, podemos concentrarnos en la innovación para nuestros clientes y ayudarles a alcanzar el éxito”.

Para obtener más información sobre cómo AWS puede ayudarle a administrar su sitio web, visite la página de detalles sobre sitios web y alojamiento de sitios web.