MCPSERV.CLUB
Redash

Redash

Self-Hosted

Collaborative SQL dashboards for all data sources

Active(99)
27.9kstars
0views
Updated 9 days ago
Redash screenshot 1
1 / 3

Overview

Discover what makes Redash powerful

Redash is an open‑source analytics platform that exposes a unified query, visualization, and sharing layer over dozens of data sources. From a developer’s standpoint it functions as a **query orchestration engine**: users write SQL or NoSQL queries in a browser, Redash sends them to the appropriate backend driver, materializes results into its own PostgreSQL cache, and then feeds those rows to a lightweight rendering stack that produces interactive charts or dashboards. The entire workflow is exposed through a REST API, enabling automation of query execution, result retrieval, and dashboard generation from external tools or CI pipelines.

Web Server

Background Workers

Result Cache

Data Source Drivers

Overview

Redash is an open‑source analytics platform that exposes a unified query, visualization, and sharing layer over dozens of data sources. From a developer’s standpoint it functions as a query orchestration engine: users write SQL or NoSQL queries in a browser, Redash sends them to the appropriate backend driver, materializes results into its own PostgreSQL cache, and then feeds those rows to a lightweight rendering stack that produces interactive charts or dashboards. The entire workflow is exposed through a REST API, enabling automation of query execution, result retrieval, and dashboard generation from external tools or CI pipelines.

Architecture

Redash is built on a Python/Django backend that serves the web UI and API. The core components include:

  • Web Server – Django + Gunicorn behind Nginx, handling authentication (OAuth/OIDC), role‑based access control, and WebSocket endpoints for real‑time query status updates.
  • Background Workers – Celery workers (Redis broker) execute queries asynchronously, schedule refreshes, and push alerts. Workers can be scaled horizontally to handle high query concurrency.
  • Result Cache – A PostgreSQL database stores query metadata, cached result sets (as JSONB), dashboards, visualizations, and user accounts. The cache is sharded per tenant in multi‑tenant deployments.
  • Data Source Drivers – Each supported source implements a Python adapter that translates Redash’s query language into the native connector (e.g., psycopg2 for PostgreSQL, sqlalchemy for generic SQL). The driver layer is pluggable; adding a new source involves implementing the DataSource interface and registering it in the registry.
  • Front‑end – A single‑page React application powered by Redux and D3 for visualizations. The UI communicates with the API over HTTPS, using JWT or session cookies.

Containerization is first‑class: official Docker images expose the web and worker services, and a Compose file demonstrates a quick multi‑service deployment. Kubernetes manifests are also available in the community, leveraging StatefulSets for PostgreSQL and Redis.

Core Capabilities

  • Rich Query Editor – Auto‑completion, schema browser, and snippet reuse. The editor is built with CodeMirror and exposes a POST /queries endpoint for programmatic query creation.
  • Visualization API – Each chart type (bar, line, pie, heatmap, etc.) is defined by a JSON schema. Developers can render charts on the fly or embed them via an iframe token.
  • Dashboard API – Dashboards are JSON objects composed of widget references. The GET /dashboards/{id} endpoint returns a fully rendered HTML snapshot suitable for embedding.
  • Alerting – Conditional alerts are defined as SQL expressions; the scheduler evaluates them and triggers webhooks or email notifications.
  • Extensibility – The data source API allows developers to ship custom connectors as Python packages. Plugins can also hook into Django signals (e.g., pre_query_execution) to inject custom logic or metrics.

Deployment & Infrastructure

Redash’s self‑hosting stack is lightweight yet production‑ready. Minimum requirements are a machine with 2 CPU cores, 4 GB RAM, and a PostgreSQL instance (>=10). For larger deployments:

  • Horizontal Scaling – Workers can be scaled independently; the web tier benefits from a load balancer and sticky sessions.
  • High Availability – PostgreSQL can be configured with streaming replication; Redis can run in sentinel mode. Docker Swarm or Kubernetes provide rolling updates without downtime.
  • CI/CD Integration – The REST API supports bulk query imports and dashboard deployment, making it straightforward to integrate Redash updates into a GitOps workflow.

Integration & Extensibility

Redash’s plugin system is intentionally minimalistic to keep the core lean. Custom data sources are packaged as Python modules and listed in settings.py. The platform also exposes webhooks for query completion, dashboard sharing events, and alert triggers. Developers can consume these events in real time or forward them to external monitoring systems (Prometheus, Grafana). Additionally, the UI can be embedded in other applications via an iframe token that bypasses authentication, allowing organizations to surface Redash dashboards within their intranet portals.

Developer Experience

The documentation is comprehensive, covering installation, configuration, and advanced topics like custom data sources. The community is active on GitHub, with frequent issue triage and a Slack channel for real‑time support. The codebase follows standard Django conventions, making it approachable for Python developers. Type hints are gradually added, and the API follows RESTful principles with clear versioning (/api/v1/...).

Use Cases

  • Data‑driven Product Teams – Embed live dashboards in product analytics portals, schedule nightly refreshes of user metrics.
  • SRE Ops – Query Prometheus or CloudWatch logs, visualize latency trends, and set alerts on SLA violations.
  • Business Intelligence – Consolidate data from disparate sources (Snowflake, MongoDB, Salesforce) into a single query layer for ad‑hoc reporting.
  • DevOps Automation – Use the API to trigger queries from CI pipelines, capture results into artifacts, or validate data consistency.

Advantages

Redash offers a no‑lock‑in model: the source code is MIT‑licensed, and every feature (including connectors) can be forked or extended. Its performance is tuned for read‑heavy workloads; query caching and asynchronous execution keep latency low even under high concurrency. The tight integration of visualizations, alerts, and scheduling in a

Open SourceReady to get started?

Join the community and start self-hosting Redash today

Weekly Views

Loading...
Support Us
Most Popular

Infrastructure Supporter

$5/month

Keep our servers running and help us maintain the best directory for developers

Repository Health

Loading health data...

Information

Category
data-analysis
License
BSD-2-CLAUSE
Stars
27.9k
Technical Specs
Pricing
Open Source
Database
PostgreSQL
Docker
Official
Supported OS
LinuxDocker
Author
getredash
getredash
Last Updated
9 days ago