Mortar has joined Datadog, the leading SaaS-based monitoring service for cloud applications. Read more about what this means here.

How to Build a Recommendation Engine

Recommendation engines are key to some of the most iconic businesses on the web—think Amazon’s “Customers Who Bought This” section or Netflix’s personalized movie suggestions. Now you can build a powerful recommendation engine yourself using Mortar’s open-source code. Here's what to expect from the process.

What You'll Get

After you finish the step-by-step tutorial, you’ll have built a recommendation engine on open technologies that helps boost engagement and/or revenue by recommending highly relevant products, videos, music, movies, or even other users. It will be customized to your data and business logic, and you will be able to modify and improve upon it any time you need.

You will be able to run your recommendation engine in the Amazon Web Services (AWS) cloud on Mortar’s platform, refreshing your recommendations frequently.

What You'll Need

  • Your input data. You will need access to the input data that will power your recommendations (e.g. user/product, click, view, wishlist data). This may involve extracting a copy of this data to Amazon's Simple Storage Service (S3) for processing or being able to read directly from a database like MongoDB.
  • A Mortar account. You can request a free trial of Mortar here. You'll only pay for your actual usage of AWS cloud services (we never add an upcharge).

Get Started!

That’s a brief rundown of what's involved in building a recommendation engine on Mortar. This tutorial breaks the process down into clear, sequential steps so that you'll always know where you are in the process and what comes next.

This tutorial is written assuming that you are reading data from Amazon S3 and ultimately writing recommendations out to DynamoDB. However, the recommendation engine is extremely flexible and works with many other data sources and targets. Throughout this tutorial you will see sections like:


This contains MongoDB specific information.


This contains information about using SQL databases. The examples use PostgreSQL, but it requires only a few small changes to use MySQL.

These sections will provide additional details or examples for integrating with other technologies.

Ready to get started? The first thing you'll want to do is quickly explore How Mortar Works.