About the company.
BeOne Medicines is a cross-listed cancer-drug company with a portfolio spanning hematology and solid tumors, more than 10,000 employees, and a commercial footprint across 70+ markets.
Their HCP data lake on Amazon Redshift — spanning over 100,000 engagements across payments, publications, trials, events, detailing and sales — had been queryable only by their analytics team.
Why they came to us.
A typical commercial question — “HCPs in our therapeutic area who got more than $10k from competitor X, were principal investigators in a trial, and published more than two papers” — sat in the backlog for days.
They wanted the same Redshift, the same RBAC and the same governance, with a natural-language layer on top. Nothing moved, nothing was copied out.
AnalystIQ never copies data out. Every query runs inside the customer's own warehouse, under their existing role-based access control.
The same warehouse, the same access control, with a natural-language layer on top.
How they set it up.
Four steps, and four Analysts.
Connected Redshift. One read-only role, scoped to seven tables: HCPs, payments, publications, events, trials, detailing and sales.
Built the semantic layer. AnalystIQ profiled the schema and drafted column descriptions; their team curated the join paths between HCPs and the activity tables.
Hired four Analysts. Commercial, Medical Affairs, Trials and Engagement, each bundling the right subset of tables for that team.
Rolled out. Commercial and medical affairs leads got the link. The analytics ticket queue dropped within a week.
The range of questions.
Real questions the team asks every week, grouped by the SQL complexity behind them. Each one was answered without a human writing the query.
Tier 1 — lookups and counts. Seconds, simple SELECT. “List top 5 HCPs with highest payment.” “How many HCPs spoke at ASCO?” “Total detailing count by month.”
Tier 2 — filters, conditionals, ranges. Seconds, WHERE and CASE. “Which HCP has the most journal titles?” “Show HCPs where payment from Pfizer in 2023 was above 10,000 and label them high or low value.”
Tier 3 — cross-table joins. Under ten seconds, multi-table FROM. “Show HCPs who participated in events and received more than $10,000 in payments.” “Show HCPs who spoke at events in 2024 but didn’t publish in 2023.”
Tier 4 — window functions, CTEs, period-over-period. Under fifteen seconds. “RANK HCPs by total payments within each year.” “For HCPs who presented at events, show detailing counts three months before and after.”
Tier 5 — multi-source joins with nested conditions. Under twenty-five seconds. “List HCPs who received money from 3+ pharma companies but never from us.” “HCPs with more than 3 publications, at least 2 events, and payments from 3 or more companies in 2023.”
What changed.
The analytics queue stopped being the bottleneck.
Backlog cleared. Routine HCP, payments and publications questions stopped reaching the analytics team, who refocused on the modelling work a natural-language layer cannot do.
Commercial self-serve at scale. Reps, brand managers and medical affairs leads ask their own questions across 100,000+ HCP engagements and act on the answer the same day.
Same governance. The Redshift read-only role and table-level scoping still enforce who sees what. AnalystIQ never copies data out; every query runs in their warehouse.





















