Presented by Radu Craioveanu, Director of Software Development, Clinical Systems, Fresenius Medical Care at MongoDB Evenings New England 2017.
resenius is a large healthcare enterprise, specializing in dialysis care. Fresenius' 40,000 clinicians and physicians deliver over 100,000 dialysis treatments per day, across 8 time zones. There is significant pressure to improve treatment outcomes, lower costs, expand the patient coverage, and overall become a Value Based Services provider, sharing the risk with the payers, the insurance companies. This pressures requires Fresenius to adapt, change, and leverage technologies and processes that can enable a rapid transformation to Value Based Care. </br></br>Using technologies and partnerships with players such as MongoDB, Red Hat, and others with a similar, open source innovative approach to progress, Fresenius has been able to implement a healthcare platform that is the foundation onto which the business can transform itself.
MongoDB has enabled Fresenius to achieve high availability of systems across multiple data centers, a data lake concept used for predictive analytics and reporting, enhanced messaging capabilities, fast, effective and distributed archiving, rapid application development via MEAN stacks, and Red Hat Open Shift Docker Container ready-to-use persistence.
MongoDB .local Paris 2020: Upply @MongoDB : Upply : Quand le Machine Learning...
MongoDB in the Healthcare Enterprise
1. FOR INTERNAL PURPOSES ONLY.
Why & When to Use
MongoDB
The use case for Mongo DB in some key applications at
Fresenius
Radu Craioveanu
Director Software Development
Clinical Systems, ITG, FMCNA
2. FOR INTERNAL PURPOSES ONLY.
1. Operational Data Store (ODS)
2. Enterprise Data Service
3. Datamart/Cache
4. Master Data Distribution
5. Single Operational View
System of Record
System of
Engagement
MongoDB Architectural Patterns
Single View Internet of Things Mobile Real-Time Analytics
Treatment Sheet Archive
PANELS
Clinical Record View
Patient Portal
Care Coordination
dabbling dabbling FHIR Lake
Machine Data
Audit
Catalog Personalization Content Management
n/a Doctors Corner
Patient Portal
n/a
4. FOR INTERNAL PURPOSES ONLY.
HIE
Fresenius External
Apps…
Data Layer
DATA WAREHOUSE
APPLICATION DATABASES
Integration - ETL
DATA ACQUISITION
CONFORMANCE & INTEGRATIONS - PUBLISH...
PERIMETER SECURITY
Nephrologists
Other Providers
Ancillary Services
Hospitals
Nursing Homes
SNIFs
Health Plans
CMS
Regulatory Agencies
Social & Community
Services
EXTERNAL SOURCES
EMPI
OTHER FRESENIUS
LINES OF BUSINESS
Spectra Labs
Fresenius Rx
Vascular Care
Urgent Care
Physicians Groups
FRESENIUS KIDNEY CARE
Shared Services
Security, ERP, HR,…
Hosted Locally
Oh wait… ours is a typical
healthcare enterprise
multiplied by 100
Clinical Services
EMR, PHR
Hosted Locally
Financial Services
Admissions, Billing
Hosted Locally
Portal Services
Content
Hosted Locally
Fresenius healthcare enterprise
5. FOR INTERNAL PURPOSES ONLY.
Fresenius Chairside – world’s largest healthcare deployment
up to 100k Tx/day
8 Timezones
6. FOR INTERNAL PURPOSES ONLY.
Chairside application – goal of moving 70 million patient treatment documents
from Oracle to MongoDB
via the Treatment Sheet App for CS 2x and 1x treatments
minimizing the Operational DB to handle 60 days of data only in Oracle DB
Current Challenges Desired Outcomes
Large anticipated growth from 2015-
2020
Easily scalable applications
Long dev cycles Fast, iterative dev cycles
Can’t incorporate diverse data, new
sources coming in from acquisitions
Easy to incorporate any data
High DB spend Lower TCO
Must meet PHI requirements for
HIPPA
Compliance
Single View - 1st MongoDB project at Fresenius 2013-2014
7. FOR INTERNAL PURPOSES ONLY.
Ideal when reads >> writes – retrieve entire document
with one read, no joins
Agility and flexibility
Data model supports business change
Rapidly iterate to meet new requirements
Intuitive, natural data representation
Eliminates ORM layer
Developers are more productive
Reduces the need for joins, disk seeks
Programming is more simple
Performance delivered at scale
{
customer_id : 1,
first_name : "Mark",
last_name : "Smith",
city : "San Francisco",
phones: [
{
number : “1-212-777-1212”,
dnc : true,
type : “home”
},
number : “1-212-777-1213”,
type : “cell”
}]
}
Single View - MongoDB as perfect companion to a Document Model App
8. FOR INTERNAL PURPOSES ONLY.
Single View – began with ‘Create a searchable treatment record archive’
• Opportunity
• Evaluation
Many large system acquisitions
with many different data format
70 million
records to
loaded
40 million
records per year
Searchable,
printable,
auditable
Looked at
MongoDB and
MarkLogic
MongoDB
prevailed
9. FOR INTERNAL PURPOSES ONLY.
Single View – began with ‘Create a searchable treatment record archive’
• Justification for MongoDB
• Introduction and adoption challenges
• Final agreements
Faster
Development
Forward/Backward
Compatibility
Cheaper
Development
Cheaper
Licensing
No DBA
support Fortune 500 ??
Healthcare
needs
ACID
Dev will
co-own
with DBA
Limit the scope
to
Treatment Sheet
Archive
11. FOR INTERNAL PURPOSES ONLY.
Single View Application to Single View First and Operational Data Store
12. FOR INTERNAL PURPOSES ONLY.
• Treatment Sheet Archive
• Clinical Record View CRV
• Acumen Live Patient View
• PANELS Live Patient View, Historical Patient View
• CNU Live Treatment View for CNU enrolled patients
• Patient Trak Live NoShow indication to Sales Force
• AIM Alert Interface Module, support for any source any destination
• PANELS 2.0
• AUDIT service for applications
Single View Read Centric – Proliferation of MongoDB 2014-2015
aimdb 12.760GB
asbdb 18.765GB
auditdb 48.352GB
config 0.001GB
epocdb 0.120GB
evrtdb 0.000GB
panelsdb 1.523GB
patientportaldb 0.079GB
quicklinksdb 0.155GB
rxDomainDb 4.565GB
rxWorkflowDb 6.819GB
hepcdb 0.001GB
ptifdb 1309.119GB
13. FOR INTERNAL PURPOSES ONLY.
Patient Portal – goal of supporting 20,000 home patients
Making self treatment and self charting at home a possibility With Zero downtime
Current Challenges Desired Outcomes
Several data sources and systems are
involved in the home or in clinic
dialysis
Use an event driven architecture to
create a real time synchronization of all
workflows involved in home or in clinic
treatment
Systems have downtime at night or on
weekends
Provide a zero downtime environment
No current write capability into some
systems, or slower, batch mode
capability into some other systems
Allow patients/clinicians to write and read
data from systems in real time
Single View leads the way to the Operational Data Store 2015-2017
Care Coordination – goal of supporting 40,000 clinicians coordinate care for
300,000 patients
Making self treatment and self charting at home a possibility With Zero downtime
14. FOR INTERNAL PURPOSES ONLY.
F5
Liferay
Portal
Oracle
DB
Steel App
F5
Jboss Fuse
Fabric8
Containers
Jboss Fuse
Fabric8
Containers
Jboss Fuse
Fabric8
Containers
Jboss Fuse
Fabric8
Containers
Jboss Fuse
Fabric8
Containers
Jboss Fuse
Fabric8
Containers
MongoDB
Replica 3
OpenLink
eCC SQL DB
A, B, C
eCC A, B, C
MongoDB
Replica 1 2
Steel App
AD LDS
HL7 writeSQL read
Boston Waltham
JSON writeJSON read
Active-Active
Active-Active
Active-Active
FHIR DSTU-2
Replica set
Fabric
Single View Dual Write – Patient Portal
15. FOR INTERNAL PURPOSES ONLY.
F5
Liferay
Portal
Oracle
DB
Steel App
F5
Jboss Fuse
Fabric8
Containers
Jboss Fuse
Fabric8
Containers
Jboss Fuse
Fabric8
Containers
Jboss Fuse
Fabric8
Containers
Jboss Fuse
Fabric8
Containers
Jboss Fuse
Fabric8
Containers
MongoDB
Replica 3
OpenLink
eCC SQL DB
A, B, C
eCC A, B, C
Mongo
Replica 1 2
Steel App
AD LDS
HL7 write
Boston Waltham
JSON writeJSON read
Active-Active
Active-Active
Active-Active
FHIR DSTU-2
Replica set
Storage array DR needs to be
fleshed out
Single View Dual Write – Patient Portal
16. FOR INTERNAL PURPOSES ONLY.
Single View First – Fabric Operational Data Store - Live Data and APIs
FHIR
FABRIC
Applications
Enterprise
Applications
Web-based
Applications
{External & Local}
Business Intelligence
Reporting & Analytics
Portal Services
Applications
Enterprise
Applications
Web-based
Applications
{External & Local}
Business Intelligence
Reporting &
Analytics
Portal Services
DATA
Fresenius
Kidney
Partners
Spectra
& Shiel
Fresenius
Vascular
Care
National
Cardio-
vascular
Partners
FMCNA
Lines of Business
Fresenius
Rx
Fresenius
Health
Care
Medspring
Sound
Physicians
FMCNA
Lines of
Business
FHIR Server
Precision Nephrology
Data Transformation
Services
(Restful, FHIR, API…)
Orchestration
Development Platform
Clinical Financial Pharmacy others
Security
Workflow Engine
Healthcare Enterprise
Data
17. FOR INTERNAL PURPOSES ONLY.
Single View First – Fabric manifestation – The Platform and API
17
FABRIC
eCC eCFFHIR
BPM ESB
MS SQL MS SQL
EAP, SPING BOOT
HL7 FHIR API STU-3
JBOSS FUSE INTEGRATION
JBOSS BPM SUITE
COMPONENTS
Security Audit
Cache
Pharm
Rx
MS SQL
KCNG KC EMPIOPEN SOURCE
Clinical
Allergies
Conditions
Procedure
Clinical Impression
Assessment
…
Administration
Patients
Practitioner
Related Person
Organization
Healthcare Service
…
Diagnostics
Observation
Diagnostic Report
Specimen
Imaging Study
….
Medications
Medication
MedicationOrder
MedicationAdmin
Immunization
….
Financial
Coverage
Eligibility
Enrollment
Claim
EOB
….
Workflow
Encounter
Appointment
Schedule
SupplyRequest
SupplyDelivery
….
MongoDB
18. FOR INTERNAL PURPOSES ONLY.
Single View First – Fabric manifestation – The Applications
18
FABRIC
eCC eCFFHIR
BPM ESB
MS SQL MS SQL
EAP, SPING BOOT
HL7 FHIR API STU-3
JBOSS FUSE INTEGRATION
JBOSS BPM SUITE
COMPONENTS
Security Audit
Cache
Pharm
Rx
MS SQL
KCNG KC EMPIOPEN SOURCE
WorkflowComplexity
ePOC
Patient Portal
SOS
PANELS
Patient Trak for Rx
CNU
Chairside
eAccess User Provisioning
Patient Trak for FC
DAMA
Acumen
Compass
P&T Automation
hepC
HCP on Healthcloud
Planned/In Progress
Completed
MongoDB
19. FOR INTERNAL PURPOSES ONLY.
SMART DATA CLINICAL PRECISION
Dual Data Center HA Active-Active on FABRIC
Outputs FHIR based Decision Support and Clinical Quality Measures
Inputs FKC Data and Rules, CMS Data and Rules
Intelligent Compute Engine R Server executing on top of Apache Spark
SMART ID
(OpenID
Connect
OAuth2)
Guidance Response,
Measure, Measure
Report
CARECOORDINATION
Spring
Boot
Container
SPA
SPA
Servic
e
Jboss
EAP
Container
MPA
Financial
Admissions
Point of Care EHR
ASP
.NET
Container
MPA
Clinical EHR
Jboss
EAP
Container
MPA
Real Time Reporting
WebApp
FKCFVC
……
MPA or SPA
SMART on FHIR
Connector
APACHE
SPARK
APACHE
SPARK
National
Provider
Directory
R Server
CMS,
other
sources
SPA
SPA
Servic
e
Care Coordination
Spring
Boot
Container
DATA WAREHOUSE
APACHE
SPARK
Patient, Physician
Clinician Portal
Single View First and Real Time Predictive, Descriptive Analytics
20. FOR INTERNAL PURPOSES ONLY.
SMART DATA CLINICAL PRECISION
Dual Data Center HA Active-Active on FABRIC
Outputs FHIR based Decision Support and Clinical Quality Measures
Inputs FKC Data and Rules, CMS Data and Rules
Intelligent Compute Engine R Server executing on top of Apache Spark
R Server
Single View First and Real Time Predictive, Descriptive Analytics
SparkR
JavaSpark
DATA WAREHOUSE
Data Lake
F
A
B
R
I
C
21. FOR INTERNAL PURPOSES ONLY.
• Patient Portal High Availability FHIR
Operational Store
• FHIR AUDIT service for FHIR stack(s)
• ePOC FHIR Operational Store
• hepC FHIR Operational Store
Current Uses and Successes with MongoDB at Fresenius
• Treatment Sheet Archive
• Clinical Record View CRV
• Acumen Live Patient View
• PANELS Live Patient View, Historical Patient View
• CNU Live Treatment View for CNU enrolled patients
• Patient Trak Live NoShow indication to SalesForce
• AIM Alert Interface Module, support for any source any destination
• PANELS 2.0
• AUDIT service for applications
22. FOR INTERNAL PURPOSES ONLY.
aimdb 12.760GB
asbdb 18.765GB
auditdb 48.352GB
config 0.001GB
epocdb 0.120GB
evrtdb 0.000GB
panelsdb 1.523GB
patientportaldb 0.079GB
quicklinksdb 0.155GB
rxDomainDb 4.565GB
rxWorkflowDb 6.819GB
hepcdb 0.001GB
ptifdb 1309.119GB
Current Uses and Successes with MongoDB at Fresenius
Hinweis der Redaktion
&lt;number&gt;
&lt;number&gt;
Arch – Today for Chris
Enforce discipline
What are the gaps
Exposure to deep dive
Policy guidelines and enforcement
Data Model - Data
&lt;number&gt;
&lt;number&gt;
Potential Challenges
Pre-Believer
High database spend
Forego revenue as a result of being late to market
Too much time spent maintaining vs. innovating
Unable to respond to opportunities and threats
Unable to attract and retain top technical talent
Pre-Buyer
Hard to extract accurate, timely information from free resoures
Lack resources, processes and infrastructure to move apps quickly from dev to prod
Missed SLAs (performance, downtime)
Lost revenue
Failed projects
Desired Outcomes
Pre-Believer
Lower database TCO
Faster time to value
Innovative apps drive increased market share
Business can use technology to seize opportunities and react to threats
Able to attract and retain top technical talent
Pre-Buyer
Have the people, processes, and technology to design, build and manage apps
Easy to operationalize systems safely
High success rate of building and promoting apps to production
Reduced cost, risk and time to adopt new technology
Avoid lost revenue and penalties
Improved uptime
&lt;number&gt;
&lt;number&gt;
Potential Challenges
Pre-Believer
High database spend
Forego revenue as a result of being late to market
Too much time spent maintaining vs. innovating
Unable to respond to opportunities and threats
Unable to attract and retain top technical talent
Pre-Buyer
Hard to extract accurate, timely information from free resoures
Lack resources, processes and infrastructure to move apps quickly from dev to prod
Missed SLAs (performance, downtime)
Lost revenue
Failed projects
Desired Outcomes
Pre-Believer
Lower database TCO
Faster time to value
Innovative apps drive increased market share
Business can use technology to seize opportunities and react to threats
Able to attract and retain top technical talent
Pre-Buyer
Have the people, processes, and technology to design, build and manage apps
Easy to operationalize systems safely
High success rate of building and promoting apps to production
Reduced cost, risk and time to adopt new technology
Avoid lost revenue and penalties
Improved uptime
&lt;number&gt;