SlideShare uma empresa Scribd logo
1 de 19
Baixar para ler offline
Nortal NHS in Lithuania - study on DB
implementations for FHIR server
Igor Bossenko, Jan Jasinski
Nortal
19.11.2015
•  Start: 2013-12
•  LIVE: 2015-09
LT NHS project
Develop
standard and
platform for
health
information
exchange.
Centralize
health-related
classifiers and
registries.
Gather medical
information from
Healthcare
Providers
Provide access
to health related
information for:
• Patients;
• Health-care
providers;
• Covernment.
Architecture
  FHIR DSTU1
  REST + Documents
  Conformance: yes
  Profiles: no
  Security: OAuth + VPN
  Server: Java + OSGI
  Integration: Fuse ESB
  Database: Oracle 11
#1 Table per resource or datatype 4
#1 Query examples 5
Select * from Condition
where Encounter_ID = 123;
Select * from Human_Name_Part
where Name_Part_Code = ‘family’ and value = ‘XXX’;
#1 Table per resource or datatype 6
•  Pros
  Classical RDBS solution
  Easy to understand for
non-FHIR people
  Suitable with the most BI
tools
  Good response time
  Ability to optimize
searches
  Work on every database
•  Cons
  DB structure too ugly
  Too static, does not
support new resources or
profiles
  Any resource extension
need additional
programming
  Searches are hardcoded,
no ability to add new
search parameters
dynamically
#2 Resource store + custom index 7
#2 Query examples 8
select *
from idx_string t1
inner join idx.idx_Reference ref1 on
ref1.resource_type='Encounter' and
ref1.ref_resource_type='Patient’ and
ref1.search_param='patient' and
ref1.ref_rid = t1.rid
where t1.search_param='family'
and t1.text_value=’XXX' and t1.resource_type='Patient’
select key from idx_string s
where s.resource_type='Patient'
and s.text_value like '%XXX%'
#2 Resource store + custom index 9
•  Pros
  Works on every database
  Flexible
  Easy to understand
  Easy to develop
•  Cons
  Requires additional space
for custom index tables
and DB indexes for
custom index tables
  Does not cover searches
on data outside from index
(custom searches in
JSON/XML content)
  Not scalable
#3 Non-SQL + partitioning + JSON/XML index 10
#3 PostgreSQL JSONB query examples 11
select id from fhir.patient
where content @> '{"name":[{"use":"official", "family":[”XXX"]}]}'
select c.id
from practitioner p
inner join condition c on
c.content -> 'asserter' ->> 'reference' = p.id
where p.content ->> 'name' ~ '"family":[ []*”XXX"*[ ]]'
#3 Non-SQL + partitioning + JSON/XML index 12
•  Pros
  Very flexible
  Good response time
•  Cons
  Implementation depends
on database
#4 BigData 13
•  Apache HBase
•  Apache Phoenix
•  Custom indexes on JSON content for simple queries
•  Work In Progress on complex queries
#4 BigData 14
•  Pros
  Very scalable
  Index-based search is
very quick
•  Cons
  Environment installation is
more complex
  Too new (for me)
  Currently we don’t have
solution for complex
queries (WIP)
Test data 15
Resource Rows
Practitioner 23 187
Patient 1 625 084
Encounter 11 125 528
Condition 17 375 336
DiagnosticReport 31 719 078
Response times (avg) 16
Test #1 Table per
resource
#2 Custom
index
#3 JSON index
+ partitioning
#4
BigData
Get patient record by resource Id 20 ms 100 ms 20 ms 20 ms
Find patients by exact name (=‘FAMILY’) 35 ms 35 ms 120 ms 30 ms
Find patients by name part (like '%FAMILY%') 150 ms 34000 ms 70 ms WIP
Find patients by exact system and identifier 35 ms 50 ms 115 ms 30 ms
Find all patients born in 1961 550 ms 803 ms 267 ms WIP
Find all encounters where patient name contain some word 1000 ms 3000 ms 1000 ms WIP
Find encounters of practitioner X since Y 350 ms ~60000 ms 233 ms WIP
Evaluation criteria 17
•  Flexibility – possibility to add new resources and
extend existing ones
•  Response time – the amount of time taken to
respond to a request
•  Scalability – capability of a system to handle a
growing amount of data
•  Independent – ability to work on different databases
Estimation of Search implementations 18
Features #1 Table per
Resource
#2 Custom index #3 Non-SQL +
JSON/XML index
#4 BigData
Response time
(simple queries)
Response time
(complex queries)
WIP
Flexibility /
extensibility
Scalability
Platform
independent
Yes Yes No No
Easy to develop WIP
nortal.com
Contact us
Igor.Bossenko@gmail.com
Jan.Jasinski@nortal.com
19

