Skip to main content

Part of the book series: Lecture Notes in Computer Science ((TLDKS,volume 14160))

  • 109 Accesses

Abstract

Graphs are a ubiquitous data model for capturing entities and their relationships. Since most graphs that model real-world networks evolve over time, efficiently managing temporal graphs is an important problem from both a theoretical and practical perspective. Querying the history of temporal graphs can lead to new applications such as object tracking, anomaly detection, and predicting future behavior. However, existing commercial graph databases lack native temporal support, hindering their usefulness in these use cases.

This paper introduces Clock-G, a temporal graph management system designed to handle the history temporal graphs. What differentiates Clock-G from other temporal graph management systems is its comprehensive approach, covering query language, query processing, and physical storage. We define T-Cypher, a temporal extension of Cypher query language, enabling user-friendly and concise querying of the graph’s history. Additionally, we propose a query processor that utilizes temporal statistics collected from underlying temporal graphs to offer a good evaluation plan for T-Cypher queries. We also propose a novel storage technique that balances space usage and query evaluation time.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 49.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 64.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 1.

    https://www.thinginthefuture.com/.

  2. 2.

    https://www.pole-emc2.fr/projet/mo-di-flu/.

  3. 3.

    https://neo4j.com.

  4. 4.

    https://project.inria.fr/tcypher/.

  5. 5.

    The elapsed time between two time intervals i and \(i'\) is equal to the difference between the starting time instant of \(i'\) and the ending time instant of i.

  6. 6.

    https://neo4j.com.

  7. 7.

    https://ride.citibikenyc.com/system-data.

  8. 8.

    We use the built-in Neo4j’s indexing utility to include indexes on the properties tStart and tEnd.

