Epic EHR data management
at
AMC scale.
Chronicles, Clarity, and Caboodle are three distinct data environments. They differ in access patterns, refresh cadence, schema complexity, and how well they suit analytics. Most organizations treat them as one problem. Databasin was built knowing they aren't.
What actually makes Epic data hard to use.
This is not a summary. It is a specific breakdown of the six failure modes that show up in every AMC data engineering engagement.
Dozens of tables required to answer a single clinical question. The schema reflects Epic's internal logic and configuration, not a generic healthcare model. Generic SQL skills are necessary but not sufficient. Deep institutional knowledge of workflows and build matters just as much.
Different combinations of Foundation content, best-practice templates, and local customization across flowsheets, SmartForms, and order sets. SQL that works at one site requires substantial adaptation before it works at another.
New events are delayed until the next refresh window. Teams must explicitly communicate which dashboards show "today" vs. "yesterday" — and that distinction is rarely clear.
Scheduled ETL and CSV exports are the pragmatic workaround for constrained API access. But small changes in report logic or Clarity upgrades silently break downstream analytics. Key measures such as readmission, LOS, RVUs, and denials scatter across multiple fragile pipelines.
Epic's App Orchard covers standard FHIR resources but rarely exposes an institution's full customized data model. For bulk research cohorts or RCM analytics, FHIR complements Clarity access rather than replacing it.
Front-line staff and researchers are told "talk to your Epic reporting team," but those teams are oversubscribed. New extracts and analytic requests take months. New projects begin with data archaeology: exploratory queries, trial and error, consultations with analysts who are already at capacity.
The architecture, layer by layer.
Every design decision explained, from Epic's source environments through a governed medallion lake house to AI-powered querying.
| Layer | What lands here | What happens here | Who uses it |
|---|---|---|---|
| Bronze | Raw Clarity extracts, Caboodle tables, HL7 feeds, and CSV dumps from Reporting Workbench, ingested untransformed and exactly as received from Epic | Schema capture and version tracking. Every extract is timestamped, schema-versioned, and stored immutably. When Clarity upgrades change a column or table structure, the change is logged instead of silently propagating downstream. | Data engineers auditing extraction fidelity, lineage tracing, reprocessing from source when rules change |
| Silver | Validated, standardized, conformance-checked Clarity data: encounters, diagnoses, procedures, orders, charges, payments, flowsheets | Validation, standardization, and Epic-specific business rule application. ICD-10 code normalization, encounter status filtering, charge/payment reconciliation, effective-date handling, and institution-specific mapping logic all run at this layer, before data reaches analysts. | Data engineers building curated marts, Epic analysts validating definitions, compliance and audit teams |
| Gold | Research cohort tables, operational dashboards, RCM analytics marts, quality measure views, population health summaries | Business-ready, governed, trusted. Conformed dimensions (patient, provider, encounter, facility), curated subject-area marts with documented metric definitions. One definition of readmission, one definition of LOS, one definition of denial. The ecosystem enforces them, not individual analysts. | Researchers, clinical operations, finance teams, and administrators working through direct SQL, BI tools, or Databasin's AI query layer |
Why we built it this way, and why the alternatives fail.
How Databasin deploys in an AMC environment.
Talk to an architect.
Not a sales rep.
Technical demos are led by Chris Lundeberg, Co-Founder & CPO. We'll walk through the Epic connector, the medallion pipeline, and the deployment architecture for your environment, down to your Chronicles version and Clarity schema.