Abstract State Machines for Data-Parallel Computing

  • Qing Wang
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7260)


The current programming paradigm for data-parallel computations is shifting with the rapidly increasing data growth on the web. It gives programmers more challenges than ever before. In this paper we propose Parallel Abstract State Machines (P-ASMs) that can empower programmers, no matter how experienced, by providing a well-founded systems engineering method to model data-parallel computations at arbitrary levels of abstraction. Particularly, we focus on discussing how P-ASMs can capture two classes of data-parallel computations that are most important in practice – ones that are always-consistent and ones that require transactional data consistency.


Computing Node Transaction Manager Abstract State Machine NoSQL Database MapReduce Model 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Abouzeid, A., Bajda-Pawlikowski, K., Abadi, D., Silberschatz, A., Rasin, A.: HadoopDB: An architectural hybrid of MapReduce and DBMS technologies for analytical workloads. Proceedings of the VLDB Endowment 2(1), 922–933 (2009)CrossRefGoogle Scholar
  2. 2.
    Aguilera, M., Merchant, A., Shah, M., Veitch, A., Karamanolis, C.: Sinfonia: a new paradigm for building scalable distributed systems. In: Proceedings of Twenty-First ACM SIGOPS Symposium on Operating Systems Principles, pp. 159–174. ACM (2007)Google Scholar
  3. 3. Amazon SimpleDB (2010),
  4. 4.
  5. 5.
    Berenson, H., Bernstein, P., Gray, J., Melton, J., O’Neil, E., O’Neil, P.: A critique of ansi sql isolation levels. SIGMOD Rec. 24, 1–10 (1995)CrossRefGoogle Scholar
  6. 6.
    Bernstein, P.A., Hadzilacos, V., Goodman, N.: Concurrency control and recovery in database systems, vol. 5. Addison-Wesley, New York (1987)Google Scholar
  7. 7.
    Börger, E., Stärk, R.F.: Abstract State Machines: A Method for High-Level System Design and Analysis. Springer-Verlag New York, Inc., Heidelberg (2003)CrossRefzbMATHGoogle Scholar
  8. 8.
    Chaiken, R., Jenkins, B., Larson, P.Å., Ramsey, B., Shakib, D., Weaver, S., Zhou, J.: Scope: easy and efficient parallel processing of massive data sets. Proceedings of the VLDB Endowment 1(2), 1265–1276 (2008)CrossRefGoogle Scholar
  9. 9.
    Chang, F., Dean, J., Ghemawat, S., Hsieh, W., Wallach, D., Burrows, M., Chandra, T., Fikes, A., Gruber, R.: Bigtable: A distributed storage system for structured data. ACM Transactions on Computer Systems (TOCS) 26(2), 1–26 (2008)CrossRefGoogle Scholar
  10. 10.
    Das, S., Agrawal, D., Abbadi, A.E.: Elastras: An elastic transactional data store in the cloud. In: USENIX HotCloud. USENIX (June 2009)Google Scholar
  11. 11.
    Dean, J., Ghemawat, S.: MapReduce: Simplified data processing on large clusters. Communications of the ACM 51(1), 107–113 (2008)CrossRefGoogle Scholar
  12. 12.
    Gurevich, Y.: Sequential abstract-state machines capture sequential algorithms. ACM Trans. Comput. Log. 1(1), 77–111 (2000)CrossRefGoogle Scholar
  13. 13.
    HBase: Bigtable-like structured storage for Hadoop HDFS (2009),
  14. 14.
    Kung, H., Robinson, J.: On optimistic methods for concurrency control. ACM Transactions on Database Systems (TODS) 6(2), 213–226 (1981)CrossRefGoogle Scholar
  15. 15.
  16. 16.
    Olston, C., Reed, B., Srivastava, U., Kumar, R., Tomkins, A.: Pig Latin: a not-so-foreign language for data processing. In: Proceedings of the 2008 ACM SIGMOD International Conference on Management of Data, pp. 1099–1110. ACM (2008)Google Scholar
  17. 17.
    Pavlo, A., Paulson, E., Rasin, A., Abadi, D.J., DeWitt, D.J., Madden, S., Stonebraker, M.: A comparison of approaches to large-scale data analysis. In: Proceedings of the 35th SIGMOD International Conference on Management of Data, SIGMOD 2009, pp. 165–178. ACM (2009)Google Scholar
  18. 18.
    Peng, D., Dabek, F.: Large-scale incremental processing using distributed transactions and notifications. In: Proceedings of the 9th USENIX Conference on Operating Systems Design and Implementation, OSDI 2010, pp. 1–15. USENIX Association (2010)Google Scholar
  19. 19.
    Schewe, K.-D., Wang, Q.: A customised ASM thesis for database transformations. Acta Cybern. 19, 765–805 (2010)zbMATHGoogle Scholar
  20. 20.
    Stonebraker, M., Abadi, D., DeWitt, D., Madden, S., Paulson, E., Pavlo, A., Rasin, A.: MapReduce and parallel DBMSs: friends or foes? Communications of the ACM 53(1), 64–71 (2010)CrossRefGoogle Scholar
  21. 21.
    Thusoo, A., Sarma, J., Jain, N., Shao, Z., Chakka, P., Anthony, S., Liu, H., Wyckoff, P., Murthy, R.: Hive: a warehousing solution over a map-reduce framework. Proceedings of the VLDB Endowment 2(2), 1626–1629 (2009)CrossRefGoogle Scholar
  22. 22.
    Wang, Q.: Logical Foundations of Database Transformations for Complex-Value Databases. Logos Verlag, Berlin (2010)Google Scholar
  23. 23.
    Wei, Z., Pierre, G., Chi, C.: CloudTPS: Scalable transactions for Web applications in the cloud (2010)Google Scholar
  24. 24.
    Yu, Y., Isard, M., Fetterly, D., Budiu, M., Erlingsson, Ú., Gunda, P., Currey, J.: DryadLINQ: A system for general-purpose distributed data-parallel computing using a high-level language. In: Proceedings of the 8th USENIX Conference on Operating Systems Design and Implementation, pp. 1–14. USENIX Association (2008)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2012

Authors and Affiliations

  • Qing Wang
    • 1
  1. 1.University of OtagoDunedinNew Zealand

Personalised recommendations