References

  1. Allen, J.F.: Maintaining knowledge about temporal intervals. Commun. ACM 26(11), 832–843 (1983)

    Article  MATH  Google Scholar 

  2. Arenas, M., Bahamondes, P., Aghasadeghi, A., Stoyanovich, J.: Temporal regular path queries. In: 2022 IEEE 38th International Conference on Data Engineering (ICDE), pp. 2412–2425 (2022). https://doi.org/10.1109/ICDE53745.2022.00226

  3. de Berg, M., van Kreveld, M., Overmars, M., Schwarzkopf, O.: Computational geometry. In: Computational Geometry, pp. 1–17. Springer, Heidelberg (1997). https://doi.org/10.1007/978-3-662-03427-9_1

  4. Castelltort, A., Laurent, A.: Representing history in graph-oriented NOSQL databases: a versioning system. In: Eighth International Conference on Digital Information Management (ICDIM 2013), pp. 228–234. IEEE (2013)

    Google Scholar 

  5. Cattuto, C., Quaggiotto, M., Panisson, A., Averbuch, A.: Time-varying social networks in a graph database: a neo4j use case. In: First International Workshop on Graph Data Management Experiences and Systems. GRADES 2013, New York, NY, USA. Association for Computing Machinery (2013). https://doi.org/10.1145/2484425.2484442, https://doi.org/10.1145/2484425.2484442

  6. Clifford, C.S.J.J., et al.: A consensus glossary of temporal database concepts. SIGMOD Record 23(1), 52–64 (1994)

    Article  Google Scholar 

  7. Debrouvier, A., Parodi, E., Perazzo, M., Soliani, V., Vaisman, A.: A model and query language for temporal graph databases. VLDB J. 30(5), 825–858 (2021). https://doi.org/10.1007/s00778-021-00675-4

    Article  Google Scholar 

  8. Deutsch, A., et al.: Graph pattern matching in GQL and SQL/PGQ. In: Proceedings of the 2022 International Conference on Management of Data. SIGMOD 2022, New York, NY, USA, pp. 2246–2258. Association for Computing Machinery (2022). https://doi.org/10.1145/3514221.3526057

  9. Erling, O., et al: The LDBC social network benchmark: interactive workload. In: Proceedings of the 2015 ACM SIGMOD International Conference on Management of Data. SIGMOD 2015, New York, NY, USA, pp. 619–630. Association for Computing Machinery (2015). https://doi.org/10.1145/2723372.2742786

  10. Francis, N., et al.: Cypher: an evolving query language for property graphs. In: Proceedings of the 2018 International Conference on Management of Data, pp. 1433–1445 (2018)

    Google Scholar 

  11. George, B., Kang, J.M., Shekhar, S.: Spatio-temporal sensor graphs (STSG): a data model for the discovery of SPATIO-temporal patterns. Intell. Data Anal. 13(3), 457–475 (2009)

    Article  Google Scholar 

  12. Ghrab, A., Romero, O., Skhiri, S., Vaisman, A.A., Zimányi, E.: GRAD: on graph database modeling. CoRR abs/1602.00503 (2016). http://arxiv.org/abs/1602.00503

  13. Grandi, F.: T-SPARQL: A TSQL2-like temporal query language for RDF. In: ADBIS (Local Proceedings). pp. 21–30. Citeseer (2010)

    Google Scholar 

  14. Gubichev, A.: Query processing and optimization in graph databases. Ph.D. thesis, Technische Universität München (2015)

    Google Scholar 

  15. Hadjieleftheriou, M., Kollios, G., Gunopulos, D., Tsotras, V.J.: On-line discovery of dense areas in spatio-temporal databases. In: Hadzilacos, T., Manolopoulos, Y., Roddick, J., Theodoridis, Y. (eds.) SSTD 2003. LNCS, vol. 2750, pp. 306–324. Springer, Heidelberg (2003). https://doi.org/10.1007/978-3-540-45072-6_18

    Chapter  Google Scholar 

  16. Haeusler, M., Trojer, T., Kessler, J., Farwick, M., Nowakowski, E., Breu, R.: ChronoGraph: a versioned TinkerPop graph database. In: Filipe, J., Bernardino, J., Quix, C. (eds.) DATA 2017. CCIS, vol. 814, pp. 237–260. Springer, Cham (2018). https://doi.org/10.1007/978-3-319-94809-6_12

    Chapter  Google Scholar 

  17. Han, W., Li, K., Chen, S., Chen, W.: Auxo: a temporal graph management system. Big Data Min. Anal. 2(1), 58–71 (2018)

    Article  Google Scholar 

  18. Han, W., et al.: Chronos: a graph engine for temporal graph analysis. In: Proceedings of the Ninth European Conference on Computer Systems, pp. 1–14 (2014)

    Google Scholar 

  19. Hartig, O., Pérez, J.: Semantics and complexity of GRAPHQL. In: Proceedings of the 2018 World Wide Web Conference. WWW 2018, International World Wide Web Conferences Steering Committee, Republic and Canton of Geneva, CHE, pp. 1155–1164 (2018). https://doi.org/10.1145/3178876.3186014

  20. Hartmann, T., Fouquet, F., Jimenez, M., Rouvoy, R., Le Traon, Y.: Analyzing complex data in motion at scale with temporal graphs (2020)

    Google Scholar 

  21. Huo, W., Tsotras, V.J.: Efficient temporal shortest path queries on evolving social graphs. In: Proceedings of the 26th International Conference on Scientific and Statistical Database Management. SSDBM 2014, New York, NY, USA. Association for Computing Machinery (2014). https://doi.org/10.1145/2618243.2618282

  22. Hölsch, J., Grossniklaus, M.: An algebra and equivalences to transform graph patterns in neo4j. In: Palpanas, T., Stefanidis, K. (eds.) Proceedings of the Workshops of the EDBT/ICDT 2016 Joint Conference (EDBT/ICDT 2016). No. 1558 in CEUR Workshop Proceedings (2016). http://ceur-ws.org/Vol-1558/paper24.pdf

  23. Kempe, D., Kleinberg, J., Kumar, A.: Connectivity and inference problems for temporal networks. J. Comput. Syst. Sci. 64(4), 820–842 (2002). https://doi.org/10.1006/jcss.2002.1829, https://www.sciencedirect.com/science/article/pii/S0022000002918295

  24. Khurana, U., Deshpande, A.: Efficient snapshot retrieval over historical graph data. In: 2013 IEEE 29th International Conference on Data Engineering (ICDE), pp. 997–1008. IEEE (2013)

    Google Scholar 

  25. Khurana, U., Deshpande, A.: Storing and analyzing historical graph data at scale. arXiv preprint arXiv:1509.08960 (2015)

  26. Koloniari, G., Souravlias, D., Pitoura, E.: On graph deltas for historical queries. arXiv preprint arXiv:1302.5549 (2013)

  27. Kunegis, J.: Konect: The koblenz network collection. WWW 2013 Companion, New York, NY, USA, pp. 1343–1350. Association for Computing Machinery (2013). https://doi.org/10.1145/2487788.2488173

  28. Labouseur, A.G., et al.: The g* graph database: efficiently managing large distributed dynamic graphs. Distrib. Parallel Databases 33(4), 479–514 (2015)

    Article  Google Scholar 

  29. Lakshman, A., Malik, P.: Cassandra: a decentralized structured storage system. ACM SIGOPS Oper. Syst. Rev. 44(2), 35–40 (2010)

    Article  Google Scholar 

  30. Macko, P., Marathe, V.J., Margo, D.W., Seltzer, M.I.: Llama: efficient graph analytics using large multiversioned arrays. In: 2015 IEEE 31st International Conference on Data Engineering, pp. 363–374. IEEE (2015)

    Google Scholar 

  31. Massri, M., Miklos, Z., Raipin, P., Meye, P.: Clock-g: a temporal graph management system with space-efficient storage technique. In: 2022 IEEE 38th International Conference on Data Engineering (ICDE), Los Alamitos, CA, USA, pp. 2263–2276. IEEE Computer Society(2022). https://doi.org/10.1109/ICDE53745.2022.00215, https://doi.ieeecomputersociety.org/10.1109/ICDE53745.2022.00215

  32. Miao, Y., et al.: Immortalgraph: a system for storage and analysis of temporal graphs. ACM Trans. Storage (TOS) 11(3), 1–34 (2015)

    Article  Google Scholar 

  33. Moffitt, V.Z., Stoyanovich, J.: Temporal graph algebra. DBPL 2017, New York, NY, USA. Association for Computing Machinery (2017). https://doi.org/10.1145/3122831.3122838

  34. Montanari, A., Chomicki, J.: Time domain. In: Liu, L., Özsu, M.T. (eds.) Encyclopedia of Database Systemspp, pp. 3103–3107. Springer, Boston (2009). https://doi.org/10.1007/978-0-387-39940-9_427

  35. Pan, R.K., Saramäki, J.: Path lengths, correlations, and centrality in temporal networks. Phys. Rev. E 84(1), 016105 (2011)

    Article  Google Scholar 

  36. Perry, M., Jain, P., Sheth, A.P.: SPARQL-ST: extending SPARQL to support spatiotemporal queries. In: Ashish, N., Sheth, A. (eds.) Geospatial Semantics and the Semantic Web. Semantic Web and Beyond, vol. 12, pp. 61–86. Springer, Boston (2011). https://doi.org/10.1007/978-1-4419-9446-2_3

  37. Ramesh, S., Baranawal, A., Simmhan, Y.: A distributed path query engine for temporal property graphs. In: 2020 20th IEEE/ACM International Symposium on Cluster, Cloud and Internet Computing (CCGRID), pp. 499–508 (2020). https://doi.org/10.1109/CCGrid49817.2020.00-43

  38. Redmond, U., Cunningham, P.: Subgraph isomorphism in temporal networks. CoRR abs/1605.02174 (2016). http://arxiv.org/abs/1605.02174

  39. Rizzolo, F., Vaisman, A.A.: Temporal xml: modeling, indexing, and query processing. VLDB J.-Int. J. Very Large Data Bases 17(5), 1179–1212 (2008)

    Article  Google Scholar 

  40. Rost, C., et al.: Distributed temporal graph analytics with gradoop. VLDB J. 31(2), 375–401 (2022). https://doi.org/10.1007/s00778-021-00667-4

    Article  Google Scholar 

  41. Semertzidis, K., Pitoura, E., Lillis, K.: Timereach: historical reachability queries on evolving graphs. In: EDBT (2015)

    Google Scholar 

  42. Semertzidis, K., Pitoura, E., Terzi, E., Tsaparas, P.: Best friends forever (BFF): finding lasting dense subgraphs. CoRR abs/1612.05440 (2016). http://arxiv.org/abs/1612.05440

  43. Snodgrass, R.T., et al.: TSQL2 language specification. SIGMOD Rec. 23(1), 65–86 (1994). https://doi.org/10.1145/181550.181562

    Article  Google Scholar 

  44. Wen, D., Huang, Y., Zhang, Y., Qin, L., Zhang, W., Lin, X.: Efficiently answering span-reachability queries in large temporal graphs. In: 2020 IEEE 36th International Conference on Data Engineering (ICDE), pp. 1153–1164 (2020). https://doi.org/10.1109/ICDE48307.2020.00104

  45. Wu, H., Huang, Y., Cheng, J., Li, J., Ke, Y.: Reachability and time-based path queries in temporal graphs. In: 2016 IEEE 32nd International Conference on Data Engineering (ICDE), pp. 145–156 (2016). https://doi.org/10.1109/ICDE.2016.7498236

  46. Xiangyu, L., Yingxiao, L., Xiaolin, G., Zhenhua, Y.: An efficient snapshot strategy for dynamic graph storage systems to support historical queries. IEEE Access 8, 90838–90846 (2020)

    Article  Google Scholar 

  47. Zhang, T., Gao, Y., Qiu, L., Chen, L., Linghu, Q., Pu, S.: Distributed time-respecting flow graph pattern matching on temporal graphs. World Wide Web 23(1), 609–630 (2020). https://doi.org/10.1007/s11280-019-00674-0

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Maria Massri .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2023 Springer-Verlag GmbH Germany, part of Springer Nature

About this chapter

Check for updates. Verify currency and authenticity via CrossMark

Cite this chapter

Massri, M., Miklos, Z., Raipin, P., Meye, P. (2023). Clock-G: Temporal Graph Management System. In: Hameurlain, A., Tjoa, A.M., Boucelma, O., Toumani, F. (eds) Transactions on Large-Scale Data- and Knowledge-Centered Systems LIV. Lecture Notes in Computer Science(), vol 14160. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-662-68014-8_1

Download citation

  • DOI: https://doi.org/10.1007/978-3-662-68014-8_1

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-662-68013-1

  • Online ISBN: 978-3-662-68014-8

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics