[go: up one dir, main page]
More Web Proxy on the site http://driver.im/ skip to main content
10.1145/2814251.2814258acmconferencesArticle/Chapter ViewAbstractPublication PagessplashConference Proceedingsconference-collections
research-article

Distributed model-to-model transformation with ATL on MapReduce

Published: 26 October 2015 Publication History

Abstract

Efficient processing of very large models is a key requirement for the adoption of Model-Driven Engineering (MDE) in some industrial contexts. One of the central operations in MDE is rule-based model transformation (MT). It is used to specify manipulation operations over structured data coming in the form of model graphs. However, being based on computationally expensive operations like subgraph isomorphism, MT tools are facing issues on both memory occupancy and execution time while dealing with the increasing model size and complexity. One way to overcome these issues is to exploit the wide availability of distributed clusters in the Cloud for the distributed execution of MT. In this paper, we propose an approach to automatically distribute the execution of model transformations written in a popular MT language, ATL, on top of a well-known distributed programming model, MapReduce. We show how the execution semantics of ATL can be aligned with the MapReduce computation model. We describe the extensions to the ATL transformation engine to enable distribution, and we experimentally demonstrate the scalability of this solution in a reverse-engineering scenario.

References

[1]
Amazon Web Services, Inc. Amazon EMR FAQs, June, 2015. URL : http://aws.amazon.com/elasticmapreduce/ faqs.
[2]
Apache Software Foundation. Apache Hadoop, June, 2015. URL : http://hadoop.apache.org/.
[3]
G. Bergmann, I. Ráth, and D. Varró. Parallelization of Graph Transformation Based on Incremental Pattern Matching. In Electronic Communications of the EASST, volume 18, 2009.
[4]
H. Bruneliére, J. Cabot, G. Dupé, and F. Madiot. MoDisco: A Model Driven Reverse Engineering Framework. Information and Software Technology, 56(8):1012–1032, 2014.
[5]
L. Burgueño, J. Troya, M. Wimmer, and A. Vallecillo. On the Concurrent Execution of Model Transformations with Linda. In Proceeding of the First Workshop on Scalability in MDE, BigMDE ’13, pages 3:1–3:10, New York, NY, USA, 2013. ACM.
[6]
L. Burgueño, E. Syriani, M. Wimmer, J. Gray, and A. Moreno Vallecillo. LinTraP: Primitive Operators for the Execution of Model Transformations with LinTra. In Proceedings of 2nd BigMDE Workshop, volume 1206. CEUR Workshop Proceedings, 2014.
[7]
R. Chaiken, B. Jenkins, P.-Å. Larson, B. Ramsey, D. Shakib, S. Weaver, and J. Zhou. SCOPE: Easy and Efficient Parallel Processing of Massive Data Sets. Proceedings of the VLDB Endowment, 1(2):1265–1276, 2008.
[8]
C. Clasen, M. Didonet Del Fabro, and M. Tisi. Transforming Very Large Models in the Cloud: a Research Roadmap. In First International Workshop on Model-Driven Engineering on and for the Cloud, Copenhagen, Denmark, 2012. Springer.
[9]
V. Cosentino, M. Tisi, and F. Büttner. Analyzing Flowgraphs with ATL. arXiv preprint arXiv:1312.0343, 2013.
[10]
J. Dean and S. Ghemawat. MapReduce: Simplified Data Processing on Large Clusters. In Commun. ACM, volume 51, pages 107–113, NY, USA, 2008. ACM.
[11]
A. Gómez, M. Tisi, G. Sunyé, and J. Cabot. Map-based transparent persistence for very large models. In A. Egyed and I. Schaefer, editors, Proceedings of Fundamental Approaches to Software Engineering, volume 9033 of Lecture Notes in Computer Science, pages 19–34. Springer Berlin Heidelberg, 2015.
[12]
A. Gómoz, A. Benelallam, and M. Tisi. Decentralized Model Persistence for Distributed Computing. In Proceedings of 3rd BigMDE Workshop. CEUR Workshop Proceedings, July 2015.
[13]
to appear.
[14]
T. Horn. The TTC 2013 Flowgraphs Case. arXiv preprint arXiv:1312.0341, 2013.
[15]
G. Imre and G. Mezei. Parallel Graph Transformations on Multicore Systems. In Multicore Software Engineering, Performance, and Tools, volume 7303 of LNCS, pages 86–89. Springer, 2012.
[16]
B. Izsó, G. Szárnyas, I. Ráth, and D. Varró. IncQuery-D Incremental Graph Search in the Cloud. In Proceedings of the Workshop on Scalability in MDE, BigMDE ’13, pages 4:1–4:4, New York, NY, USA, 2013. ACM.
[17]
F. Jouault, F. Allilaire, J. Bézivin, and I. Kurtev. ATL: A Model Transformation Tool. Science of Computer Programming, 72(1- 2):31–39, 2008. Special Issue on 2nd issue of experimental software and toolkits (EST).
[18]
J. Kärnä, J.-P. Tolvanen, and S. Kelly. Evaluating the use of domain-specific modeling in practice. In 9th OOPSLA workshop on Domain-Specific Modeling. Helsinki School of Economics, 2009.
[19]
D. S. Kolovos, R. F. Paige, and F. A. Polack. The epsilon transformation language. In Proceedings of the 1st International Conference on Theory and Practice of Model Transformations, ICMT ’08, pages 46–60, Berlin, Heidelberg, 2008. Springer-Verlag.
[20]
A. Kuhn, G. Murphy, and C. Thompson. An Exploratory Study of Forces and Frictions Affecting Large-Scale Model-Driven Development. In R. France, J. Kazmeier, R. Breu, and C. Atkinson, editors, MDE Languages and Systems, volume 7590 of LNCS, pages 352–367. Springer, 2012.
[21]
M. Lam, R. Sethi, J. Ullman, and A. Aho. Compilers: Principles, Techniques, and Tools. Addison-Wesley, 2006.
[22]
K.-H. Lee, Y.-J. Lee, H. Choi, Y. D. Chung, and B. Moon. Parallel Data Processing with MapReduce: A Survey. In SIGMOD Rec., volume 40, pages 11–20, New York, NY, USA, 2012. ACM.
[23]
G. Malewicz, M. H. Austern, A. J. Bik, J. C. Dehnert, I. Horn, N. Leiser, and G. Czajkowski. Pregel: A System for Largescale Graph Processing. In Proceeding of the 2010 ACM SIGMOD International Conference on Management of Data, SIGMOD ’10, pages 135–146, Indianapolis, Indiana, USA, 2010. ACM.
[24]
G. Mezei, T. Levendovszky, T. Meszaros, and I. Madari. Towards Truly Parallel Model Transformations: A Distributed Pattern Matching Approach. In IEEE EUROCON 2009, pages 403–410. IEEE, 2009.
[25]
Object Management Group. Object Constraint Language, OCL, June, 2015. URL : http://www.omg.org/spec/OCL/.
[26]
Object Management Group. Query/View/Transformation, QVT, June, 2015. URL : http://www.omg.org/spec/QVT/.
[27]
C. Olston, B. Reed, U. Srivastava, R. Kumar, and A. Tomkins. Pig latin: a not-so-foreign language for data processing. In Proceedings of the 2008 ACM SIGMOD international conference on Management of data, pages 1099–1110. ACM, 2008.
[28]
The Apache Software Foundation. Apache HBase, June, 2015. URL : http://hbase.apache.org/.
[29]
The Eclipse Foundation. ATL EMFTVM, June, 2015. URL : https://wiki.eclipse.org/ATL/EMFTVM/.
[30]
A. Thusoo, J. S. Sarma, N. Jain, Z. Shao, P. Chakka, S. Anthony, H. Liu, P. Wyckoff, and R. Murthy. Hive: a warehousing solution over a map-reduce framework. Proceedings of the VLDB Endowment, 2(2):1626–1629, 2009.
[31]
M. Tisi, S. Martínez, and H. Choura. Parallel Execution of ATL Transformation Rules. In Model-Driven Engineering Languages and Systems, volume 8107 of Lecture Notes in Computer Science, pages 656–672. Springer, 2013.
[32]
R. Volk, J. Stengel, and F. Schultmann. Building Information Modeling (BIM) for Existing Buildings: Literature Review and Future Needs. Automation in Construction, 38(0):109–127, 2014.
[33]
A. Yie and D. Wagelaar. Advanced Traceability for ATL. In Proceeding of the 1st International Workshop on Model Transformation with ATL (MtATL), pages 78–87, Nantes, France, 2009.
[34]
S. Zschaler, D. Kolovos, N. Drivalos, R. Paige, and A. Rashid. Domain-specific metamodelling languages for software language engineering. In M. van den Brand, D. Gaševi´c, and J. Gray, editors, Software Language Engineering, volume 5969 of Lecture Notes in Computer Science, pages 334–353. Springer Berlin Heidelberg, 2010.

