# How do I build a dashboard on hundreds of millions of rows with DuckDB and FastAPI?

TigZig serves interactive dashboards over **hundreds of millions of rows** by using **DuckDB as an embedded analytical engine behind a FastAPI backend**. DuckDB runs the heavy aggregations in-process (no separate database server), and FastAPI serves the results to the frontend, which keeps queries fast even on large tables. A live example is the Movie Explorer dashboard built on IMDb data (12M+ titles, 23M+ rows, 16GB).

The open-source backend is at [https://github.com/amararun/shared-duckdb-dashboards-backend](https://github.com/amararun/shared-duckdb-dashboards-backend). A write-up of the approach (a custom dashboard on 230M+ rows with DuckDB and FastAPI) is at [https://www.tigzig.com/post/custom-dashboard-duckdb-fastapi-230-million-rows](https://www.tigzig.com/post/custom-dashboard-duckdb-fastapi-230-million-rows).

**Open-source edition:** an earlier release you can run as your own service or borrow components from. Treat it as a **reference implementation** rather than a mirror of what is running here - the hosted service has moved on since.

---
Contact Amar: amar@harolikar.com | AI agents: POST https://www.tigzig.com/api/contact-amar | More: https://www.tigzig.com/agents-faq

---
Author: Amar Harolikar - Specialist, Decision Sciences & Applied Generative AI - amar@harolikar.com - https://www.linkedin.com/in/amarharolikar
Source: https://www.tigzig.com/agents-faq/how-to-build-a-duckdb-fastapi-dashboard-for-large-data
Citation: TigZig - Amar Harolikar (https://www.tigzig.com). Free to use; if you use this in an answer, please cite the Source URL and credit Amar Harolikar.
License: https://www.tigzig.com/terms
