TinkerPop and Titan from a Python State of Mind

Post on 23-Jan-2017

1.135 views 0 download

Transcript of TinkerPop and Titan from a Python State of Mind

TinkerPop and Titan from a Python State of MindNYC PyData 2015Brian Corbin and

Denise Gosnell, PhD

Twitter & github: @corbinbs

@denisekgosnellgremlin-python

2

What is PokitDok?

PokitDok is the operating system

for digital health

Twitter & github: @corbinbs

@denisekgosnell

3

Xerox and HealthSpot: Powered by PokitDok

Twitter & github: @corbinbs

@denisekgosnell

4

PokitDok APIs: Marketplace

5

PokitDok APIs

The business of health,for developers.

https://platform.pokitdok.com/

Twitter & github: @corbinbs

@denisekgosnell

6

What we built:APIsOur marketplaceThe HealthGraph A Gremlin-Python Library

Why?

Test Drive.

TinkerPop and Titan from a Python State of Mind

Twitter & github: @corbinbs

@denisekgosnell

7

HealthGraph: Property Graph Model

Twitter & github: @corbinbs

@denisekgosnell

8HealthGraph: Top 100k Providers

9

HealthGraph: Data Inferences

Twitter & github: @corbinbs

@denisekgosnell

10

HealthGraph: Predictive Models

• What is the probability claim X will be denied?

• A new customer just searched for “family practice”; recommend the best provider within 10 miles.

• Given a CPT code, what is the expected reimbursement rate from insurance company A in zip code 37601?

Twitter & github: @corbinbs

@denisekgosnell

11

Our HealthGraph Production Stack

• Titan 0.5.3

• TinkerPop’s Blueprints 2.30

• Cassandra and Elastic Search

Gremlin-Python

Twitter & github: @corbinbs

@denisekgosnell

12

• Lighter Context Switching between development tools and environments

• Incompatible syntax issues between Gremlin and Python

• Using Python.

Gremlin-PythonMotivation

Twitter & github: @corbinbs

@denisekgosnell

13

Bi-Partite Graph Recommendation System

Twitter & github: @corbinbs

@denisekgosnell

Customer

viewed

Doctor

14

Bi-Partite Graph Recommendation System

Twitter & github: @corbinbs

@denisekgosnell

Customer

viewed

Doctor

15

Bi-Partite Graph Recommendation System

Twitter & github: @corbinbs

@denisekgosnell

Customer

viewed

Doctor

16

Bi-Partite Graph Recommendation System

Twitter & github: @corbinbs

@denisekgosnell

Customer

viewed

Doctor

17

Bi-Partite Graph Recommendation System

Twitter & github: @corbinbs

@denisekgosnell

Customer

viewed

Doctor

18

Option 1: Grab our docker container1. Install Dockerhttps://www.docker.com/docker-toolbox

2. Jump in the “Docker Quickstart Terminal”

3. Fire up our example container:docker run -i -t pokitdok/gremlin-python-test-drive

Option 2: Shell script install1. Clone our repo:https://github.com/pokitdok/gremlin-python

2. Run the set-up scripts:$./test_drive/setup.sh &&./test_drive/run.sh

Gremlin-Python Test Drive Twitter & github: @corbinbs

@denisekgosnell

19

Shout-outs:Jython projectRexpro Python

Advantages:Initial exploratory value via quickly

standing up graph traversals via python syntax

Better team integration across API development/data science

Gremlin-Python Conclusion

Twitter & github: @corbinbs

@denisekgosnell

20

1. Transition to Titan 1.0 and Tinkerpop 3.0

2. Keep the communication open between the data team and the API team to continue building out this integration

3. Deploy Python implementations of fundamental graph algorithms:

BFS, DFS, Dijkstra, … etc

Gremthon Future Work Twitter & github: @corbinbs

@denisekgosnell

TinkerPop and Titan from a Python State of Mind

Brian Corbin and Denise Gosnell, PhD

Twitter & github: @corbinbs

@denisekgosnellgremlin-python