
Energizing the Grid with Interactive Analytics
Fractal EMS is a turnkey energy‑storage controls platform that bundles software, industrial hardware, integration and trading services into a single package for utility‑scale batteries. From a fleet‑wide web UI, operators can command, control and monitor every inverter, battery and market trade — whether the site is downtown or far off the beaten path. The company already manages 12 GWh of live storage and has 29 GWh awarded worldwide. That's a lot of power! :)

Business Value
Battery plants live and die by split‑second decisions: dispatch too slowly and you miss a price spike; miss a cell‑level anomaly and you strand megawatts. By embedding Perspective inside its control stack, Fractal gives traders and operators a single, real‑time dashboard that fuses market, weather and high‑frequency device telemetry. The result: faster bids, fewer unplanned outages and happier asset owners.
Technical Value
Perspective’s WebAssembly engine renders millions of rows in‑browser, eliminating the heavy servers (and Cloud bills) Fractal previously needed for visualization. Users slice and dice streams locally, build formulas, and save interactive dashboards — all without backend redeploys. For a plant that produces 20 million points / second, client‑side horsepower matters.
"I haven’t seen another tool that can merge all our streams and graph them in real time with the same flexibility."
— Rahul Verma, VP of Analytics
The Challenge: Blending Operations & Trading Data at Massive Scale
- Exploding telemetry – Each 100 MW site continuously emits 200,000‑500,000 points per second; adding cell‑level data increases telemetry to 4-10 million points/sec.
- Market cadence – North‑American energy prices settle every 5‑15 minutes, forcing automated decisions with human oversight.
- Legacy visualization pains – Previous solutions choked on >100 k points and required bespoke connectors.
- Dev‑heavy customization – Feature requests spawned endless widget work; users could not self‑serve.
The team needed a browser‑first renderer that could:
(1) stream millions of rows smoothly,
(2) let end‑users craft their own dashboard layouts, and
(3) run on‑premise when internet connection drops at remote plants.
The Solution: Config‑Driven Perspective Servers

Fractal EMS architected a lightweight Perspective Server that reads Kafka topics, hydrates Apache‑Arrow tables, and exposes them over WebSocket. Everything is driven by a YAML file – stream in a topic, map a schema, pick a port, done. A forthcoming “Perspective Manager” UI will auto‑generate those configs on the fly.
Technology Stack at a glance
Ingest -> Kafka, InfluxDB, Telegraf
Stream Processing -> Python & Java services
Visualization -> Perspective (WASM) embedded in React / <perspective-viewer>
Delivery Layer -> Kafka > Perspective Server > WebSocket > React Front-end
Deployment -> AWS EC2
"The first time we pre‑loaded one million rows it finished in a second — I literally said wow."
— Rick, Principal Engineer.

Technical Implementation: From Sensor to Screen
- Data Collection Site and market feeds land in Kafka with up to seven days of history per topic.
- Server Spin‑Up A config file declares which topics compose a dashboard; the Perspective Server subscribes concurrently via
asyncio
. - Local-first Compute In near future, processing will run on the customer‑owned rack, cutting cloud compute spend and ensuring dashboards survive internet outages.
"Why rent compute when our customers already bought the servers?" Rahul notes. - Front‑End Freedom Operators and traders drag‑drop charts, add formulas and save dashboard layouts; a tiny JSON config is emailed to colleagues to replicate the exact view.
The Business Impact
- Faster trades – Unified dashboards collapsed decision time to seconds, capturing price spikes within a single settlement window.
- Lower cloud bill – Offloading visualization to the browser helped trim a six‑figure Cloud Compute bill.
- Self‑service analytics – Power users craft their own pages; engineering spends less time chasing “one‑off” requests.
"We simply drop a JSON layout in Slack; seconds later their screen matches ours — no more endless ‘can you add this widget?’ emails."
— Rahul
Conclusion: Batteries Included, Servers Optional
By pairing Perspective’s client‑side engine with a config‑driven backend, Fractal EMS delivers gigawatt‑scale situational awareness without the usual heavyweight BI stack. Traders, operators and maintenance crews share the same live truth — whether they’re in a Houston trading room or a desert substation running on backup LTE.
As Fractal scales to cell‑level telemetry and multi‑GW fleets, Perspective remains an integral part of interactive analytics.
Special Thanks
- Rahul Verma, VP of Analytics
- Rick Miller, Principal Engineer
- Tri Nguyen, Principal Engineer
- Roman Kasparian, Front‑End Engineer