The Fifth Elephant 2019

Gathering of 1000+ practitioners from the data ecosystem

Tickets

Building a multi-tenant data processing and model inferencing platform with Kafka Streams

Submitted by Navinder Pal Singh Brar (@navinder) on Tuesday, 4 June 2019


Preview video

Session type: Full talk of 40 mins

Abstract

Each week 275 million people shop at Walmart, generating multi-terabytes of interaction and transaction data. In Customer Backbone team, we enable extraction, transforming and storing of data to be served to teams such as Ads and Personalisation for building various customer-centric machine learning models such as bid models, fraud detection and omnichannel reorder. At 5 Billion events/day our Kafka Streams cluster processes events from various channels(web/online/mobile) and triggers the models when a type of event is ingested by our platform to which each model is subscribed to. In this talk, I will share an overview of architecture, leveraging Core Kafka, Kafka Streams, and Kafka Connect, for processing events and executing models, which is inbuilt for scalability and reliability. I will discuss the below points in detail.
•Ensuring fairness among the model runs
•Providing isolation and reusing features/inferences across models at the same time
•Dynamically updating global data(such as product catalog) on each node needed to run models using Kafka Connect and global stores
•Customizing models to either trigger them on each event or as batch after frequent time intervals using features such as windowing stores and suppress
•Implementing data archival/TTL policies and other features developed to be cost efficient
•Increasing availability of the system by enabling read via replicas and while restoring/rebalancing states
•Advantages and limitations of the platform

Key Takeaways:
•Leveraging Kafka Streams for model inferencing
•Lessons learned from productionising a Kafka Streams cluster while making it cost-efficient

Outline

Key Takeaways:
•Leveraging Kafka Streams for model inferencing
•Lessons learned from productionising a Kafka Streams cluster while making it cost-efficient

Requirements

Basic understanding of distributed systems, Kafka and Kafka Streams

Speaker bio

Navinder is working as a data engineer in Walmart Labs where he has been working with Kafka ecosystem for the last couple of years, especially Kafka Streams and created a new platform on top of it to suit their needs to process billions of events per day in real time and trigger models on each event. He has been active in contributing back to Kafka Streams and has patented few features as well. He is interested in solving complex problems and distributed systems and likes to spend time in gym and boxing ring in his spare time.

Links

Slides

https://speakerdeck.com/navinder/building-a-multitenant-data-processing-and-model-inferencing-platform-with-kafka-streams?slide=4

Preview video

https://www.youtube.com/watch?v=xIej6BO-pzo&t=28s

Comments

  • Abhishek Balaji (@booleanbalaji) Reviewer 6 months ago

    Hi Navinder,

    Thank you for submitting a proposal. We need to see detailed slides and a preview video to evaluate your proposal. Your slides must cover the following:

    • Problem statement/context, which the audience can relate to and understand. The problem statement has to be a problem (based on this context) that can be generalized for all.
    • What were the tools/frameworks available in the market to solve this problem? How did you evaluate these, and what metrics did you use for the evaluation? Why did you pick the option that you did?
    • Explain how the situation was before the solution you picked/built and how it changed after implementing the solution you picked and built? Show before-after scenario comparisons & metrics.
    • What compromises/trade-offs did you have to make in this process?
    • What is the one takeaway that you want participants to go back with at the end of this talk? What is it that participants should learn/be cautious about when solving similar problems?

    We need your updated slides and preview video by Jun 17, 2019 to evaluate your proposal. If we do not receive an update, we’d be moving your proposal for evaluation under a future event.

    • Navinder Pal Singh Brar (@navinder) Proposer 5 months ago

      Hey Abhishek, thanks. I have uploaded the preview video and working on the slides. Can you give me an idea if I submit them by 17th which conference data would I be considered for and if it unfortunately gets delayed which date it will be considered for then. Thanks.

      • Abhishek Balaji (@booleanbalaji) Reviewer 5 months ago

        We’re currently evaluating proposals for The Fifth Elephant 2019 in Bangalore. If the deadline is missed, we’d be moving it back to the pool and will consider when we have an event upcoming. You can view upcoming events here: https://hasgeek.com

  • Abhishek Balaji (@booleanbalaji) Reviewer 5 months ago

    Rejected since the deadline is missed. Will be considered for a future event if content is updated.

  • Navinder Pal Singh Brar (@navinder) Proposer 2 months ago

    Added the slides. Please re-evaluate.

Login with Twitter or Google to leave a comment