280 likes | 520 Views
Oracle Health Information Exchange. A Case Study : Brazil’s National Healthcare Card. About Us. Luiz Paulo Ribeiro Manager – Service Oriented Architecture luiz.ribeiro@cds.com.br Pedro Lauro Engineer – Service Oriented Architecture pedro.lauro@cds.com.br.
E N D
Oracle Health Information Exchange A Case Study: Brazil’s National Healthcare Card
About Us • Luiz Paulo Ribeiro • Manager – Service Oriented Architecture • luiz.ribeiro@cds.com.br • Pedro Lauro • Engineer – Service Oriented Architecture • pedro.lauro@cds.com.br
Healthcare system in Brazil “Health is a social right under the terms of this constitution” – 6th art. Constitution of 1988. (section) • At the end of 80’s, the Constitution of 1988 defined that is a duty of the state to ensure the health of the population. • To comply with this requirement the SUS was created ( SistemaÚnico de Saúde – Unified Health System) in order to provide universal healthcare access. • In 1990 the Brazilian congress passed a bill that describes the details about SUS. • DATASUS is the Ministry of Health department responsible to provide necessary IT resources to the ministry.
Healthcare system in Brazil Brazil is the only country with more than 100 million people which took the challenge of having an universal and free public healthcare system. In august 2013, Brazil had a total resident population of 201.032.714.
Healthcare system in Brazil How big is SUS? • It is available to the entire population – 200+ millions residents. • 3.7 billions ambulatory procedures per year • 531 millions medical appointments per year • 11 millions medical admissions • Largest public organ transplant system in the world • 32,8 millions oncological procedures realized (2010-2012) • 97% of the chemotherapy procedures in Brazil are made by SUS • More than 255 thousand healthcare providers • 20 main IT systems are in production to support SUS • 120+ legacy systems and systems in development
National Healthcare Card It identifies a SUS user (patient), allowing to create a link between the patients, healthcare professionals and providers where the healthcare services actions were taken. Objectives • To promote a correct identification and individualization of health information • To provide demographic informations to support decision making of healthcare policies • To provide electronic access of health informations to citizens • To promote interoperability between health IT systems with the national SUS patient database. (CADSUS)
CADSUS – Cadastro Nacional de Usuários do SUS Platform responsible to promote interoperability and access to National Healthcare Card database. • It was introduced in 2001. Since then, the concept changed until becomes a patient-centric database. • Until 2012, CADSUS 2.0 was the version used. It was based in simple Java/JAX-WS implementation running on Glassfish. • In May 2012, CADSUS 4.0 was introduced to segregate the CADSUS 2.0 implementation and a new web UI was created - the CADSUS-Web • By the end of 2012, CADUS 4.5 was put in place in order to migrate the database from Rio to Brasília. A whole new architecture based in Oracle SOA Suite and Java EE • CADSUS 4.5 became the base version to the OHMPI implementation – CADSUS 5.0
Challenges Data Decentralization • The information comes from many different levels (Municipal, State and Federal) • For example, in Brazil there are more than 5 thousand cities
Challenges Too many duplicate records and inaccurate data
CADSUS 4.0 Where the evolution begins • CADSUS was the first system to be migrated to the new Oracle Fusion Middleware platform • It is based entirely in Oracle solutions, from the servers’ OS to security infrastructure • CADSUS 4.0 was design to segregate the 2.0 version • A full set of Oracle VM were design to scale future implementations
CADSUS 4.0 Where the evolution begins
CADSUS Web Government web based cloud system • CADSUS Web was developed to be used as a new UI to CADSUS 4.0 • It is available to any SUS’ healthcare provider to locate and to source new patients • The solution was design to assist those providers that don’t have IT resources to keep patient records or to send messages to CADSUS • Hosted in an Oracle Weblogic Cluster • First version went live in 2 months
CADSUS 4.5 Backend migration to a whole new platform • The segregation process of the old 2.0 version made a simpler creation of new backend services • Use of ETL process to migrate the data from a 10 years old database to a new patient-centric model • SOA components were create to support the new model as well as new business rules
CADSUS 4.5 Features • More than 70 millions records were cleansed during the data migration process • More than ten internal systems are now consuming patients informations from a single source • Download of a copy of National Healthcare Card with an Android CADSUS app • Based on Enterprise Java Beans and JPA/ Hibernate • Use of standardized service contracts • Phonetic search using Oracle Text • Real-time business statics with Oracle BAM and BIEE • Geographical analysis based on Oracle Spatial
CADSUS 4.5 Numbers – May/ Aug 2013 • 3000+ business transactions per minute • 1.2M+ records update • 14M+ patients record lookup • 16M+ patients search • 3M+ new patients records • 5M+ healthcare cards printed in A4 paper • 180K+ plastic healthcare cards printed • 190K+ paper healthcare stamps printed
CADSUS 4.5 But there weremore challenges • The matching feature was too simple • There is no support to multiple systems to source records • There is no merge and unmerge feature • Duplicates still getting into the database • There wasn’t merge process during the data migration process • Only CADSUS Web can securely manipulate the information
CADSUS 5.0 A step forward to HIE • The Oracle Healthcare Master Person Index introduced the features which were missing to CADSUS • Along with the Oracle SOA products, OHMPI allows CADSUS to support multiple source systems, identify duplicates and merge/unmerge records. • Full history of transactions • Use of the same Oracle Text feature introduced in CADSUS 4.5 for phonetic search • Performance boost with Oracle Exadata. Up to 20x faster in phonetics search and matching
Deployed Oracle Products • Oracle Healthcare Master Person Index • Oracle WebLogic Server • Oracle JVM JRockit • Oracle Access Manager • Oracle Virtual Directory • Oracle Data Integration • Oracle SOA Suite • Oracle Service Bus • Oracle BPM Suite • Oracle HTTP Server • Oracle Enterprise Gateway • Oracle Enterprise Manager Grid Control 12c • Oracle Enterprise Repository • Oracle Service Registry • Oracle Virtual Machine • Oracle Linux • Oracle BIEE • Oracle Identity Manger • Oracle Traffic Director
Match Configuration • Patient’s name -> +13 / -2 • Mother’s name -> +13 / -2 • City of Birth -> +13 / -2 • Data of Birth -> +10 / -10 • Gender -> +1 / -10 • CPF -> +10 / -30 • Assumed Match Threshold: >= 41 • Potential Duplicated: >= 28 and < 41
Performance Requirement • Initial load • The load size is 243M source records. • 2 TB of disk space • It takes 6 days to process on 30 Cores • Live system • 180K searches per day • 60K updates per day • 10K inserts per day • More than 5000 merges and unmerges in a day
Single Index View for Brazilian Patients • As result of the first full test bulk loader process: • 30 Million duplicates found • 10 Million Automatic Matches found