Building Scalable and Safe Analytics Reporting Service by Leveraging Serverless Architecture



Executive Summary

ReachLocal, a division of Gannett, is an online marketing and advertising solution provider for small, medium, and large businesses in the United States, Europe, Asia, and Australia. It was the first company created specifically to help businesses solve the unique challenges of online marketing advertising to clients in local regions.

The company provides Internet and mobile Internet marketing solutions, and has spent over a decade building digital marketing services focused exclusively on local customers. ReachLocal works with clients to understand their businesses, develop digital marketing strategies, and manage the solutions that offer the best results from online marketing.

By analyzing over a million local campaigns, ReachLocal has gathered powerful, actionable insights, and its experts collaborate with clients to help drive new business growth. To date, the company has delivered over 200 million leads to local businesses worldwide.

"We are delighted with our partnership with the ClearScale team. Their AWS expertise, structured approach and agile delivery on this initiative ensured we met our all our objectives."

Raj Sudra, VP Media Engineering

The Challenge

In 2017, ReachLocal’s advertisers required API type integrations for all campaign related metrics and reporting into the advertisers CRM/ERP systems.

The internal team had a build a Analytics Reporting Service (ARS) to consolidate the advertisers campaign performance reporting. This was however limited to the advertiser running reports and outputting CSV/Excel files for ingestion to the CRM/ERP systems, not ideal.

The Analytics Reporting Service (ARS) was originally architected to deliver internal reports and couldn’t provide functionality for external reporting data consumption in a safe and secure way.

To address this strategic requirement, ReachLocal decided to architect a solution of moving Analytics Reporting Service to Amazon Web Services (AWS), then expose their Campaign performance reporting metrics APIs to secured authenticated Advertisers using AWS API Gateway. Acknowledging the business needs and lack of seasoned in-house AWS expertise, the VP of Media Engineering Raj Sudra reached out to ClearScale.

The ClearScale Solution

Client Reporting Application

ClearScale team met with Reach Local, went through their requirements, and clarified work sessions. Using a serverless setup, the team deployed a Client Reporting Application that includes an authentication and authorization layer that separates data per customer. This provides access to specific reports, but only for data that belongs to a particular customer.

Here’s an example of the typical data flow inside the Client Reporting Application:

  1. Campaign performance data and metrics are obtained from publishers, including Google, Bing, Yahoo, and Yelp, as well from phone calls, form submissions, clicks on ads, text messages, and other leads generated from advertising campaigns.
  2. MySQL database is updated with this operational data across the ReachLocal ecosystem on a daily basis; aggregation jobs sum up all metrics.
  3. All client center-required tables are replicated into a Maria 10 database, which is then used by a Reporting Analytics Service (ETL process) that feeds the client center application.

New Reporting Architecture

ClearScale team configured AWS APIGateway for ReachLocal customers, which can authorize request and give access only to authorized reports. AWS APIGateway provides correct HTTP responses codes also.

Lambda gets information from AWS APIGateway, validates request, and proxies it to ReachLocal API.

We configured AWS CloudWatch to store logs about requests and responses. AWS CloudWatch triggers send information to ReachLocal Sumologic account via AWS Lambda.

All components of the new data pipeline can be instantly scaled up or down as the volume of reporting data changes.

The new reporting architecture also makes the Analytics Reporting System (ARS) service more scalable. ARS will run within a Docker container, making it easier to deploy and scale services within AWS. In addition, ARS will be able to be hosted by AWS Elastic Container Service, which will make it easy to support demand from reporting clients.

Below is a diagram of the new reporting architecture:


Infrastructure Automation and Continuous Delivery

We used CodePipeline and CodeBuild to implement continuous delivery for Lambda functions. In this solution we push changes to Github repo for an AWS Lambda function. This will trigger the deployment pipeline (created in AWS CodePipeline) which will then update the Lambda function.

See a diagram below:



We used troposphere library to make python based scripts for dynamic infrastructure automation:

  • Deploy/Manage API Gateway
  • Deploy/Manage Lambda Functions
  • Deploy/Manage Continuous Delivery pipelines

The Benefits

The new Client Reporting Application allows ReachLocal to provide their data via API to their clients in a safe manner. And the new reporting architecture delivers the benefits such as:

  • Open architecture, which allows software, media, and business systems to contribute to a set of shared reporting services
  • Flexible reporting, with APIs that can be customized for specific data source and report type
  • Organizational scalability, where each new API reporting service can be worked on by independent groups of engineers, so more can be added as needed without interfering with each other
  • Scalability for each API reporting service, depending on the size and complexity of the report, or the demand on the individual reports

Talk to Us

To speak with ClearScale now, call 1-800-591-0442

ClearScale is ready to handle your next cloud project. Get in touch today to speak with a cloud expert and discuss how we can help.
San Francisco

One Market St., Spear Tower

Suite 3600

San Francisco, CA 94105

O: 1-800-591-0442

San Jose

5450 Thornwood Dr

Suite #L

San Jose, CA 95123


1400 16th Street,

Suite 400

Denver, CO 80202

O: 1-720-932-8028


2942 N 24th Street,

Suite 114

Phoenix, AZ 85016

O: 1-602-560-1198

New York

165 Broadway, 23rd Floor

New York City, NY 10006

O: 1-646-759-3656


11757 Katy Freeway

Suite 1300

Houston, Texas 77079

O: 1-281-854-2088


100 King Street West

Suite 5600

Toronto, Ontario, M5X 1C9

O: 1-416-479-5447

About Us  |  Careers  |  Privacy Policy