License-usage analytics for a design-automation startup

· case study · anonymized

A design-automation startup we work with serves chip-design teams, the kind where a single simulation run can burn six figures in tool licenses, and a project runs thousands of them. The licenses themselves are metered by FlexLM daemons that write logs nobody reads.

Their observation: cost analysis in chip design is still manual, and has been for twenty years. The data to answer "are we over-subscribed or under-subscribed on these licenses" exists, checkout/denial events in FlexLM logs, job data in the compute scheduler, but it’s scattered across log formats that were never meant to be joined, on NFS and S3.

The data

  • 51 CSV exports across 9 test runs, covering teams up to 650 engineers
  • largest single file: 2.06M rows
  • consolidated into 4 indexes: license events (~7.4M rows), a utilization time series (~3.6M rows), plus feature and denial dimensions

The shape of the problem

This is a retrieval problem wearing an analytics costume. The questions are point lookups and filtered aggregations over messy, append-only event data: which features hit denial storms, which users hold licenses idle, what does peak concurrent usage look like per feature per week. No transactional writes, no BI modeling project, the logs are the schema.

That’s the workload Infino is built around: land the events once as Parquet, index them in place, and let license questions run as search and SQL against the same files. The deliverable their customers want is one report: you are seriously under-subscribed on these licenses, seriously over-subscribed on those, and fine on the rest.