Visualizing and querying distributed event traces with Hy+
A programmer attempting to understand and debug a distributed program deals with large volumes of trace data that describe the program's behaviour. Visualization is widely believed to help in this and similar tasks. We contend that visualization is indeed useful, but only if accompanied of powerful data management facilities to support abstraction and filtering. The Hy+ visualization system and GraphLog query language provide these facilities. They support not just a fixed way of visualizing data, but visualizations that can be specified and manipulated through declarative queries, like data are manipulated in a database. In this paper we show how the Hy+/GraphLog system can be used by distributed program debuggers to meet their information manipulation and visualization goals.
The Hy+/GraphLog system can be used for observing behaviour of distributed and parallel applications by specifying normal or abnormal patterns that the programmer is looking for as declarative GraphLog queries and manipulating the resulting visualizations to understand the behaviour of the program.
KeywordsTrace Data Process Instance Deductive Database Eating Event Active Database
Unable to display preview. Download preview PDF.
- 1.Peter Bates. Debugging heterogeneous distributed systems using event-based models of behavior. Proceedings of the ACM SIGPLAN/SIGOPS Workshop on Parallel and Distributed Debugging, published in ACM SIGPLAN Notices, 24(1):11–22, January 1989.Google Scholar
- 2.Mariano Consens and Masum Hasan. Supporting network management through declaratively specified data visualizations. In H.G. Hegering and Y. Yemini, editors, Proceedings of the IEEE/IFIP Third International Symposium on Integrated Network Management, III, pages 725–738. Elsevier North Holland, April 1993.Google Scholar
- 3.Mariano Consens and Alberto Mendelzon. Expressing structural hypertext queries in GraphLog. In Proceedings of the Second ACM Hypertext Conference, pages 269–292, 1989.Google Scholar
- 4.Mariano Consens and Alberto Mendelzon. GraphLog: a visual formalism for real life recursion. In Proceedings of the Ninth ACM SIGACT-SIGMOD Symposium on Principles of Database Systems, pages 404–416, 1990.Google Scholar
- 5.Mariano Consens and Alberto Mendelzon. Low complexity aggregation in GraphLog and Datalog. In Proceedings of the Third International Conference on Database Theory, Lecture Notes in Computer Science Nr. 470, pages 379–394. Springer-Verlag, 1990. A revised version has been accepted for publication in TCS.Google Scholar
- 6.Mariano Consens, Alberto Mendelzon, and Arthur Ryman. Visualizing and querying software structures. In 14th. Intl. Conference on Software Engineering, pages 138–156, 1992.Google Scholar
- 7.Mariano P. Consens. Creating and Filtering Structural Data Visualizations using Hygraph Patterns. Fothcoming PhD Thesis, University of Toronto, 1993.Google Scholar
- 8.Milan Fukar. Translating GraphLog into Prolog. Technical report, Center for Advanced Studies IBM Canada Limited, October 1991.Google Scholar
- 9.David Harel. On visual formalisms. Communications of the ACM, 31(5):514–530, 1988.Google Scholar
- 10.Masum Z. Hasan. A visual and temporal framework for behavior observation of active databases. PhD Thesis Proposal, Department of Computer Science, University of Waterloo, Waterloo, Ontario, Canada, 1994.Google Scholar
- 11.W. Korfhage. The panorama monitoring system. Technical report, Polytechnic University, Brooklyn, 1992.Google Scholar
- 12.Charles E. McDowell and David P. Helmbold. Debugging concurrent programs. ACM Computing Surveys, 21(4):593–622, December 1989.Google Scholar
- 13.Shamim Naqvi and Tsur Shalom. A logical language for data and knowledge bases. Computer Science Press, New York, 1989.Google Scholar
- 14.R. Ramakrishnan, D. Srivastava, and S. Sudarshan. CORAL: Control, Relations and Logic. In Proceedings of International Conference on Very Large Databases, 1992.Google Scholar
- 15.Richard Snodgrass. A relational approach to monitoring complex systems. ACM Transactions on Computer Systems, 6(2):157–196, May 1988.Google Scholar
- 16.R.T. Snodgrass. The temporal query language TQuel. ACM Transactions on Database Systems, 12(2):247–298, June 1987.Google Scholar
- 17.R.E. Strom, D.F. Bacon, A.P. Goldberg, A. Lowry, D.M. Yellin, and S.A. Yemini. HERMES: A Language for Distributed Computing. Prentice Hall, Englewood Cliffs, New Jersey, 1991.Google Scholar
- 18.Dror Zernik and Larry Rudolph. Animating work and time for debugging parallel programs foundation and experience. Proceedings of the ACM/ONR Workshop on Parallel and Distributed Debugging, published in ACM SIGPLAN Notices, 26(12):46–56, December 1991.Google Scholar