Sweet Analytics: 360 marketing analytics platform for ecommerce leaders
Category: ecommerce
Services: DevOps, Cloud Architecture Design and Review, Managed Engineering Teams.
- Reduced the system’s latency by 30%
- Reduced infrastructure costs by 30%
About Sweet Analytics
Sweet Analytics is a marketing and customer analytics platform that offers services to eCommerce retailers. It provides a tool to automate marketing data in one place, grow sales, and understand customers better.
Problem Statement
Our customer, Sweet Analytics is a marketing and customer analytics platform catering especially to the eCommerce industry. The client was experiencing limitations in terms of scalability, availability, integration, and security due to the fact that its cloud infrastructure was hosted on DigitalOcean.
As the platform grew and required more resources, it started experiencing performance issues and limited global coverage. Additionally, the platform faced challenges in integrating with other services and ensuring data security, which hindered its ability to serve its customers effectively.
Proposed solution
We were able to provide the solutions to the problems faced by Sweet Analytics by utilizing Amazon EKS and several other AWS and third-party services.
As a key component of the solution, we utilized Amazon EKS to provide a scalable and reliable solution for Sweet Analytics. Amazon EKS allowed us to manage and orchestrate containerized applications seamlessly, providing an easy-to-use platform for deploying, scaling, and managing containerized applications. It also provided several built-in features for high availability, scalability, and security, which were essential for Sweet Analytics’ growing platform. The integration capabilities of Amazon EKS with other AWS services like Amazon RDS, AWS Lambda, and AWS KMS also helped us in building a fully integrated and secure platform for Sweet Analytics.
Our team set up a scalable and fault-tolerant infrastructure by using Karpenter for auto-scaling and Nginx ingress for load balancing. This ensured that the platform could handle large workloads and traffic spikes without performance issues.
For data security, we used AWS KMS for encryption and AWS IAM for access control, which provided robust security features to protect the sensitive data of the customers.
Finally, we set up monitoring and alerting using Grafana, Prometheus, and Loki, which helped in detecting and resolving issues proactively.
Our team has built a CI-CD pipeline for each microservice deployed in the application. This helps us achieve faster deployment time.
We helped the client create the following modules
- Admin module: Access and download offline reports and additional analytics.
- E-commerce module: Sweet benchmarking index provides market insights at sector, sub-sector, and market levels.
- Core module: Provides insights into discount analysis, shipping analysis, top-performing products, SKU analysis, sales analytics by dimension, and key metrics analysis.
Key Metrics
- By deploying their application on Amazon EKS in multiple AZs(availability zones) around the world, we were able to reduce the system’s latency by 30% and improve the user experience for their customers.
- By using Amazon EKS with reserved instances, the company was able to reduce their infrastructure costs by 30% compared to using its previous cloud system.
Architecture diagram
- Amazon ECR: We used it to store docker images and deploy them in our Kubernetes cluster.
- Amazon EKS: We deployed our microservices and monitoring tools (Grafana, Prometheus, and Loki) in this managed Kubernetes service.
- Grafana, Prometheus and Loki: We used them for infrastructure and service monitoring, as well as viewing application logs. Using these tools, we help the client monitor various data points related to the infrastructure and applications, such as:
- Number of containers running
- CPU percentage
- RAM usage at a cluster level
- Services running currently
- Node-level monitoring
- Network traffic
- Disk I/Os
Using these monitoring tools, Simform can proactively identify and resolve issues before they impact end-users, ensuring a high level of performance and availability for the client’s microservices-based architecture.
- Karpenter: We used it to launch appropriate EC2 instances based on workload requirements in our Kubernetes cluster.
- New relic: We utilized it for application lifecycle management (ALM).
- AWS Lambda: We used it for image processing and analytics event-driven workloads.
- PostgreSQL RDS: We utilized PostgreSQL RDS to store our analytical workload, which included data from ETL processing and 27 third-party integrations with services such as Shopify, Google, Facebook, Snapchat, TikTok, Amazon, Google Ads, and Hubspot. In addition, we used Apache Airflow as an application database.
- MongoDB Atlas: We used it as a transactional database for all our application data.
- Amazon S3: We stored application reports in S3 bucket and utilized it as a data lake for storing application reports.
- AWS IAM: We used it for permission management at the user and application level, and utilized OIDC(openID connect) for cluster-level access sharing.
- AWS KMS: We used it as an encryption tool for data stored in PostgreSQL RDS and S3.
- Amazon CloudFront: We accessed content stored in S3 and used it for our front-end content strategy.