Retail

Vakko and Commencis have partnered to integrate AWS for ready-to-use analytics

Vakko

Retail

Vakko and Commencis have partnered to integrate AWS for ready-to-use analytics

Vakko

About the customer

Vakko, Turkey’s leading fashion house and luxury goods brand, started out as a small hat shop called Şen Şapka (Merry Hats). Founded by Vitali Hakko in 1934, Şen Şapka soon became the Vakko brand, producing scarves made of Turkish silk based on the latest fashions. Inspired by the mood of development and innovation in the country at the time, Vakko recognized the need to expand beyond hats, scarves and printed fabrics and ventured into the ready-to-wear industry, where the company has been a sector leader ever since. Vakko’s primary goal has been to create collections that interpret the latest fashions, while offering superior quality, exquisite craftsmanship and excellent service.

Today, Vakko specializes in high-fashion luxury goods through its numerous collections and stores: Vakko Scarves, Vakko Men and Vakko Women, Vakko Couture, V2K Designers, Vakko Wedding, Vakkorama concept stores, W Collection Menswear and Vakko Home. Vakko also brings its high quality to the gourmet food sector with Vakko Chocolate, Vakko Tea Atelier, Vakko Coffee Atelier, as well as the high-end patisserie concept Vakko Patisserie Petit Four, and French restaurant Vakko Bistrot.

Customer challenge

The main challenge Vakko faced was gathering sales, customer, product, and other data generated internally and from multiple applications, processing and transforming it into a centralized data store that would allow internal users and partners to perform analysis. 

This project aimed to develop Vakko’s data lake by collecting data from various applications within a central data store. It also sought to analyse the data, run machine learning algorithms to make predictions, and share business intelligence data both internally and externally. The source data was in different mostly on-premise databases with various formats. In addition to these databases, Vakko’s application infrastructure was integrated with third-party services for daily operations.  

By leveraging the data related services of AWS such as Database Migration Service for replication, Glue for serverless ETL pipelines, a completely automated ETL pipeline for data collection and analysis was set up. After consolidating all data in a centralized data store, it can now be queried and reported by internal users and external partners with various synchronous and asynchronous integrations.

Solution deployment method

Commencis Cloud Team developed integrations for third-party services. They then implemented and automized ETL pipelines to form a data analytics platform. 

Various integrations were developed using Lambda functions and automated by EventBridge rules. In raw format, the data gathered was saved into S3 (Simple Storage Service) buckets and acted as a data lake. The raw data was then processed by Glue, a serverless ETL tool, and was then ready to run analytic queries. The analytic queries were developed by Vakko and automated by Commencis.

Integration of third-party services with Lambda

Lambda functions were developed for integration with the various third-party services that Vakko uses (e.g., logistics, customer interaction, online marketplaces). These functions connect to Vakko’s third-party services and collect data so that it can be saved into a data lake. Collected data is then preprocessed and inserted into a data warehouse layer (Redshift) using automated Glue crawlers and jobs.

Each of the Lambda functions shared the same layer for basic data preprocessing operations that contained Pandas. Lambda functions are naming convention consists of service provider’s names and the period of data collected. These functions are triggered by an EventBridge rule to collect data from the previous day. They then transform the data into the required format and save it into the S3 buckets.

The lambda function “sorun_hook” was developed as a webhook and connected to an API Gateway triggered by a messaging application provider company. In cases where Vakko receives new or updated messages, the client then sends a request to a specified endpoint and the Lambda function handles the request body in a similar manner to other third-party integrations.

Transfer of Data from Databases

Vakko uses legacy database systems containing CRM and ERP data. Data in these services are also transferred into data warehouse as is, using DMS’ full snapshot and ongoing replication features. 

Dropbox Integration

Dropbox to S3 integration was provided for Vakko as a custom request to safely archive commonly shared content. An in-house solution was developed for securely archiving content on a common Dropbox account. In essence, an EC2 (Elastic Compute Cloud) instance with sufficient EBS (Elastic Block Store) was provided to sync Dropbox content continuously with EBS and S3.

Querying and Reporting Consolidated Data

The data collected in Redshift was made accessible to internal and external systems. There are strict security checks in place to avoid data breaches. In addition, Redshift data has also been filtered and exported to S3 so that it can be shared with external parties as offline integrations.

Third-party applications/solutions

Dropbox is used by Vakko as a common file sharing platform. A Dropbox to S3 integration was developed to archive content. Gerrit is a source control management and code review tool that uses Git. Source codes for the Lambda functions are managed through Commencis’ self-hosted Gerrit instances. Jenkins is used for the deployment of Lambda functions and is also hosted on Commencis’ servers.

AWS Services used as part of the solution

AWS Glue: Used as ETL tool  

AWS DMS: Migration from legacy CRM, ERP databases is done with the use of DMS. 

AWS Lambda: Lambda functions are developed using Python with panda’s library to acquire and efficiently save the data. 

Amazon Redshift: A powerful Redshift cluster is set up to meet Vakko’s data analysis purposes. 

S3: S3 is used for storing raw data. 

EC2 & EBS: Is used for an intermediate device for Dropbox synchronization to S3 

API Gateway: is used for providing a secure webhook for a 3rd party service integration.

Architecture diagram of solution deployment

Most integrations were completed by leveraging Lambda functions. These are used as a serverless preprocessing tool that can easily be maintained and automatized. Other data sources are continuously copied into the data warehouse using the ongoing replication functionality of DMS.

Outcomes & Benefits

Vakko now has a product information store in AWS which runs parallel to the master product information database and is updated asynchronously. The product information data store can be queried concurrently by many external systems. Moreover, it is deployed in AWS on a highly scalable and high-performance architecture.

The solution is planned to be expanded so that other Vakko data can be stored on the same highly scalable architecture. This will require the installation of an AWS CloudFront through the AWS API Gateway, as the PIM API system will be queried from different countries in future phases. By doing this, remote points will be able to avoid data connection delays.

Let’s start your cloud journey
Get in Touch