Your SlideShare is downloading. ×
Model-Driven Development of Semantic Mashup Applications with the Open-Source InfoGrid Internet Graph Database
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Saving this for later?

Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime - even offline.

Text the download link to your phone

Standard text messaging rates apply

Model-Driven Development of Semantic Mashup Applications with the Open-Source InfoGrid Internet Graph Database

3,168
views

Published on

Talk at Enterprise Data World 2010 in San Francisco. …

Talk at Enterprise Data World 2010 in San Francisco.

Outlines the difficulties in developing enterprise mash-up applications that aggregate data semantically and in real time. Gives an overview how the InfoGrid internet graph database can help.

Published in: Technology

0 Comments
5 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
3,168
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
19
Comments
0
Likes
5
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide






























































  • Transcript

    • 1. Model-Driven Development of Semantic Mashup Applications With the Open-Source InfoGrid NoSQL Internet Graph Database Johannes Ernst NetMesh Inc. · InfoGrid.org Blog: netmesh.info/jernst · Twitter: @Johannes_Ernst · e-mail: jernst@netmesh.us Most recent version of this presentation is at: http://infogrid.org/wiki/Docs/SlidePresentations License: 2010 Johannes Ernst, Creative Commons Attribution-Share Alike 3.0
    • 2. Key Points
    • 3. Key Points • NoSQL is smoking hot in 2010
    • 4. Key Points • NoSQL is smoking hot in 2010 • Think "object graph" instead of "table" for more effective model-driven development
    • 5. Key Points • NoSQL is smoking hot in 2010 • Think "object graph" instead of "table" for more effective model-driven development • InfoGrid.org – graph database driven by conceptual-level models with code generator, REST, Java, open-source/commercial
    • 6. Key Points • NoSQL is smoking hot in 2010 • Think "object graph" instead of "table" for more effective model-driven development • InfoGrid.org – graph database driven by conceptual-level models with code generator, REST, Java, open-source/commercial • Semantically-aware mashups need not be as hard as with an RDBMS
    • 7. The Mashup Problem ?
    • 8. Example Object Graph :Complaint :Complaint Name: Pain Name: Blood Pressure HasChiefComplaint :Doctor Name: Smith :OfficeVisit Date: 2009/12/15 :OfficeVisit Date: 2010/01/01 Prescribed During With Lipitor: By :Doctor Medication Name: Miller Amount: 100 John Doe: Patient ActiveMeds: MRN: 123456789 MedCollection Age: 57 Ibuprofen: Medication Amount: 50
    • 9. Example Object Graph System 3 :Complaint :Complaint Name: Pain Name: Blood Pressure System 4 HasChiefComplaint :Doctor Name: Smith System 2 :OfficeVisit Date: 2009/12/15 :OfficeVisit Date: 2010/01/01 Prescribed During With System 1 By Lipitor: :Doctor Medication Name: Miller Amount: 100 System 5 John Doe: Patient ActiveMeds: MRN: 123456789 MedCollection Age: 57 Ibuprofen: Medication Amount: 50
    • 10. The Problem • Semantically aggregate data from multiple sources • Highly interrelated data • Real-time updates (downstream and upstream) • Decentralized schema evolution
    • 11. InfoGrid An Internet Graph Database
    • 12. Types of Data Organization
    • 13. Types of Data Organization Tabular: SQL relational database
    • 14. Types of Data Organization Tabular: SQL relational database Documents: NoSQL document database
    • 15. Types of Data Organization Tabular: SQL relational database Documents: NoSQL Lookup: NoSQL document database key-value database
    • 16. Types of Data Organization Tabular: SQL Graph of instances: NoSQL relational database graph database : abc attribute: 1 : def : xyz attribute: 2 attribute: 5 : xyz attribute: 4 : def attribute: 3 Documents: NoSQL Lookup: NoSQL document database key-value database
    • 17. Types of Data Organization Tabular: SQL Graph of instances: NoSQL relational database graph database : abc attribute: 1 : def : xyz attribute: 2 attribute: 5 : xyz attribute: 4 : def attribute: 3 Documents: NoSQL Lookup: NoSQL document database key-value database
    • 18. Schema-Less vs. Model-Driven Instances in Graph DB: Type: OfficeVisit Type: By Date: 2009/12/15 Type: With Type: Patient Type: Doctor MRN: 123456789 Name: Miller Age: 57 Type: OfficeVisit Date: 2010/01/01 Type: Patient Type: Doctor MRN: 987654321 Name: Smith Type: OfficeVisit Age: 22 Date: 2009/12/02
    • 19. Schema-Less vs. Model-Driven Instances in Graph DB: :OfficeVisit Type: OfficeVisit Date: 2009/12/15 Type: By By With Date: 2009/12/15 Type: With Type: Patient John Doe: Patient Type: Doctor :Doctor MRN: 123456789 MRN: 123456789 Name: Miller Name: Miller Age: 57 Age: 57 :OfficeVisit Type: OfficeVisit Date: 2010/01/01 Date: 2010/01/01 :Doctor Jane Doe: Patient Name: Smith MRN: 987654321 Type: Doctor Age: 22 :OfficeVisit Type: Patient MRN: 987654321 Name: Smith Date: 2009/12/02 Type: OfficeVisit Age: 22 Date: 2009/12/02
    • 20. Schema-Less vs. Model-Driven Instances in Graph DB: :OfficeVisit Type: OfficeVisit Date: 2009/12/15 Type: By By With Date: 2009/12/15 Type: With Type: Patient John Doe: Patient Type: Doctor :Doctor MRN: 123456789 MRN: 123456789 Name: Miller Name: Miller Age: 57 Age: 57 :OfficeVisit Type: OfficeVisit Date: 2010/01/01 Date: 2010/01/01 :Doctor Jane Doe: Patient Name: Smith MRN: 987654321 Type: Doctor Age: 22 :OfficeVisit Type: Patient MRN: 987654321 Name: Smith Date: 2009/12/02 Type: OfficeVisit Age: 22 Date: 2009/12/02 Graph DB Meta-data: Patient By OfficeVisit With Doctor informal MRN Age 1..1 0..* Date 0..* 1..2 Name
    • 21. Internet Graph Database Web clients URL URL URL… URL… Viewlets Graph Database Probe Probe Probe Probe Probe
    • 22. InfoGrid Development Process
    • 23. InfoGrid Development Process 1. Create domain model
    • 24. InfoGrid Development Process 1. Create domain model 2. Identify data sources & key URLs
    • 25. InfoGrid Development Process 1. Create domain model 2. Identify data sources & key URLs 3. Develop probes || Develop viewlets (parallel)
    • 26. InfoGrid Development Process 1. Create domain model 2. Identify data sources & key URLs 3. Develop probes || Develop viewlets (parallel) 4. Integrate and test
    • 27. InfoGrid Development Process 1. Create domain model 2. Identify data sources & key URLs 3. Develop probes || Develop viewlets (parallel) 4. Integrate and test 5. Incrementally augment: model, probes, viewlets
    • 28. InfoGrid Development Process 1. Create domain model 2. Identify data sources & key URLs 3. Develop probes || Develop viewlets (parallel) 4. Integrate and test 5. Incrementally augment: model, probes, viewlets
    • 29. Why Does It Matter?
    • 30. Why Does It Matter? • Better: model-driven dynamic graph is better abstraction than inflexible tables
    • 31. Why Does It Matter? • Better: model-driven dynamic graph is better abstraction than inflexible tables • Faster: reuse and compose instead of reinvent
    • 32. Why Does It Matter? • Better: model-driven dynamic graph is better abstraction than inflexible tables • Faster: reuse and compose instead of reinvent • Cheaper: development is shorter, but maintenance/increments much simpler
    • 33. More information http://infogrid.org/ @InfoGrid jernst@netmesh.us