Mais conteúdo relacionado

Mais procurados

Enabling Clinical Data Reuse with openEHR Data Warehouse Environments
Enabling Clinical Data Reuse with openEHR Data Warehouse EnvironmentsEnabling Clinical Data Reuse with openEHR Data Warehouse Environments
Enabling Clinical Data Reuse with openEHR Data Warehouse EnvironmentsLuis Marco Ruiz
 
EHRbase, open source openEHR CDR
EHRbase, open source openEHR CDREHRbase, open source openEHR CDR
EHRbase, open source openEHR CDRopenEHR-Japan
 
Building a Scenario using clinFHIR
Building a Scenario using clinFHIRBuilding a Scenario using clinFHIR
Building a Scenario using clinFHIRDevDays
 
Allotrope foundation vanderwall_and_little_bio_it_world_2016
Allotrope foundation vanderwall_and_little_bio_it_world_2016Allotrope foundation vanderwall_and_little_bio_it_world_2016
Allotrope foundation vanderwall_and_little_bio_it_world_2016OSTHUS
 
Developing openEHR EHRs - core functionalities
Developing openEHR EHRs - core functionalitiesDeveloping openEHR EHRs - core functionalities
Developing openEHR EHRs - core functionalitiesPablo Pazos
 
openEHR Medinfo2015 Brazil Sponsor Session
openEHR Medinfo2015 Brazil Sponsor SessionopenEHR Medinfo2015 Brazil Sponsor Session
openEHR Medinfo2015 Brazil Sponsor SessionopenEHR Foundation
 
Dev days 2017 referrals (brian postlethwaite)
Dev days 2017 referrals (brian postlethwaite)Dev days 2017 referrals (brian postlethwaite)
Dev days 2017 referrals (brian postlethwaite)DevDays
 
Carpathian Research Group LLC
Carpathian Research Group LLCCarpathian Research Group LLC
Carpathian Research Group LLCYuriy Bortnyk
 
SAS - the world leader in medical data processing
SAS - the world leader in medical data processingSAS - the world leader in medical data processing
SAS - the world leader in medical data processingOleksandr Terentiev
 
Standards in health informatics - problem, clinical models and terminology
Standards in health informatics - problem, clinical models and terminologyStandards in health informatics - problem, clinical models and terminology
Standards in health informatics - problem, clinical models and terminologySilje Ljosland Bakke
 
SCOPE Summit - Applying the OMOP data model & OHDSI software to national Euro...
SCOPE Summit - Applying the OMOP data model & OHDSI software to national Euro...SCOPE Summit - Applying the OMOP data model & OHDSI software to national Euro...
SCOPE Summit - Applying the OMOP data model & OHDSI software to national Euro...Kees van Bochove
 
Explaining the importance of a database lock in clinical research
Explaining the importance of a database lock in clinical researchExplaining the importance of a database lock in clinical research
Explaining the importance of a database lock in clinical researchTrialJoin
 
Design and implementation of Clinical Databases using openEHR
Design and implementation of Clinical Databases using openEHRDesign and implementation of Clinical Databases using openEHR
Design and implementation of Clinical Databases using openEHRPablo Pazos
 
Gaining credit for sharing research data: Viewpoints on Data Publishing
Gaining credit for sharing research data: Viewpoints on Data PublishingGaining credit for sharing research data: Viewpoints on Data Publishing
Gaining credit for sharing research data: Viewpoints on Data PublishingVarsha Khodiyar
 
openEHR template development for COVID-19
openEHR template development for COVID-19openEHR template development for COVID-19
openEHR template development for COVID-19openEHR-Japan
 
Guideline based CDSS for COVID-19
Guideline based CDSS for COVID-19Guideline based CDSS for COVID-19
Guideline based CDSS for COVID-19openEHR-Japan
 
Bringing Things Together and Linking to Health Information using openEHR
Bringing Things Together and Linking to Health Information using openEHRBringing Things Together and Linking to Health Information using openEHR
Bringing Things Together and Linking to Health Information using openEHRKoray Atalag
 
Royal Bolton Hospital case study
Royal Bolton Hospital case studyRoyal Bolton Hospital case study
Royal Bolton Hospital case studygsearle
 

Mais procurados (20)

Final-Presentation
Final-PresentationFinal-Presentation
Final-Presentation
 
