The Fifth Elephant winter edition 2019

Winter edition of India's most renowned conference on big data and data science

Data Pipeline on Day 1 of your Startup : Cost and Scale sensitive!

Submitted by Kumar Puspesh (@puspesh) on Friday, 2 November 2018

videocam_off

Technical level

Beginner

Section

Crisp talk

Status

Confirmed & Scheduled

View proposal in schedule

Vote on this proposal

Login to vote

Total votes:  +1

Abstract

We are a gaming company making mass market social games. Since being in a consumer market where user experience is the the key, we had to rely heavily on data from Day 1 of game/product launches. This is the reason we actually built our data infrastructure in parallel to games/products and had it ready for production usage from begining itself. We relied heavily on ready-to-use systems but at the same time had to be cost sensitive being a startup. Setting up whole data-lake and heavy duty hdfs cluster was ruled out due to cost and maintenance overhead. We setup a lightweight data collection pipline to central queues which is then ingested in realtime to our warehouse of choice Redshift (reason being ease-of-use). Also, scaling such a system has its cost overheads when your product grows. So we had to design data retention and data querying capabilities such that we aren’t paying hefty bills as well as aren’t being limited in terms of querying real-time data from our users.

Outline

Rough outline

  1. Business Requirements
  2. Usecase
    • Having a scalable system for data ingestion
    • Data design - Specific or Generic?
    • Querying interface - why stick to SQL?
    • Query interface users - skills, requirements and expectations
  3. Data ingestion
    • High throughput stats service
    • Thin client: Badger
    • High throughput Ingestion backend
    • Hot loading to Redshift
  4. Data Warehousing
    • Data design in Redshift and data lake
    • Tuning for scale
    • Taking care of Querying patterns of Product Managers and Data scientists
  5. S3 as Data Lake
    • On demand Data loading and querying: OnDemand Table(s)
      • Gotchas
    • Flexibility for complicated analysis: Adhoc redshift cluster(s)
      • Gotchas
  6. Scaling up
    • Typical bottlenecks and solutions we tried
  7. Learnings

Speaker bio

I am Kumar Puspesh, CTO and Co-Founder of Moonfrog, India’s top mobile gaming company. We had to design a large scale data infrastructre from day 1 of our company to cater to our product needs. Having a cost sensitive as well as scalable approach helped us achieve large scale as a gaming company in India in short amount of time. At the same time taught us a lot of ingenious ways of building large scale infra customized for business and its users (rather than a generic paid solution and then changing your usage/requirements based on that).

Comments

Login with Twitter or Google to leave a comment