Good morning. This is Yong Jin Cho from Amazon Web Services.
In this episode of 'This is My Architecture',
we've invited KyeongOh Kim from Mesh Korea
to hear about their A/B testing platform.
Hello, KyeongOh.
Thanks for joining me today.
When I think of Mesh Korea, it reminds me of "Vroong".
I use its food delivery service and I'm so grateful that the service is so convenient.
Please explain a little more about Mesh Korea.
I feel so proud whenever I see the green logo "Vroong".
Mesh Korea is a business process outsourcing company that provides
a variety of solutions for digital transformation, such as the lastmile delivery service called "Vroong",
transportation management systems, order management systems, and logistics analytics.
I understand Mesh Korea as a company specializies in distributions other than "Vroong".
I was also told that the architecture you are going to introduce today is the A/B testing platform.
At first, I thought this is a platform for UI or UX A/B testing that you use when developing a web app.
But if you look at the diagram, there is an EMR. This is the data analysis platform.
Please explain how the data analysis platform and A/B testing platform are related.
Yes, the diagram is a little more complicated. At Mesh Korea, we are trying to make decisions based on data.
One of the recent things our team has done is, for example,
is the use of data analysis to improve usability, and provide dispatch services using AI.
It is also used to collect comparative data on which dispatch model is preferred by which drivers.
When deploying prototypes to specific targets, it is used for rolling deployments or rollback of certain features.
Thanks for the explanation. So, this testing platform is for data comparison, etc.
And I heard that when building this platform, three people built it in 3 weeks.
However, we know that 3 weeks is not enough time to build a platform.
How could you build it in just 3 weeks?
Yes, we had limited time because we decided to distribute it with other services.
The specification we were required to meet were to create, update the experiments,
and query treatment with infrastructure that can handle about 10,000 QPS of traffic. We were using AWS,
so we didn't worry about the infrastructure, and we looked for commercial solutions
or open sources for apps that provide those services. We found an open source project
called Sixpack by SeatGeek. We customized it to suit our needs.
Additionally, the core engine was developed. We still use it well.
Without AWS, the schedule would have been impossible.
Thank you very much for using our service so well.
There must have been some parts that you couldn't give up for the quality of platform service.
Can you tell me about that?
One of the most important things in designing the platform was
the flexibility to evolve and expand.
The service app that provides the API
enabled scaling by using the deployment object on the EKS cluster that we previously operated.
Since fast response was required, Elasticache Redis is used as the service storage.
And the service metrics are sent to the ElasticSearch service.
Then we are visualizing those real-time metrics in Kibana.
At the same time, it is sent to S3, for later data analysis.
The data that was sent to S3 is refined with production data from RDS in EMR cluster.
These refining jobs are done periodically
and scheduled using another open source called Apache Airflow which we installed on the EKS cluster.
We build this directly in EKS and then use it.
If you want to save time with resources, you can also use AWS Glue.
Thanks for your explanation about the current platform.
Can you tell us how you plan to develop this platform in the future?
For the service data stored in S3, we are checking the A/B test results
on the BI dashboard by using Athena.
When we first developed it, we didn't have QuickSight in our Seoul region. So we couldn't consider it.
But now that it's possible, we are considering converting this BI dashboard to QuickSight.
Yes, thank you very much for your introduction and explanation of this architecture.
We look forward to the development this architecture in the future.
'This is My Architecture.'
Thank you.