Nothing Special   »   [go: up one dir, main page]

skip to main content
10.5555/3351736.3351750acmconferencesArticle/Chapter ViewAbstractPublication PagesmodelsConference Proceedingsconference-collections
research-article

Stream my models: reactive peer-to-peer distributed [email protected]

Published: 30 September 2015 Publication History

Abstract

The [email protected] paradigm promotes the use of models during the execution of cyber-physical systems to represent their context and to reason about their runtime behaviour. However, current modeling techniques do not allow to cope at the same time with the large-scale, distributed, and constantly changing nature of these systems. In this paper, we introduce a distributed [email protected] approach, combining ideas from reactive programming, peer-to-peer distribution, and large-scale [email protected]. We define distributed models as observable streams of chunks that are exchanged between nodes in a peer-to-peer manner. A lazy loading strategy allows to transparently access the complete virtual model from every node, although chunks are actually distributed across nodes. Observers and automatic reloading of chunks enable a reactive programming style. We integrated our approach into the Kevoree Modeling Framework and demonstrate that it enables frequently changing, reactive distributed models that can scale to millions of elements and several thousand nodes.

References

[1]
G. S. Blair, N. Bencomo, and R. B. France, "Models@ run.time," IEEE Computer, vol. 42, no. 10, pp. 22--27, 2009.
[2]
N. Bencomo, R. B. France, B. H. C. Cheng, and U. Aßmann, Eds., [email protected] - Foundations, Applications, and Roadmaps {Dagstuhl Seminar 11481, November 27 - December 2, 2011}, ser. Lecture Notes in Computer Science, vol. 8378. Springer, 2014.
[3]
R. Rajkumar, I. Lee, L. Sha, and J. Stankovic, "Cyber-physical systems: The next computing revolution," in Design Automation Conference (DAC), 2010 47th ACM/IEEE, June 2010, pp. 731--736.
[4]
E. A. Lee, "Cyber physical systems: Design challenges," in Object Oriented Real-Time Distributed Computing (ISORC), 2008 11th IEEE International Symposium on. IEEE, 2008, pp. 363--369.
[5]
J. Taneja, R. Katz, and D. Culler, "Defining cps challenges in a sustainable electricity grid," in Proceedings of the 2012 IEEE/ACM Third International Conference on Cyber-Physical Systems. IEEE Computer Society, 2012, pp. 119--128.
[6]
H. Farhangi, "The path of the smart grid," Power and Energy Magazine, IEEE, vol. 8, no. 1, pp. 18--28, 2010.
[7]
F. Fouquet, B. Morin, F. Fleurey, O. Barais, N. Plouzeau, and J.-M. Jezequel, "A dynamic component model for cyber physical systems," in Proceedings of the 15th ACM SIGSOFT symposium on Component Based Software Engineering. ACM, 2012, pp. 135--144.
[8]
A. Taherkordi, F. Loiret, R. Rouvoy, and F. Eliassen, "Optimizing sensor network reprogramming via in situ reconfigurable components," ACM Trans. Sen. Netw., vol. 9, no. 2, pp. 14:1--14:33, Apr. 2013. {Online}. Available
[9]
B. Combemale, X. Thirioux, and B. Baudry, "Formally defining and iterating infinite models," in Model Driven Engineering Languages and Systems - 15th International Conference, MODELS 2012, September 30-October 5, 2012. Proceedings, 2012, pp. 119--133.
[10]
F. Fouquet, G. Nain, B. Morin, E. Daubert, O. Barais, N. Plouzeau, and J. Jézéquel, "An eclipse modelling framework alternative to meet the models@runtime requirements," in Model Driven Engineering Languages and Systems - 15th International Conference, MODELS 2012, September 30-October 5, 2012. Proceedings, 2012, pp. 87--101.
[11]
F. Francois, G. Nain, B. Morin, E. Daubert, O. Barais, N. Plouzeau, and J.-M. Jézéquel, "Kevoree modeling framework (kmf): Efficient modeling techniques for runtime use," arXiv preprint arXiv:1405.6817, 2014.
[12]
E. Bainomugisha, A. L. Carreton, T. v. Cutsem, S. Mostinckx, and W. d. Meuter, "A survey on reactive programming," ACM Comput. Surv., vol. 45, no. 4, pp. 52:1--52:34, Aug. 2013.
[13]
E. Gamma, R. Helm, R. Johnson, and J. Vlissides, Design patterns: elements of reusable object-oriented software. Pearson Education, 1994.
[14]
E. Meijer, "Your mouse is a database," Queue, vol. 10, no. 3, pp. 20:20--20:33, Mar. 2012.
[15]
I. Maier, T. Rompf, and M. Odersky, "Deprecating the observer pattern," Tech. Rep., 2010.
[16]
G. H. Cooper and S. Krishnamurthi, "Embedding dynamic dataflow in a call-by-value language," in Proceedings of the 15th European Conference on Programming Languages and Systems, ser. ESOP'06. Berlin, Heidelberg: Springer-Verlag, 2006, pp. 294--308.
[17]
L. A. Meyerovich, A. Guha, J. Baskin, G. H. Cooper, M. Greenberg, A. Bromfield, and S. Krishnamurthi, "Flapjax: A programming language for ajax applications," in Proceedings of the 24th ACM SIGPLAN Conference on Object Oriented Programming Systems Languages and Applications, ser. OOPSLA '09. ACM, 2009, pp. 1--20.
[18]
S. Androutsellis-Theotokis and D. Spinellis, "A survey of peer-to-peer content distribution technologies," ACM Comput. Surv., vol. 36, no. 4, pp. 335--371, Dec. 2004. {Online}. Available
[19]
M. Kamel, C. Scoglio, and T. Easton, "Optimal topology design for overlay networks," in NETWORKING 2007. Ad Hoc and Sensor Networks, Wireless Networks, Next Generation Internet. Springer, 2007, pp. 714--725.
[20]
Z. J. Haas, J. Y. Halpern, and L. Li, "Gossip-based ad hoc routing," IEEE/ACM Trans. Netw., vol. 14, no. 3, pp. 479--491, Jun. 2006. {Online}. Available
[21]
R. Matei, A. Iamnitchi, and I. Foster, "Mapping the gnutella network," Internet Computing, IEEE, vol. 6, no. 1, pp. 50--57, Jan 2002.
[22]
I. Stoica, R. Morris, D. Karger, M. F. Kaashoek, and H. Balakrishnan, "Chord: A scalable peer-to-peer lookup service for internet applications," in Proceedings of the 2001 Conference on Applications, Technologies, Architectures, and Protocols for Computer Communications, ser. SIGCOMM '01. New York, NY, USA: ACM, 2001, pp. 149--160. {Online}. Available
[23]
M. Kaashoek and D. Karger, "Koorde: A simple degree-optimal distributed hash table," in Peer-to-Peer Systems II, ser. Lecture Notes in Computer Science, M. Kaashoek and I. Stoica, Eds. Springer Berlin Heidelberg, 2003, vol. 2735, pp. 98--107.
[24]
D. Steinberg, F. Budinsky, E. Merks, and M. Paternostro, EMF: eclipse modeling framework. Pearson Education, 2008.
[25]
T. Hartmann, F. Fouquet, G. Nain, B. Morin, J. Klein, and Y. L. Traon, "Reasoning at runtime using time-distorted contexts: A [email protected] based approach," in The 26th International Conference on Software Engineering and Knowledge Engineering, Hyatt Regency, Vancouver, BC, Canada, July 1--3, 2013., 2014, pp. 586--591.
[26]
T. Hartmann, F. Fouquet, G. Nain, B. Morin, J. Klein, O. Barais, and Y. L. Traon, "A native versioning concept to support historized models at runtime," in Model-Driven Engineering Languages and Systems - 17th International Conference, MODELS 2014, Valencia, Spain, September 28 - October 3, 2014. Proceedings, 2014, pp. 252--268.
[27]
D. Kolovos, D. Di Ruscio, A. Pierantonio, and R. Paige, "Different models for model matching: An analysis of approaches to support model differencing," in Comparison and Versioning of Software Models, 2009. CVSM '09. ICSE Workshop on, May 2009, pp. 1--6.
[28]
L. Lamport, "Time, clocks, and the ordering of events in a distributed system," Commun. ACM, vol. 21, no. 7, pp. 558--565, Jul. 1978.
[29]
J. E. Pagán, J. S. Cuadrado, and J. G. Molina, "Morsa: A scalable approach for persisting and accessing large models," in Model Driven Engineering Languages and Systems. Springer, 2011, pp. 77--92.
[30]
F. Khunjush and N. J. Dimopoulos, "Lazy direct-to-cache transfer during receive operations in a message passing environment," in Proceedings of the 3rd Conference on Computing Frontiers, ser. CF '06. New York, NY, USA: ACM, 2006, pp. 331--340.
[31]
D. Ongaro and J. Ousterhout, "In search of an understandable consensus algorithm," in Proc. USENIX Annual Tech. Conf., 2014, pp. 305--320.
[32]
P. Dutta, R. Guerraoui, and L. Lamport, "How fast can eventual synchrony lead to consensus?" in Dependable Systems and Networks, 2005. DSN 2005. Proceedings. Int. Conf. on. IEEE, 2005, pp. 22--27.
[33]
J. Wu, Z. Lu, B. Liu, and S. Zhang, "Peercdn: A novel p2p network assisted streaming content delivery network scheme," in Computer and Information Technology, 2008. CIT 2008. 8th IEEE International Conference on. IEEE, 2008, pp. 601--606.
[34]
M. J. Fischer, N. A. Lynch, and M. S. Paterson, "Impossibility of distributed consensus with one faulty process," Journal of the ACM (JACM), vol. 32, no. 2, pp. 374--382, 1985.
[35]
S. Finne, D. Leijen, E. Meijer, and S. Peyton Jones, "Calling hell from heaven and heaven from hell," in Proceedings of the Fourth ACM SIGPLAN International Conference on Functional Programming, ser. ICFP '99. New York, NY, USA: ACM, 1999, pp. 114--125. {Online}. Available
[36]
J. Dean and S. Ghemawat, "Mapreduce: Simplified data processing on large clusters," Commun. ACM, vol. 51, no. 1, pp. 107--113, Jan. 2008.
[37]
T. Hartmann, F. Fouquet, J. Klein, Y. L. Traon, A. Pelov, L. Toutain, and T. Ropitault, "Generating realistic smart grid communication topologies based on real-data," in 2014 IEEE International Conference on Smart Grid Communications, SmartGridComm 2014, Venice, Italy, November 3--6, 2014, 2014, pp. 428--433.
[38]
F. Fouquet, E. Daubert, N. Plouzeau, O. Barais, J. Bourcier, and J. Jézéquel, "Dissemination of reconfiguration policies on mesh networks," in Distributed Applications and Interoperable Systems - 12th IFIP WG 6.1 International Conference, DAIS 2012, Stockholm, Sweden, June 13--16, 2012. Proceedings, 2012, pp. 16--30.
[39]
B. Morin, O. Barais, J. Jezequel, F. Fleurey, and A. Solberg, "[email protected] to support dynamic adaptation," Computer, vol. 42, no. 10, pp. 44--51, Oct 2009.
[40]
B. Babcock, S. Babu, M. Datar, R. Motwani, and J. Widom, "Models and issues in data stream systems," in Proceedings of the Twenty-first ACM SIGMOD-SIGACT-SIGART Symposium on Principles of Database Systems, ser. PODS '02. New York, NY, USA: ACM, 2002, pp. 1--16.
[41]
J. S. Cuadrado and J. de Lara, "Streaming model transformations: Scenarios, challenges and initial solutions," in Theory and Practice of Model Transformations. Springer, 2013, pp. 1--16.
[42]
I. Dávid, I. Ráth, and D. Varró, "Streaming model transformations by complex event processing," in Model-Driven Engineering Languages and Systems. Springer, 2014, pp. 68--83.
[43]
I. Ráth, G. Varró, and D. Varró, "Change-driven model transformations," in Model Driven Engineering Languages and Systems, ser. Lecture Notes in Computer Science, A. Schürr and B. Selic, Eds. Springer Berlin Heidelberg, 2009, vol. 5795, pp. 342--356.
[44]
M. Koegel and J. Helming, "Emfstore: A model repository for emf models," in Proceedings of the 32Nd ACM/IEEE International Conference on Software Engineering - Volume 2, ser. ICSE '10. New York, NY, USA: ACM, 2010, pp. 307--308.
[45]
A. Gomez, M. Tisi, G. Sunyé, and J. Cabot, "Map-based transparent persistence for very large models," in Fundamental Approaches to Software Engineering. Springer, 2015, pp. 19--34.
[46]
G. Szárnyas, B. Izsó, I. Ráth, D. Harmath, G. Bergmann, and D. Varró, "Incquery-d: A distributed incremental model query framework in the cloud," in Model-Driven Engineering Languages and Systems. Springer International Publishing, 2014, pp. 653--669.

Cited By

View all

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Conferences
MODELS '15: Proceedings of the 18th International Conference on Model Driven Engineering Languages and Systems
September 2015
462 pages
ISBN:9781467369084

Sponsors

In-Cooperation

  • IEEE CS

Publisher

IEEE Press

Publication History

Published: 30 September 2015

Check for updates

Author Tags

  1. asynchronous programming
  2. distributed models
  3. [email protected]
  4. peer-to-peer
  5. reactive programming

Qualifiers

  • Research-article

Conference

MODELS '15
Sponsor:

Acceptance Rates

Overall Acceptance Rate 144 of 506 submissions, 28%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

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

Other Metrics

Citations

Cited By

View all

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