Abstract
Graph pattern matching, one of the most fundamental graph problems, has been extensively investigated in the literature. Nonetheless, existing efforts mostly focus on general graphs without time information, few studies concentrate on temporal graphs, where a relationship between two vertices takes place at a specific moment and lingers for some time. Moreover, real-world temporal networks become increasingly large, and are usually distributed over multiple machines. These foster the need for evaluating pattern matching on distributed temporal graphs. In this paper, we propose a new notion so-called time-respecting flow graph, in which all paths spreading from one vertex to another are time-respecting (i.e., a series of contacts with non-decreasing time), and one vertex is distinguished as the root from which other vertices can be reached via a time-respecting path. Based on this, we explore the problem of distributed time-respecting flow graph pattern matching on temporal graphs, which could be applied in many fields such as epidemiology, social media, national security, communication, to name just a few. We present a distributed baseline algorithm based on GraphX as well as an optimized algorithm that utilizes the properties of time-respecting flow graph and the analyses of distributed algorithms to boost efficiency. Extensive experimental evaluation using both real and synthetic data sets demonstrates the efficiency and scalability of our proposed algorithms.
Similar content being viewed by others
Notes
Giraph is available at http://giraph.apache.org/.
Hama is available at http://hama.apache.org/.
KONECT is available at http://konect.uni-koblenz.de/.
JGraphT is available at http://jgrapht.org/.
References
Almagro-Blanco, P., Sancho-Caparrini, F.: Generalized graph pattern matching. arXiv:1708.03734 (2017)
Batarfi, O., Shawi, R.E., Fayoumi, A.G., Nouri, R., Beheshti, S., Barnawi, A., Sakr, S.: Large scale graph processing systems: survey and an experimental evaluation. Clust. Comput. 18(3), 1189–1213 (2015)
Cao, Y., Fan, W., Huai, J., Huang, R.: Making pattern queries bounded in big graphs. In: ICDE, pp 161–172 (2015)
Casteigts, A., Flocchini, P., Quattrociocchi, W., Santoro, N.: Time-varying graphs and dynamic networks. IJPEDS 27(5), 387–408 (2012)
Cheng, J., Yu, J.X., Ding, B., Yu, P.S., Wang, H.: Fast graph pattern matching. In: ICDE, pp 913–922 (2008)
Cheng, J., Zeng, X., Yu, J.X.: Top-K graph pattern matching over large graphs. In: ICDE, pp 1033–1044 (2013)
Chiang, H., Huang, T.: User-adapted travel planning system for personalized schedule recommendation. Information Fusion 21, 3–17 (2015)
Dean, J., Ghemawat, S.: Mapreduce: simplified data processing on large clusters. Commun. ACM 51(1), 107–113 (2008)
Fan, W.: Graph pattern matching revised for social network analysis. In: ICDT, pp 8–21 (2012)
Fan, W., Li, J., Luo, J., Tan, Z., Wang, X., Wu, Y.: Incremental graph pattern matching. In: SIGMOD, pp 925–936 (2011)
Fan, W., Li, J., Ma, S., Tang, N., Wu, Y.: Adding regular expressions to graph reachability and pattern queries. In: ICDE, pp 39–50 (2011)
Fan, W., Li, J., Ma, S., Tang, N., Wu, Y., Wu, Y.: Graph pattern matching: from intractable to polynomial time. PVLDB 3(1), 264–275 (2010)
Fan, W., Wang, X., Wu, Y.: Diversified top-k graph pattern matching. PVLDB 6(13), 1510–1521 (2013)
Fan, W., Wang, X., Wu, Y.: Answering graph pattern queries using views. In: ICDE, pp 184–195 (2014)
Fan, W., Wang, X., Wu, Y., Deng, D.: Distributed graph simulation: impossibility and possibility. PVLDB 7(12), 1083–1094 (2014)
Gallagher, B.: Matching structure and semantics: a survey on graph-based pattern matching. AAAI FS 6, 45–53 (2006)
Gonzalez, J.E., Xin, R.S., Dave, A., Crankshaw, D., Franklin, M.J., Stoica, I.: GraphX: graph processing in a distributed dataflow framework. In: OSDI, pp 599–613 (2014)
Gou, G., Chirkova, R.: Efficient algorithms for exact ranked twig-pattern matching over graphs. In: SIGMOD, pp 581–594 (2008)
Gross, T., D’Lima, C.J.D., Blasius, B.: Epidemic dynamics on an adaptive network. Phys. Rev. Lett. 96(20), 208701 (2006)
Henzinger, M.R., Henzinger, T.A., Kopke, P.W.: Computing simulations on finite and infinite graphs. In: Annual Symposium on Foundations of Computer Science, FOCS, pp 453–462 (1995)
Himmel, A., Molter, H., Niedermeier, R., Sorge, M.: Enumerating maximal cliques in temporal graphs. In: International Conference on Advances in Social Networks Analysis and Mining, ASONAM, pp 337–344 (2016)
Holme, P., Saramäki, J.: Temporal networks. Phys. Rep. 519(3), 97–125 (2012)
Huang, S., Cheng, J., Wu, H.: Temporal graph traversals: definitions, algorithms, and applications. arXiv:1401.1919 (2014)
Huang, S., Fu, A.W., Liu, R.: Minimum spanning trees in temporal graphs. In: SIGMOD, pp 419–430 (2015)
Kempe, D., Kleinberg, J.M., Kumar, A.: Connectivity and inference problems for temporal networks. J. Comput. Syst. Sci. 64(4), 820–842 (2002)
Kostakos, V.: Temporal graphs. Physica A: Statistical Mechanics and its Applications 388(6), 1007–1023 (2009)
Liu, C., Chen, C., Han, J., Yu, P.S.: GPLAG: detection of software plagiarism by program dependence graph analysis. In: SIGKDD, pp 872–881 (2006)
Liu, G., Zheng, K., Wang, Y., Orgun, M.A., Liu, A., Zhao, L., Zhou, X.: Multi-constrained graph pattern matching in large-scale contextual social graphs. In: ICDE, pp 351–362 (2015)
Low, Y., Gonzalez, J., Kyrola, A., Bickson, D., Guestrin, C., Hellerstein, J.M.: Distributed graphlab: a framework for machine learning in the cloud. PVLDB 5(8), 716–727 (2012)
Ma, S., Cao, Y., Fan, W., Huai, J., Wo, T.: Capturing topology in graph pattern matching. PVLDB 5(4), 310–321 (2011)
Ma, S., Cao, Y., Fan, W., Huai, J., Wo, T.: Strong simulation: Capturing topology in graph pattern matching. ACM Trans. Database Syst. 39(1), 4:1–4:46 (2014)
Ma, S., Cao, Y., Huai, J., Wo, T.: Distributed graph pattern matching. In: WWW, pp 949–958 (2012)
Ma, S., Hu, R., Wang, L., Lin, X., Huai, J.: Fast computation of dense temporal subgraphs. In: ICDE, pp 361–372 (2017)
Malewicz, G., Austern, M.H., Bik, A.J.C., Dehnert, J.C., Horn, I., Leiser, N., Czajkowski, G.: Pregel: a system for large-scale graph processing. In: SIGMOD, pp 135–146 (2010)
Michail, O., Spirakis, P.G.: Traveling salesman problems in temporal graphs. Theor. Comput. Sci. 634, 1–23 (2016)
Moody, J.: The importance of relationship timing for diffusion. Soc. Forces 81 (1), 25–56 (2002)
Nicosia, V., Tang, J.K., Musolesi, M., Russo, G., Mascolo, C., Latora, V.: Components in time-varying graphs. arXiv:1106.2134 (2011)
Nisar, M.U., Voghoei, S., Ramaswamy, L.: Caching for pattern matching queries in time evolving graphs: challenges and approaches. In: ICDCS, pp 2352–2357 (2017)
Redmond, U., Cunningham, P.: Temporal subgraph isomorphism. In: International Conference on Advances in Social Networks Analysis and Mining, ASONAM, pp 1451–1452 (2013)
Shao, B., Wang, H., Li, Y.: Trinity: a distributed graph engine on a memory cloud. In: SIGMOD, pp 505–516 (2013)
Sokolsky, O., Kannan, S., Lee, I.: Simulation-based graph similarity. In: Tools and Algorithms for the Construction and Analysis of Systems, TACAS, pp 426–440 (2006)
Tian, Y., Balmin, A., Corsten, S.A., Tatikonda, S., McPherson, J.: From “think like a vertex” to “think like a graph”. PVLDB 7(3), 193–204 (2013)
Wang, S., Lin, W., Yang, Y., Xiao, X., Zhou, S.: Efficient route planning on public transportation networks: a labelling approach. In: SIGMOD, pp 967–982 (2015)
Wu, H., Cheng, J., Huang, S., Ke, Y., Lu, Y., Xu, Y.: Path problems in temporal graphs. PVLDB 7(9), 721–732 (2014)
Wu, H., Huang, Y., Cheng, J., Li, J., Ke, Y.: Reachability and time-based path queries in temporal graphs. In: ICDE, pp 145–156 (2016)
Xu, Y., Huang, J., Liu, A., Li, Z., Yin, H., Zhao, L.: Time-constrained graph pattern matching in a large temporal graph. In: APWeb-WAIM, pp 100–115 (2017)
Yang, Y., Yan, D., Wu, H., Cheng, J., Zhou, S., Lui, J.C.S.: Diversified temporal subgraph pattern mining. In: SIGKDD, pp 1965–1974 (2016)
Zaharia, M., Chowdhury, M., Das, T., Dave, A., Ma, J., McCauly, M., Franklin, M.J., Shenker, S., Stoica, I.: Resilient distributed datasets: a fault-tolerant abstraction for in-memory cluster computing. In: NSDI, pp 15–28 (2012)
Zou, L., Chen, L., Özsu, M.T.: Distance-join: pattern match query in a large graph database. PVLDB 2(1), 886–897 (2009)
Zou, L., Chen, L., Özsu, M.T., Zhao, D.: Answering pattern match queries in large graph databases via graph embedding. VLDB J. 21(1), 97–120 (2012)
Acknowledgments
This work was supported in part by the National Key R&D Program of China under Grant No. 2018YFB1004003, the 973 Program of China under Grant No. 2015CB352502, the NSFC under Grant No. 61522208, the NSFC-Zhejiang Joint Fund under Grant No. U1609217, and the ZJU-Hikvision Joint Project. Yunjun Gao is the corresponding author of the work.
Author information
Authors and Affiliations
Corresponding author
Additional information
Publisher’s note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
This article belongs to the Topical Collection: Special Issue on Trust, Privacy, and Security in Crowdsourcing Computing
Guest Editors: An Liu, Guanfeng Liu, Mehmet A. Orgun, and Qing Li
Rights and permissions
About this article
Cite this article
Zhang, T., Gao, Y., Qiu, L. et al. Distributed time-respecting flow graph pattern matching on temporal graphs. World Wide Web 23, 609–630 (2020). https://doi.org/10.1007/s11280-019-00674-0
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11280-019-00674-0