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
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
  • 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.

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
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