Cited By

View all

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Conferences
SLE 2015: Proceedings of the 2015 ACM SIGPLAN International Conference on Software Language Engineering
October 2015
172 pages
ISBN:9781450336864
DOI:10.1145/2814251
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 26 October 2015

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. ATL
  2. Distributed Computing
  3. Language Engineering
  4. MapReduce
  5. Model Transformation

Qualifiers

  • Research-article

Conference

SLE '15
Sponsor:
SLE '15: Software Language Engineering
October 26 - 27, 2015
PA, Pittsburgh, USA

Upcoming Conference

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)10
  • Downloads (Last 6 weeks)0
Reflects downloads up to 15 Jan 2025

Other Metrics

Citations

Cited By

View all
  • (2024)Traceability and reuse mechanisms, the most important properties of model transformation languagesEmpirical Software Engineering10.1007/s10664-023-10428-229:2Online publication date: 24-Feb-2024
  • (2022)Automated Generation of Consistent Graph Models With Multiplicity ReasoningIEEE Transactions on Software Engineering10.1109/TSE.2020.302573248:5(1610-1629)Online publication date: 1-May-2022
  • (2021)Distributed model validation with EpsilonSoftware and Systems Modeling (SoSyM)10.1007/s10270-021-00878-x20:5(1689-1712)Online publication date: 1-Oct-2021
  • (2020)An exploratory study on performance engineering in model transformationsProceedings of the 23rd ACM/IEEE International Conference on Model Driven Engineering Languages and Systems10.1145/3365438.3410950(308-319)Online publication date: 16-Oct-2020
  • (2019)Applying a data-centric framework for developing model transformationsProceedings of the 34th ACM/SIGAPP Symposium on Applied Computing10.1145/3297280.3297596(1570-1573)Online publication date: 8-Apr-2019
  • (2018)Spectrum-Based Fault Localization in Model TransformationsACM Transactions on Software Engineering and Methodology10.1145/324174427:3(1-50)Online publication date: 17-Sep-2018
  • (2018)Expressive and Efficient Model Transformation with an Internal DSL of XtendProceedings of the 21th ACM/IEEE International Conference on Model Driven Engineering Languages and Systems10.1145/3239372.3239386(78-88)Online publication date: 14-Oct-2018
  • (2018)Formalised EMFTVM bytecode language for sound verification of model transformationsSoftware and Systems Modeling (SoSyM)10.1007/s10270-016-0553-x17:4(1197-1225)Online publication date: 1-Oct-2018
  • (2018)Models, More Models, and Then a Lot MoreSoftware Technologies: Applications and Foundations10.1007/978-3-319-74730-9_10(129-135)Online publication date: 23-Jan-2018
  • (2017)Gremlin-ATL: a scalable model transformation frameworkProceedings of the 32nd IEEE/ACM International Conference on Automated Software Engineering10.5555/3155562.3155622(462-472)Online publication date: 30-Oct-2017

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media