Enabling Clinical Data Reuse with openEHR Data Warehouse Environments
Enabling Clinical Data Reuse with openEHR Data Warehouse EnvironmentsEnabling Clinical Data Reuse with openEHR Data Warehouse Environments
Enabling Clinical Data Reuse with openEHR Data Warehouse Environments
 
EHRbase, open source openEHR CDR
EHRbase, open source openEHR CDREHRbase, open source openEHR CDR
EHRbase, open source openEHR CDR
 
Building a Scenario using clinFHIR
Building a Scenario using clinFHIRBuilding a Scenario using clinFHIR
Building a Scenario using clinFHIR
 
Allotrope foundation vanderwall_and_little_bio_it_world_2016
Allotrope foundation vanderwall_and_little_bio_it_world_2016Allotrope foundation vanderwall_and_little_bio_it_world_2016
Allotrope foundation vanderwall_and_little_bio_it_world_2016
 
Developing openEHR EHRs - core functionalities
Developing openEHR EHRs - core functionalitiesDeveloping openEHR EHRs - core functionalities
Developing openEHR EHRs - core functionalities
 
eHealth Foundations: Can openEHR Provide One Layer?
eHealth Foundations: Can openEHR Provide One Layer?eHealth Foundations: Can openEHR Provide One Layer?
eHealth Foundations: Can openEHR Provide One Layer?
 
openEHR Medinfo2015 Brazil Sponsor Session
openEHR Medinfo2015 Brazil Sponsor SessionopenEHR Medinfo2015 Brazil Sponsor Session
openEHR Medinfo2015 Brazil Sponsor Session
 
Dev days 2017 referrals (brian postlethwaite)
Dev days 2017 referrals (brian postlethwaite)Dev days 2017 referrals (brian postlethwaite)
Dev days 2017 referrals (brian postlethwaite)
 
Carpathian Research Group LLC
Carpathian Research Group LLCCarpathian Research Group LLC
Carpathian Research Group LLC
 
SAS - the world leader in medical data processing
SAS - the world leader in medical data processingSAS - the world leader in medical data processing
SAS - the world leader in medical data processing
 
Standards in health informatics - problem, clinical models and terminology
Standards in health informatics - problem, clinical models and terminologyStandards in health informatics - problem, clinical models and terminology
Standards in health informatics - problem, clinical models and terminology
 
SCOPE Summit - Applying the OMOP data model & OHDSI software to national Euro...
SCOPE Summit - Applying the OMOP data model & OHDSI software to national Euro...SCOPE Summit - Applying the OMOP data model & OHDSI software to national Euro...
SCOPE Summit - Applying the OMOP data model & OHDSI software to national Euro...
 
Explaining the importance of a database lock in clinical research
Explaining the importance of a database lock in clinical researchExplaining the importance of a database lock in clinical research
Explaining the importance of a database lock in clinical research
 
Design and implementation of Clinical Databases using openEHR
Design and implementation of Clinical Databases using openEHRDesign and implementation of Clinical Databases using openEHR
Design and implementation of Clinical Databases using openEHR
 
Gaining credit for sharing research data: Viewpoints on Data Publishing
Gaining credit for sharing research data: Viewpoints on Data PublishingGaining credit for sharing research data: Viewpoints on Data Publishing
Gaining credit for sharing research data: Viewpoints on Data Publishing
 
openEHR template development for COVID-19
openEHR template development for COVID-19openEHR template development for COVID-19
openEHR template development for COVID-19
 
Guideline based CDSS for COVID-19
Guideline based CDSS for COVID-19Guideline based CDSS for COVID-19
Guideline based CDSS for COVID-19
 
Bringing Things Together and Linking to Health Information using openEHR
Bringing Things Together and Linking to Health Information using openEHRBringing Things Together and Linking to Health Information using openEHR
Bringing Things Together and Linking to Health Information using openEHR
 
Royal Bolton Hospital case study
Royal Bolton Hospital case studyRoyal Bolton Hospital case study
Royal Bolton Hospital case study
 

Destaque

Introduction to HL7 FHIR
Introduction to HL7 FHIRIntroduction to HL7 FHIR
Introduction to HL7 FHIRIgor Bossenko
 
Dave’s guitar shop
Dave’s guitar shopDave’s guitar shop
Dave’s guitar shoptannerjohns
 
Data Collection in Research
Data Collection in ResearchData Collection in Research
Data Collection in ResearchAbhijeet Birari
 
Social help in india
Social help in indiaSocial help in india
Social help in indiaVir Choksi
 
Analysis of Magazine Covers
Analysis of Magazine CoversAnalysis of Magazine Covers
Analysis of Magazine CoversDan Lewsley
 
