Your SlideShare is downloading. ×

Neo4EMF eclipsecon 2013

888

Published on

NEO4EMF, a Neo4j-based model repository and persistence framework allowing on-demand loading, storage, and unloading of large-scale EMF models. …

NEO4EMF, a Neo4j-based model repository and persistence framework allowing on-demand loading, storage, and unloading of large-scale EMF models.
Check us at : https://neo4emf.com
Fork us at : https://github.com/neo4emf/Neo4EMF

Published in: Technology, News & Politics
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
888
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
16
Comments
0
Likes
1
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. Neo4EMF : Big Models made possible Amine BENELALLAM AtlanMod Research Team EclipseCon Europe 2013, Ludwigsburgh, Germany October 31 1
  • 2. Context Model Management Model Transformation Model Versionning © AtlanMod - atlanmod-contact@mines-nantes.fr …. 2
  • 3. Challenges + solutions Lazy loading On demand loading Save if dirty Effective Backend 3
  • 4. Database Market Relational DBs NoSQL DBs Column Document Key/value Graph © AtlanMod - atlanmod-contact@mines-nantes.fr 4
  • 5. Graphs & MDD Natural Representation Models as attributed directed graphs Graphs Model Management Tech High performance Advanced graph traversal algorithms © AtlanMod - atlanmod-contact@mines-nantes.fr 5
  • 6. Towards Graph DBs to Persist Models © AtlanMod - atlanmod-contact@mines-nantes.fr 6
  • 7. Neo4J Short presentation Basic concepts 7
  • 8. Neo4j : Short Introduction Neo4j project started in 2007 in Sweden First Version (1.0) was released in 2010 More than 10 Versions (active Community) Current Version 2.0.0-M06 (MileStone) Labelled nodes Constrained DB 8
  • 9. They trust Neo4j 9
  • 10. Neo4j Graph DB concepts 10
  • 11. Neo4j Graph DB concepts 11
  • 12. Neo4j Graph DB concepts 12
  • 13. Neo4j Graph DB concepts 13
  • 14. Neo4EMF Integration Framework Process Data-Representation What’s new in Neo4EMF Changelog Partitioning Java Ecore codegen 14
  • 15. Neo4EMF = EMF+Neo4J_embedded 15
  • 16. Framework Neo4emfUtils Neo4j NeoJava codeGen ChangeLog Neo4EMF Eclipse Modeling Framework © AtlanMod - atlanmod-contact@mines-nantes.fr 16
  • 17. Process Edit/ create Data Check changes Notify get / set Retrieve data Neo4j Resource 17
  • 18. Data Representation 18
  • 19. Data Representation 19
  • 20. Neo4EMF-Object A Neo4EMF-Object is simply a : MinimalEObjectImpl Additional metadata (ID) Notifies changes and access Stores an adapter to capture notifications and store them in the changelog © AtlanMod - atlanmod-contact@mines-nantes.fr 20
  • 21. Save : ChangeLog Lightweight entry set that casts and records changes notifications © AtlanMod - atlanmod-contact@mines-nantes.fr 21
  • 22. Load : Partitioning Two kinds of partitions Flat partitions (to gather elements of the same type) Tailed partitions (to hold references to other objects) Partitions might be flexible Static/Dynamic Partitioning Full-Load © AtlanMod - atlanmod-contact@mines-nantes.fr 22
  • 23. Unload : Access History The Unloader uses the data access history recorder to unload partitions Unloading strategies : LIFO, FIFO Least recently used Least frequenty used © AtlanMod - atlanmod-contact@mines-nantes.fr 23
  • 24. NeoJava Codegen Adapted codegen templates for : Refined on-demand loading Data access notification Costimized AdapterFactory to cast notifications and store them in the changelog Separated objects and data © AtlanMod - atlanmod-contact@mines-nantes.fr 24
  • 25. DemonstrationScenario Generate Query Java.ecore (it can be any other plugin) org.eclipse.emf.ecore © AtlanMod - atlanmod-contact@mines-nantes.fr 25
  • 26. Still more to come Concurrent Access Distributed models Synchronized unloading More Ecore utilities © AtlanMod - atlanmod-contact@mines-nantes.fr 26
  • 27. Questions © AtlanMod - atlanmod-contact@mines-nantes.fr 27
  • 28. Don’t forget to Check us out : www.neo4emf.com Contact us : neo4emf@gmail.co m Fork us at : https://github.com/ neo4emf/Neo4EMF © AtlanMod - atlanmod-contact@mines-nantes.fr 28

×