Download - Next Generation Model Query
![Page 1: Next Generation Model Query](https://reader033.vdocuments.us/reader033/viewer/2022060202/559ba94e1a28abf7658b47c6/html5/thumbnails/1.jpg)
Bernd Kolb
Christian Mohr
Martin Strenge
Boris Gruschko
Next Generation Model QueryFirst Impressions of the
Eclipse Summit Europe 2009
© SAP AG 2009 - licensed under a Creative Commons Attribution-Noncommercial-No Derivative Works 3.0 Germany Licensehttp://creativecommons.org/licenses/by-nc-nd/3.0/de/
![Page 2: Next Generation Model Query](https://reader033.vdocuments.us/reader033/viewer/2022060202/559ba94e1a28abf7658b47c6/html5/thumbnails/2.jpg)
Who needs queries?What's out there?
Short Demo?
Architecture Overview
Index Utilization
Dirty State -
What we Willtalk about
![Page 3: Next Generation Model Query](https://reader033.vdocuments.us/reader033/viewer/2022060202/559ba94e1a28abf7658b47c6/html5/thumbnails/3.jpg)
Who needs Model Queries?SAP‘s Galaxy as a real life example…
![Page 4: Next Generation Model Query](https://reader033.vdocuments.us/reader033/viewer/2022060202/559ba94e1a28abf7658b47c6/html5/thumbnails/4.jpg)
Tree based viewsvisualize models
![Page 5: Next Generation Model Query](https://reader033.vdocuments.us/reader033/viewer/2022060202/559ba94e1a28abf7658b47c6/html5/thumbnails/5.jpg)
The Business ProcessDiagram Editor
![Page 6: Next Generation Model Query](https://reader033.vdocuments.us/reader033/viewer/2022060202/559ba94e1a28abf7658b47c6/html5/thumbnails/6.jpg)
Refactoring operationsaffect referring
elements
![Page 7: Next Generation Model Query](https://reader033.vdocuments.us/reader033/viewer/2022060202/559ba94e1a28abf7658b47c6/html5/thumbnails/7.jpg)
Lists aggregateavailable values
![Page 8: Next Generation Model Query](https://reader033.vdocuments.us/reader033/viewer/2022060202/559ba94e1a28abf7658b47c6/html5/thumbnails/8.jpg)
Type safety
Scoping
Response time
The 4 things thatreally matter
Dirty state
![Page 9: Next Generation Model Query](https://reader033.vdocuments.us/reader033/viewer/2022060202/559ba94e1a28abf7658b47c6/html5/thumbnails/9.jpg)
What‘sout there?
![Page 10: Next Generation Model Query](https://reader033.vdocuments.us/reader033/viewer/2022060202/559ba94e1a28abf7658b47c6/html5/thumbnails/10.jpg)
EMF Query?A perfect match?
![Page 11: Next Generation Model Query](https://reader033.vdocuments.us/reader033/viewer/2022060202/559ba94e1a28abf7658b47c6/html5/thumbnails/11.jpg)
The origin of theNext Generation Query
is a MOF infrastructure
![Page 12: Next Generation Model Query](https://reader033.vdocuments.us/reader033/viewer/2022060202/559ba94e1a28abf7658b47c6/html5/thumbnails/12.jpg)
So let‘s have a lookat the new stuff!
![Page 13: Next Generation Model Query](https://reader033.vdocuments.us/reader033/viewer/2022060202/559ba94e1a28abf7658b47c6/html5/thumbnails/13.jpg)
The LibraryEcore Model
![Page 14: Next Generation Model Query](https://reader033.vdocuments.us/reader033/viewer/2022060202/559ba94e1a28abf7658b47c6/html5/thumbnails/14.jpg)
335 filescontaining...
1 publisher
303 libraries
592 manuscripts
3645 persons
151540 books
![Page 15: Next Generation Model Query](https://reader033.vdocuments.us/reader033/viewer/2022060202/559ba94e1a28abf7658b47c6/html5/thumbnails/15.jpg)
DEMO
![Page 16: Next Generation Model Query](https://reader033.vdocuments.us/reader033/viewer/2022060202/559ba94e1a28abf7658b47c6/html5/thumbnails/16.jpg)
Behind theScenes
![Page 17: Next Generation Model Query](https://reader033.vdocuments.us/reader033/viewer/2022060202/559ba94e1a28abf7658b47c6/html5/thumbnails/17.jpg)
ArchitecturalOverview
Scheduler
Interpreter
Processor
![Page 18: Next Generation Model Query](https://reader033.vdocuments.us/reader033/viewer/2022060202/559ba94e1a28abf7658b47c6/html5/thumbnails/18.jpg)
Processing queries inmultiple backends
In-MemoryProcessor
Interpreter
DatabaseProcessor
Index-basedProcessor
EMF Index DB
![Page 19: Next Generation Model Query](https://reader033.vdocuments.us/reader033/viewer/2022060202/559ba94e1a28abf7658b47c6/html5/thumbnails/19.jpg)
What about theIndex?
![Page 20: Next Generation Model Query](https://reader033.vdocuments.us/reader033/viewer/2022060202/559ba94e1a28abf7658b47c6/html5/thumbnails/20.jpg)
Why an index isnot enough
![Page 21: Next Generation Model Query](https://reader033.vdocuments.us/reader033/viewer/2022060202/559ba94e1a28abf7658b47c6/html5/thumbnails/21.jpg)
Dirty statematters!
![Page 22: Next Generation Model Query](https://reader033.vdocuments.us/reader033/viewer/2022060202/559ba94e1a28abf7658b47c6/html5/thumbnails/22.jpg)
PersistedResource
1
PersistedResource
2
DirtyResource
1DirtyState
PersistentState
Resource 1 Resource 2
![Page 23: Next Generation Model Query](https://reader033.vdocuments.us/reader033/viewer/2022060202/559ba94e1a28abf7658b47c6/html5/thumbnails/23.jpg)
DirtyState
PersistentState
select b, p from Book as b, Person as pwhere b.borrowedBy = p
Person A
Book A
Person B
Resource 1 Resource 2
Book B Index Processor
![Page 24: Next Generation Model Query](https://reader033.vdocuments.us/reader033/viewer/2022060202/559ba94e1a28abf7658b47c6/html5/thumbnails/24.jpg)
DirtyState
PersistentState
select b, p from Book as b, Person as pwhere b.borrowedBy = p
Resource 1 Resource 2
Book A
Person A
Book B Person B
Book A
Person A
Book B
Person C
Person B
In-memoryProcessor
![Page 25: Next Generation Model Query](https://reader033.vdocuments.us/reader033/viewer/2022060202/559ba94e1a28abf7658b47c6/html5/thumbnails/25.jpg)
Book B
DirtyState
PersistentState
select b, p from Book as b, Person as pwhere b.borrowedBy = p
Person A
Book A
Person B
Book B
Person A
Book A
Person B
Person X
Person C
Book C
Resource 1 Resource 2 Resource 3
In-memoryProcessor
IndexProcessor
![Page 26: Next Generation Model Query](https://reader033.vdocuments.us/reader033/viewer/2022060202/559ba94e1a28abf7658b47c6/html5/thumbnails/26.jpg)
DirtyState
PersistentState
select b, p from Book as b, Person as pwhere b.borrowedBy = p
Resource 1 Resource 2 Resource 3
Book B
Person BBook A Person A
Person A
In-memoryProcessor
In-memoryProcessor
IndexProcessor
IndexProcessor
![Page 27: Next Generation Model Query](https://reader033.vdocuments.us/reader033/viewer/2022060202/559ba94e1a28abf7658b47c6/html5/thumbnails/27.jpg)
DirtyState
PersistentState
select b from Book as b, Person as p whereb.borrowedBy = p and p.name = „Abc“ and b.pages > 250
Resource 1 Resource 2 Resource 3
Person B
Book C
Person A
Book D
Book A
Book B
Person C
Person D
Book D
![Page 28: Next Generation Model Query](https://reader033.vdocuments.us/reader033/viewer/2022060202/559ba94e1a28abf7658b47c6/html5/thumbnails/28.jpg)
select b from Book as b, Person as p whereb.borrowedBy = p and p.name = „ABC“ and b.pages > 250
Union(Select[PERSISTENT] b from Book in {NDS} as b, Person as p
in {NDS} whereb.borrowedBy = p and p.name = „ABC“ and b.pages > 250,
Select[MEMORY] b from Book in {DS} as b, Person as p in {DS}where b.borrowedBy = p and p.name = „ABC“ and b.pages > 250,
Select q1.b fromSelect[MEMORY] b from Book in {DS} as b, Person as p in {NDS}
where b.borrowedBy = p and b.pages > 250as q1,Select[PERSISTENT] Person as p in {NDS}
where p.name = „ABC“ as q2where q1.p = q2.p,Select q1.b from
Select[PERSISTENT] b from Book in {NDS} as b, Person as pin {DS} where b.borrowedBy = p and b.pages > 250as q1,
Select[MEMORY] Person as p in {DS}where p.name = „ABC“ as q2
where q1.p = q2.p)
Links inpersistent state
Links indirty state
Links from dirtyinto persistentstate
Links frompersistent intodirty state
![Page 29: Next Generation Model Query](https://reader033.vdocuments.us/reader033/viewer/2022060202/559ba94e1a28abf7658b47c6/html5/thumbnails/29.jpg)
Hierarchicalbackends
In-memory
Filesystem
Database
![Page 30: Next Generation Model Query](https://reader033.vdocuments.us/reader033/viewer/2022060202/559ba94e1a28abf7658b47c6/html5/thumbnails/30.jpg)
TheFuture
![Page 31: Next Generation Model Query](https://reader033.vdocuments.us/reader033/viewer/2022060202/559ba94e1a28abf7658b47c6/html5/thumbnails/31.jpg)
What‘s next?
HeliosInternal clean-up
Optimize execution
Finalize initial release
And beyondExecute against several backends
<< YOUR IDEA GOES HERE>>
![Page 32: Next Generation Model Query](https://reader033.vdocuments.us/reader033/viewer/2022060202/559ba94e1a28abf7658b47c6/html5/thumbnails/32.jpg)
give it a tryfeedback
us
Please
![Page 33: Next Generation Model Query](https://reader033.vdocuments.us/reader033/viewer/2022060202/559ba94e1a28abf7658b47c6/html5/thumbnails/33.jpg)
www.eclipse.org/modeling/emf/
news://news.eclipse.org/eclipse.tools.emf
download
questionS
bernd.kolb / c.mohr /martin.strenge / boris.gruschkO
AT SAP DOT COM