Promenade des Anglais Apartment For Sale, Nice, France
Promenade des Anglais Apartment For Sale, Nice, France Promenade des Anglais Apartment For Sale, Nice, France
Promenade des Anglais Apartment For Sale, Nice, France contact107
 
Tugas Presentasi Fahmy Husnulyaqin
Tugas Presentasi  Fahmy HusnulyaqinTugas Presentasi  Fahmy Husnulyaqin
Tugas Presentasi Fahmy Husnulyaqinfahmyhusnulyaqin
 
De santurce à bilbao (andrés) envoyé
De santurce à bilbao (andrés) envoyéDe santurce à bilbao (andrés) envoyé
De santurce à bilbao (andrés) envoyéandres8008
 
LinkedIn Contact Management Proposal, UXDi
LinkedIn Contact Management Proposal, UXDiLinkedIn Contact Management Proposal, UXDi
LinkedIn Contact Management Proposal, UXDiLinda Joy
 
Herschberger Permaculture garden/Community Garden Park Forest/Naperville Project
Herschberger Permaculture garden/Community Garden Park Forest/Naperville ProjectHerschberger Permaculture garden/Community Garden Park Forest/Naperville Project
Herschberger Permaculture garden/Community Garden Park Forest/Naperville ProjectCommunityVision169
 
About bininj manbolh project slide presentation
About bininj manbolh project slide presentationAbout bininj manbolh project slide presentation
About bininj manbolh project slide presentationBen Tyler
 
Wis - Pourquoi choisir les métiers du web ?
Wis - Pourquoi choisir les métiers du web ?Wis - Pourquoi choisir les métiers du web ?
Wis - Pourquoi choisir les métiers du web ?WIS Ecoles de l'internet
 
Подход к решению data mining задач
Подход к решению data mining задачПодход к решению data mining задач
Подход к решению data mining задачhusniyarova
 
Herschberger: Permaculture Project
Herschberger: Permaculture ProjectHerschberger: Permaculture Project
Herschberger: Permaculture ProjectCommunityVision169
 

Destaque (20)

Introduction to HL7 FHIR
Introduction to HL7 FHIRIntroduction to HL7 FHIR
Introduction to HL7 FHIR
 
Dave’s guitar shop
Dave’s guitar shopDave’s guitar shop
Dave’s guitar shop
 
Data Collection in Research
Data Collection in ResearchData Collection in Research
Data Collection in Research
 
Social help in india
Social help in indiaSocial help in india
Social help in india
 
Analysis of Magazine Covers
Analysis of Magazine CoversAnalysis of Magazine Covers
Analysis of Magazine Covers
 
Promenade des Anglais Apartment For Sale, Nice, France
Promenade des Anglais Apartment For Sale, Nice, France Promenade des Anglais Apartment For Sale, Nice, France
Promenade des Anglais Apartment For Sale, Nice, France
 
Prontestantesimo
ProntestantesimoProntestantesimo
Prontestantesimo
 
Tugas Presentasi Fahmy Husnulyaqin
Tugas Presentasi  Fahmy HusnulyaqinTugas Presentasi  Fahmy Husnulyaqin
Tugas Presentasi Fahmy Husnulyaqin
 
De santurce à bilbao (andrés) envoyé
De santurce à bilbao (andrés) envoyéDe santurce à bilbao (andrés) envoyé
De santurce à bilbao (andrés) envoyé
 
LinkedIn Contact Management Proposal, UXDi
LinkedIn Contact Management Proposal, UXDiLinkedIn Contact Management Proposal, UXDi
LinkedIn Contact Management Proposal, UXDi
 
hashing hash
hashing hash hashing hash
hashing hash
 
Pneumática básica
Pneumática básicaPneumática básica
Pneumática básica
 
Herschberger Permaculture garden/Community Garden Park Forest/Naperville Project
Herschberger Permaculture garden/Community Garden Park Forest/Naperville ProjectHerschberger Permaculture garden/Community Garden Park Forest/Naperville Project
Herschberger Permaculture garden/Community Garden Park Forest/Naperville Project
 
About bininj manbolh project slide presentation
About bininj manbolh project slide presentationAbout bininj manbolh project slide presentation
About bininj manbolh project slide presentation
 
Wis - Pourquoi choisir les métiers du web ?
Wis - Pourquoi choisir les métiers du web ?Wis - Pourquoi choisir les métiers du web ?
Wis - Pourquoi choisir les métiers du web ?
 
