Most performant way to build an analytics dashboard from a relational database backend that only stores numeric values, where the data the end-user sees is "categorized" into numeric brackets (e.g. 60-79 = Med, 80-100 = High, etc)

This page summarizes the projects mentioned and recommended in the original post on /r/rails

Our great sponsors
  • SonarLint - Clean code begins in your IDE with SonarLint
  • InfluxDB - Access the most powerful time series database as a service
  • SaaSHub - Software Alternatives and Reviews
  • Searchkick

    Intelligent search made easy

    I run a large scale production application that does something along these lines. If the data needs to be close to real-time, I'd say use `searchkick` + Elasticsearch, and use `searchkick`'s async feature to "stream" the data from your table to the ES index. Your dashboard will then just query from the ES index via searchkick.

  • Scenic

    Versioned database views for Rails

    If the data doesn't need to be close to real-time, and if your DB can handle a bit of load, I'd use a "batch" approach. To do this, I'd create a materialized view in your relational DB that you'd then refresh periodically. The easiest way to do this is with the `scenic` gem. Once you've done this, you can simply create a new model and set the `table_name` to the name of the materialized view, and then treat it as a regular model.

  • SonarLint

    Clean code begins in your IDE with SonarLint. Up your coding game and discover issues early. SonarLint is a free plugin that helps you find & fix bugs and security issues from the moment you start writing code. Install from your favorite IDE marketplace today.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts