Download - Mongo DB & Healthcare

Transcript
Page 1: Mongo DB & Healthcare

Mongo DB & Healthcare

Charles Boicey, MS, RN-BCInformatics Solutions Architect

UC Irvine HealthJune 6, 2013

Page 2: Mongo DB & Healthcare
Page 3: Mongo DB & Healthcare

Early Work with MongoDB in Healthcare January – July 2011

Continuity of Care Document Storage and RetrievalDemographics

Patient NameMedical Record NumberDate of BirthAddress

MedicalAllergies and adverse reactionsProblemsMedicationsDiagnostic results

Page 4: Mongo DB & Healthcare
Page 5: Mongo DB & Healthcare

Solution Ingredients• Storage and querying

– NoSQL/Simple/Schema-less database– Advantages

• highly scalable, very flexible, simple– MongoDB

• Representation– JSON

• Connectivity– node.js

• Server side Javascript

• User Interface– Lucene

Page 6: Mongo DB & Healthcare

MongoDB

node.js

mongodbdriver

ClientJavaScript

XML toJSON

Naveen Ashish, PhD

Page 7: Mongo DB & Healthcare

MappyHealth

Brian Norris, MBA, RN-BCCharles Boicey, MS, RN-BCMark Silverberg, MIS Student at GWU

• Now Trending 2012 Challenge Winners– Office of the Assistant Secretary for

Preparedness and Response (ASPR)• Utilized technology from non-healthcare domain

to build a healthcare application

Page 8: Mongo DB & Healthcare

ASPR Now Trending 2012 Challenge Use open source Twitter data Create a web based application that will automatically deliver

a list of the top-five trending illnesses from a specified geographic area in a twenty-four hour period.

Send directly to state and local public health practitioners to use in a variety of ways including: building a baseline of trend data; engaging the public on trending health topics; serving as an indicators of potential health issues emerging in

the population; cross-referencing other data sources.

Page 9: Mongo DB & Healthcare

MappyHealth

Page 10: Mongo DB & Healthcare

Meningitis• Tweets related to two events.

• The first a 3 year old with severe Meningitis in south America

• The second a meningitis death in the United States

• “NCIRE researcher dies from apparent lab-acquired meningitis infection | Outbreak News”

• “Calif. lab worker dies after meningitis infection - A 25-year-old laboratory researcher has died after becoming infe…”

Social Noise Zone

Page 11: Mongo DB & Healthcare

Meningitis heat map of tweets by location in the United States

US and Canada Meningitis Tweet Activity Sept 19th to Oct 19th, 2012

Page 12: Mongo DB & Healthcare

Meningitis qualifier frequency

Meningitis Tweet Qualifier Activity September 19th, 2012 to October 19th, 2012

Page 13: Mongo DB & Healthcare

Finding using Arabic term for “embassy”

This tweets was posted by screen name “CaStRoO” to twitter using facebook with a link to an article about the Turkey embassy bombing - http://www.bbc.co.uk/arabic/worldnews/2013/02/130202_turkey.shtml

Page 14: Mongo DB & Healthcare

Finding using term “bomb” with text containing “make a” & “school”

Page 15: Mongo DB & Healthcare

US Turkey Embassy ExplosionFireworks Explosion Chinese Highway Kills 26

Page 16: Mongo DB & Healthcare

Spike in tweets about Department of State

U.S. Secretary of State Kerry Addresses Nation

Page 17: Mongo DB & Healthcare

HerokuMongoDb

Simple but powerful modular pipeline

Realtime Tweets

Term Matching

Highly Scalable on Amazon EC2

Sentiment Analysis

Location Analysis

Statistical Analysis

Graphical Interface Updates

Webserver Presentation

While initially focused on Twitter data this is only the beginning and so much more can be done with other social data sets

MashupLayerSeparate from Heroku for Security

Purposes

CacheLayer

Page 18: Mongo DB & Healthcare

Tech Stuff• Amazon Linux• MongoDB 2.2• Ruby 1.8.7• MongoMapper• Ruby Gem

• Tweets from Twitter API + Tweet Analysis + Metadata stored in MongoDB

• About 12 MapReduce patterns written in JS and wrapped with Ruby so server daemons can easily invoke them

• Web interface queries the collections the MapReduce jobs output to. Results are cashed/MongoDB not hit for each session.

Page 19: Mongo DB & Healthcare

More Tech Stuff# Invocation: MapReduceSimpleCounts.build("field_to_analyze")class MapReduceSimpleCounts def self.map(str) "function(){attr = this.#{str};emit(attr,1);}" end def self.reduce "function(prev, current) {var count = 0;for (index in current) { count += current[index]; } return count; } " end def self.build(str = "place.full_name", query = {}) Tweet.collection.map_reduce(map(str), reduce, :query => query, :out => {:replace => "count_by_#{str}"}) endend

Page 20: Mongo DB & Healthcare

Sentiment Analysis

• The application of natural language processing, computational linguistics and text analytics to identify and extract subjective information.

• What is being said about a person or about an organization. Sentiment can be positive or negative.

• Early identification of negative sentiment allows an organization to respond immediately and avoid being blindsided. Positive sentiment allows for marketing opportunities.

Page 21: Mongo DB & Healthcare

A Few Numbers

Twitter500 million tweets per day

and climbing.

Page 22: Mongo DB & Healthcare
Page 23: Mongo DB & Healthcare

More from Twitter, Instagram & Foursquare

Page 24: Mongo DB & Healthcare

Social MediaEngagement/Surveillance Dashboard

• Sentiment Analysis• Healthcare: Patients & UCI• Research: Exercise Physiology• Cross Domain