Подход к решению data mining задач
Подход к решению data mining задачПодход к решению data mining задач
Подход к решению data mining задач
 
ChiesaProtestante
ChiesaProtestanteChiesaProtestante
ChiesaProtestante
 
Picadillo
PicadilloPicadillo
Picadillo
 
Herschberger: Permaculture Project
Herschberger: Permaculture ProjectHerschberger: Permaculture Project
Herschberger: Permaculture Project
 
Effective presentation
Effective presentationEffective presentation
Effective presentation
 

Semelhante a FHIR Developer Days 2015. Study on db implementations for FHIR server

UCSF Informatics Day 2014 - Doug Berman, "A Brief Tour of UCSF’s Clinical Dat...
UCSF Informatics Day 2014 - Doug Berman, "A Brief Tour of UCSF’s Clinical Dat...UCSF Informatics Day 2014 - Doug Berman, "A Brief Tour of UCSF’s Clinical Dat...
UCSF Informatics Day 2014 - Doug Berman, "A Brief Tour of UCSF’s Clinical Dat...CTSI at UCSF
 
Big Data at Geisinger Health System: Big Wins in a Short Time
Big Data at Geisinger Health System: Big Wins in a Short TimeBig Data at Geisinger Health System: Big Wins in a Short Time
Big Data at Geisinger Health System: Big Wins in a Short TimeDataWorks Summit
 
Finding and Accessing Human Genomics Datasets
Finding and Accessing Human Genomics DatasetsFinding and Accessing Human Genomics Datasets
Finding and Accessing Human Genomics DatasetsManuel Corpas
 
SciDataCon - How to increase accessibility and reuse for clinical and persona...
SciDataCon - How to increase accessibility and reuse for clinical and persona...SciDataCon - How to increase accessibility and reuse for clinical and persona...
SciDataCon - How to increase accessibility and reuse for clinical and persona...Fiona Nielsen
 
Introduction to FHIR - New Zealand Seminar, June 2014
Introduction to FHIR - New Zealand Seminar, June 2014Introduction to FHIR - New Zealand Seminar, June 2014
Introduction to FHIR - New Zealand Seminar, June 2014David Hay
 
(BAC208) Bursting to the Cloud: Deploying a Hybrid Cloud Storage Solution wit...
(BAC208) Bursting to the Cloud: Deploying a Hybrid Cloud Storage Solution wit...(BAC208) Bursting to the Cloud: Deploying a Hybrid Cloud Storage Solution wit...
(BAC208) Bursting to the Cloud: Deploying a Hybrid Cloud Storage Solution wit...Amazon Web Services
 
Solving the Disconnected Data Problem in Healthcare Using MongoDB
Solving the Disconnected Data Problem in Healthcare Using MongoDBSolving the Disconnected Data Problem in Healthcare Using MongoDB
Solving the Disconnected Data Problem in Healthcare Using MongoDBMongoDB
 
Safe Haven in a Box, Petros Papapanagiotou
Safe Haven in a Box, Petros PapapanagiotouSafe Haven in a Box, Petros Papapanagiotou
Safe Haven in a Box, Petros PapapanagiotouUlrik Lyngs
 
Big data's impact on healthcare
Big data's impact on healthcareBig data's impact on healthcare
Big data's impact on healthcareRené Kuipers
 
Next generation electronic medical records and search a test implementation i...
Next generation electronic medical records and search a test implementation i...Next generation electronic medical records and search a test implementation i...
Next generation electronic medical records and search a test implementation i...lucenerevolution
 
Linked APIs for Life Sciences Tutorial at SWAT4LS 3011
Linked APIs for Life Sciences Tutorial at SWAT4LS 3011Linked APIs for Life Sciences Tutorial at SWAT4LS 3011
Linked APIs for Life Sciences Tutorial at SWAT4LS 3011sspeiser
 
Data Café — A Platform For Creating Biomedical Data Lakes
Data Café — A Platform For Creating Biomedical Data LakesData Café — A Platform For Creating Biomedical Data Lakes
Data Café — A Platform For Creating Biomedical Data LakesPradeeban Kathiravelu, Ph.D.
 
FHIR intro and background at HL7 Germany 2014
FHIR intro and background at HL7 Germany 2014FHIR intro and background at HL7 Germany 2014
FHIR intro and background at HL7 Germany 2014Ewout Kramer
 
Data discovery and sharing at UCLH
Data discovery and sharing at UCLHData discovery and sharing at UCLH
Data discovery and sharing at UCLHJisc
 
