Batteries Included: The Local-First Approach to Data Visualization
The Challenge: High Marginal Costs of Scaling Traditional BI Tools
For decades, traditional business intelligence (BI) tools have been the backbone of data visualization. While effective, their scalability often comes with significant costs. Most BI tools rely on extensive backend infrastructure—cloud services, SQL databases, and proprietary engines—which must be horizontally scaled to handle additional users.
This model not only demands expensive cloud resources but also licenses that typically increase per user.
Adding users becomes a costly exercise in scaling infrastructure. Therefore organizations often invest significant development cycles in custom solutions, or reduce features to manage expenses—all due to financial constraints of traditional BI tools.
An Alternative: The Local-First Approach
The local-first approach flips the traditional BI paradigm on its head. By leveraging the processing power of users’ local devices—such as laptops or phones
—this method offers nearly zero marginal cost for scaling analytics to millions of users.
Modern web browsers already perform tasks like video conferencing, 3D rendering, and real-time document collaboration. Similarly, local-first data visualization leverages this capability to deliver analytics at unprecedented scale and efficiency.
Why This Matters
Today’s users across apps and devices demand interactivity as a de-facto standard. They are also increasingly conscious of how and where their data is used.
Traditional BI tools, with their heavy Cloud dependencies and scaling costs, fail to meet these needs. This forces companies to develop bespoke scalable solutions using open-source libraries like Chart.js or D3—a functional but resource-intensive approach.
With local-first data tools, such as Prospective, companies are able to embed scalable/interactive analytics directly on the user's device with nearly no development.
Architecture of BI Tools
Modern BI tools commonly use a multi-tier SaaS architecture. Typically, they query backend SQL databases via connectors, extract data into proprietary engines, perform aggregations or pivots, and cache results for front-end interactions. This process generally involves the following layers:
- Data Source Layer: This layer connects to databases, warehouses, and lakes, handling data ingestion and transformation through ETL or ELT processes. Some support both batch and real-time streaming, though most face challenges with the latter (streaming).
- Processing Layer: Responsible for query execution and optimization, the processing layer uses in-memory computing for speed and caching to enhance performance. It also prepares data through modeling and transformations for analysis.
- Analytics Layer: The analytics layer enables advanced functions like multidimensional OLAP analysis, statistical computations, and machine learning integrations. It forms the backbone of deeper insights and exploratory data analysis.
- Presentation Layer: Delivering results to users, this layer offers web-based visualizations, interactive dashboards, and report generation. It supports embedding analytics into workflows via API integrations.
Challenges of this Design
Scaling to more users impacts every layer, requiring increased data handling, expanded ETL processes, higher network egress, and greater processing power. This creates three core challenges:
- Escalating Costs: Linear scaling costs arise as every new user increases licensing fees, cloud resource consumption, and infrastructure demands.
- Security and Data Management Risks: Proprietary engines relay data across multiple systems, requiring robust access controls, safeguards, and compliance measures to manage sensitive information securely.
- Performance and Scalability Bottlenecks: Handling millions of users is impractical due to cost, operational bottlenecks, latency from multi-layered data relays, and common scaling issues such as query optimization and cache invalidation.
How Prospective Brings Local-First to Life
Prospective is the commercial product on top of open-source Perspective, a data visualization tool built on WebAssembly (WASM). Written in C++ and compiled for both WebAssembly and Python which is well-suited for performance on large datasets and real-time analytics—all within the browser.
Features That Set Prospective Apart:
- Client-Side Processing: Perspective runs entirely in the browser, requiring no cloud dependencies.
- Batteries-Included Design: Everything needed to analyze data is self-contained, eliminating external operational overhead.
- Scalable for Millions: With no backend scaling required, Perspective empowers organizations to deliver interactive analytics at a fraction of traditional costs.
- Well-suited for Real-Time Visualization: Perspective is optimized for real-time use-cases by only transferring and (re)rendering delta updates versus entire datasets.
- Data Privacy: Data stays local, addressing security and compliance concerns.
- Shareable Dashboards: Save and share dashboards through a simple URL. Recipients can make their own modifications, ensuring adaptability and collaboration.
Conclusion
As data-driven decision-making becomes essential across common devices, organizations need tooling that meet modern demands without breaking the bank. Currently, Prospective’s local-first approach is one of the only options on the market. We expect and wish for this to change since—
We believe in putting the power back into people's hands.