Capturing and Analyzing Publication, Citation and Usage Data for Contextual C...
Capturing and Analyzing Publication, Citation and Usage Data for Contextual C...Capturing and Analyzing Publication, Citation and Usage Data for Contextual C...
Capturing and Analyzing Publication, Citation and Usage Data for Contextual C...NASIG
 
All In - Migrating a Genomics Pipeline from BASH/Hive to Spark (Azure Databri...
All In - Migrating a Genomics Pipeline from BASH/Hive to Spark (Azure Databri...All In - Migrating a Genomics Pipeline from BASH/Hive to Spark (Azure Databri...
All In - Migrating a Genomics Pipeline from BASH/Hive to Spark (Azure Databri...Databricks
 
Workshop - finding and accessing data - Cambridge August 22 2016
Workshop - finding and accessing data - Cambridge August 22 2016Workshop - finding and accessing data - Cambridge August 22 2016
Workshop - finding and accessing data - Cambridge August 22 2016Fiona Nielsen
 
FHIR - as a new currency of exchange in New Zealand
FHIR - as a new currency of exchange in New ZealandFHIR - as a new currency of exchange in New Zealand
FHIR - as a new currency of exchange in New ZealandDavid Hay
 

Semelhante a FHIR Developer Days 2015. Study on db implementations for FHIR server (20)

UCSF Informatics Day 2014 - Doug Berman, "A Brief Tour of UCSF’s Clinical Dat...
UCSF Informatics Day 2014 - Doug Berman, "A Brief Tour of UCSF’s Clinical Dat...UCSF Informatics Day 2014 - Doug Berman, "A Brief Tour of UCSF’s Clinical Dat...
UCSF Informatics Day 2014 - Doug Berman, "A Brief Tour of UCSF’s Clinical Dat...
 
Big Data at Geisinger Health System: Big Wins in a Short Time
Big Data at Geisinger Health System: Big Wins in a Short TimeBig Data at Geisinger Health System: Big Wins in a Short Time
Big Data at Geisinger Health System: Big Wins in a Short Time
 
Finding and Accessing Human Genomics Datasets
Finding and Accessing Human Genomics DatasetsFinding and Accessing Human Genomics Datasets
Finding and Accessing Human Genomics Datasets
 
SciDataCon - How to increase accessibility and reuse for clinical and persona...
SciDataCon - How to increase accessibility and reuse for clinical and persona...SciDataCon - How to increase accessibility and reuse for clinical and persona...
SciDataCon - How to increase accessibility and reuse for clinical and persona...
 
Introduction to FHIR - New Zealand Seminar, June 2014
Introduction to FHIR - New Zealand Seminar, June 2014Introduction to FHIR - New Zealand Seminar, June 2014
Introduction to FHIR - New Zealand Seminar, June 2014
 
(BAC208) Bursting to the Cloud: Deploying a Hybrid Cloud Storage Solution wit...
(BAC208) Bursting to the Cloud: Deploying a Hybrid Cloud Storage Solution wit...(BAC208) Bursting to the Cloud: Deploying a Hybrid Cloud Storage Solution wit...
(BAC208) Bursting to the Cloud: Deploying a Hybrid Cloud Storage Solution wit...
 
Solving the Disconnected Data Problem in Healthcare Using MongoDB
Solving the Disconnected Data Problem in Healthcare Using MongoDBSolving the Disconnected Data Problem in Healthcare Using MongoDB
Solving the Disconnected Data Problem in Healthcare Using MongoDB
 
Safe Haven in a Box, Petros Papapanagiotou
Safe Haven in a Box, Petros PapapanagiotouSafe Haven in a Box, Petros Papapanagiotou
Safe Haven in a Box, Petros Papapanagiotou
 
Big data's impact on healthcare
Big data's impact on healthcareBig data's impact on healthcare
Big data's impact on healthcare
 
Next generation electronic medical records and search a test implementation i...
Next generation electronic medical records and search a test implementation i...Next generation electronic medical records and search a test implementation i...
Next generation electronic medical records and search a test implementation i...
 
Linked APIs for Life Sciences Tutorial at SWAT4LS 3011
Linked APIs for Life Sciences Tutorial at SWAT4LS 3011Linked APIs for Life Sciences Tutorial at SWAT4LS 3011
Linked APIs for Life Sciences Tutorial at SWAT4LS 3011
 
Data Café — A Platform For Creating Biomedical Data Lakes
Data Café — A Platform For Creating Biomedical Data LakesData Café — A Platform For Creating Biomedical Data Lakes
Data Café — A Platform For Creating Biomedical Data Lakes
 
FHIR intro and background at HL7 Germany 2014
FHIR intro and background at HL7 Germany 2014FHIR intro and background at HL7 Germany 2014
FHIR intro and background at HL7 Germany 2014
 
Data discovery and sharing at UCLH
Data discovery and sharing at UCLHData discovery and sharing at UCLH
Data discovery and sharing at UCLH
 
Capturing and Analyzing Publication, Citation and Usage Data for Contextual C...
Capturing and Analyzing Publication, Citation and Usage Data for Contextual C...Capturing and Analyzing Publication, Citation and Usage Data for Contextual C...
Capturing and Analyzing Publication, Citation and Usage Data for Contextual C...
 
All In - Migrating a Genomics Pipeline from BASH/Hive to Spark (Azure Databri...
All In - Migrating a Genomics Pipeline from BASH/Hive to Spark (Azure Databri...All In - Migrating a Genomics Pipeline from BASH/Hive to Spark (Azure Databri...
All In - Migrating a Genomics Pipeline from BASH/Hive to Spark (Azure Databri...
 
Workshop - finding and accessing data - Cambridge August 22 2016
Workshop - finding and accessing data - Cambridge August 22 2016Workshop - finding and accessing data - Cambridge August 22 2016
Workshop - finding and accessing data - Cambridge August 22 2016
 
Dr. Eliot Siegel: Watson and Deep QA Software in Pursuit of Personalized Medi...
Dr. Eliot Siegel: Watson and Deep QA Software in Pursuit of Personalized Medi...Dr. Eliot Siegel: Watson and Deep QA Software in Pursuit of Personalized Medi...
Dr. Eliot Siegel: Watson and Deep QA Software in Pursuit of Personalized Medi...
 
FHIR - as a new currency of exchange in New Zealand
FHIR - as a new currency of exchange in New ZealandFHIR - as a new currency of exchange in New Zealand
FHIR - as a new currency of exchange in New Zealand
 
10th Annual Utah's Health Services Research Conference - Data Quality in Mult...
10th Annual Utah's Health Services Research Conference - Data Quality in Mult...10th Annual Utah's Health Services Research Conference - Data Quality in Mult...
10th Annual Utah's Health Services Research Conference - Data Quality in Mult...
 

Último

Announcing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK SoftwareAnnouncing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK SoftwareJim McKeeth
 
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...WSO2
 
%in Benoni+277-882-255-28 abortion pills for sale in Benoni
%in Benoni+277-882-255-28 abortion pills for sale in Benoni%in Benoni+277-882-255-28 abortion pills for sale in Benoni
%in Benoni+277-882-255-28 abortion pills for sale in Benonimasabamasaba
 
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...masabamasaba
 
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...masabamasaba
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisamasabamasaba
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension AidPhilip Schwarz
 
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburgmasabamasaba
 
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...Shane Coughlan
 
%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Harare%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Hararemasabamasaba
 
tonesoftg
tonesoftgtonesoftg
tonesoftglanshi9
 
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...WSO2
 
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnAmarnathKambale
 
What Goes Wrong with Language Definitions and How to Improve the Situation
What Goes Wrong with Language Definitions and How to Improve the SituationWhat Goes Wrong with Language Definitions and How to Improve the Situation
What Goes Wrong with Language Definitions and How to Improve the SituationJuha-Pekka Tolvanen
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisamasabamasaba
 
Architecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the pastArchitecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the pastPapp Krisztián
 
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...masabamasaba
 
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...masabamasaba
 
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfonteinmasabamasaba
 
WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?WSO2
 

Último (20)

Announcing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK SoftwareAnnouncing Codolex 2.0 from GDK Software
Announcing Codolex 2.0 from GDK Software
 
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
 
%in Benoni+277-882-255-28 abortion pills for sale in Benoni
%in Benoni+277-882-255-28 abortion pills for sale in Benoni%in Benoni+277-882-255-28 abortion pills for sale in Benoni
%in Benoni+277-882-255-28 abortion pills for sale in Benoni
 
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
 
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
 
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
 
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
 
%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Harare%in Harare+277-882-255-28 abortion pills for sale in Harare
%in Harare+277-882-255-28 abortion pills for sale in Harare
 
tonesoftg
tonesoftgtonesoftg
tonesoftg
 
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
 
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learn
 
What Goes Wrong with Language Definitions and How to Improve the Situation
What Goes Wrong with Language Definitions and How to Improve the SituationWhat Goes Wrong with Language Definitions and How to Improve the Situation
What Goes Wrong with Language Definitions and How to Improve the Situation
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 
Architecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the pastArchitecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the past
 
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
 
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
 
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
 
WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?
 

FHIR Developer Days 2015. Study on db implementations for FHIR server

  • 1. Nortal NHS in Lithuania - study on DB implementations for FHIR server Igor Bossenko, Jan Jasinski Nortal 19.11.2015
  • 2. •  Start: 2013-12 •  LIVE: 2015-09 LT NHS project Develop standard and platform for health information exchange. Centralize health-related classifiers and registries. Gather medical information from Healthcare Providers Provide access to health related information for: • Patients; • Health-care providers; • Covernment.
  • 3. Architecture   FHIR DSTU1   REST + Documents   Conformance: yes   Profiles: no   Security: OAuth + VPN   Server: Java + OSGI   Integration: Fuse ESB   Database: Oracle 11
  • 4. #1 Table per resource or datatype 4
  • 5. #1 Query examples 5 Select * from Condition where Encounter_ID = 123; Select * from Human_Name_Part where Name_Part_Code = ‘family’ and value = ‘XXX’;
  • 6. #1 Table per resource or datatype 6 •  Pros   Classical RDBS solution   Easy to understand for non-FHIR people   Suitable with the most BI tools   Good response time   Ability to optimize searches   Work on every database •  Cons   DB structure too ugly   Too static, does not support new resources or profiles   Any resource extension need additional programming   Searches are hardcoded, no ability to add new search parameters dynamically
  • 7. #2 Resource store + custom index 7
  • 8. #2 Query examples 8 select * from idx_string t1 inner join idx.idx_Reference ref1 on ref1.resource_type='Encounter' and ref1.ref_resource_type='Patient’ and ref1.search_param='patient' and ref1.ref_rid = t1.rid where t1.search_param='family' and t1.text_value=’XXX' and t1.resource_type='Patient’ select key from idx_string s where s.resource_type='Patient' and s.text_value like '%XXX%'
  • 9. #2 Resource store + custom index 9 •  Pros   Works on every database   Flexible   Easy to understand   Easy to develop •  Cons   Requires additional space for custom index tables and DB indexes for custom index tables   Does not cover searches on data outside from index (custom searches in JSON/XML content)   Not scalable
  • 10. #3 Non-SQL + partitioning + JSON/XML index 10
  • 11. #3 PostgreSQL JSONB query examples 11 select id from fhir.patient where content @> '{"name":[{"use":"official", "family":[”XXX"]}]}' select c.id from practitioner p inner join condition c on c.content -> 'asserter' ->> 'reference' = p.id where p.content ->> 'name' ~ '"family":[ []*”XXX"*[ ]]'
  • 12. #3 Non-SQL + partitioning + JSON/XML index 12 •  Pros   Very flexible   Good response time •  Cons   Implementation depends on database
  • 13. #4 BigData 13 •  Apache HBase •  Apache Phoenix •  Custom indexes on JSON content for simple queries •  Work In Progress on complex queries
  • 14. #4 BigData 14 •  Pros   Very scalable   Index-based search is very quick •  Cons   Environment installation is more complex   Too new (for me)   Currently we don’t have solution for complex queries (WIP)
  • 15. Test data 15 Resource Rows Practitioner 23 187 Patient 1 625 084 Encounter 11 125 528 Condition 17 375 336 DiagnosticReport 31 719 078
  • 16. Response times (avg) 16 Test #1 Table per resource #2 Custom index #3 JSON index + partitioning #4 BigData Get patient record by resource Id 20 ms 100 ms 20 ms 20 ms Find patients by exact name (=‘FAMILY’) 35 ms 35 ms 120 ms 30 ms Find patients by name part (like '%FAMILY%') 150 ms 34000 ms 70 ms WIP Find patients by exact system and identifier 35 ms 50 ms 115 ms 30 ms Find all patients born in 1961 550 ms 803 ms 267 ms WIP Find all encounters where patient name contain some word 1000 ms 3000 ms 1000 ms WIP Find encounters of practitioner X since Y 350 ms ~60000 ms 233 ms WIP
  • 17. Evaluation criteria 17 •  Flexibility – possibility to add new resources and extend existing ones •  Response time – the amount of time taken to respond to a request •  Scalability – capability of a system to handle a growing amount of data •  Independent – ability to work on different databases
  • 18. Estimation of Search implementations 18 Features #1 Table per Resource #2 Custom index #3 Non-SQL + JSON/XML index #4 BigData Response time (simple queries) Response time (complex queries) WIP Flexibility / extensibility Scalability Platform independent Yes Yes No No Easy to develop WIP