Multi-model query languages: taming the variety of big data
Tóm tắt
Từ khóa
Tài liệu tham khảo
Saeed, M., et al.: Multiparameter intelligent monitoring in intensive care II: a public-access intensive care unit database. Crit. Care Med. 39, 952–960 (2011)
Lu, J., Holubová, I.: Multi-model data management: what’s new and what’s next?, pp. 602–605 (OpenProceedings.org)
Lu, J., Holubova, I.: Multi-model databases: a new journey to handle the variety of data. ACM Comput. Surv. 52, 1–38 (2019)
Scholl, M.H.: Extensions to the relational data model, pp. 163–182 (1992)
Schweikardt, N., Schwentick, T.: Database Theory: Query Languages, 2nd edn., p. 39. Chapman and Hall/CRC, Boca Raton (2010)
Atzeni, P., Bugiotti, F., Cabibbo, L., Torlone, R.: Data modeling in the NoSQL world. Comput. Stand. Interfaces 67, 103149 (2020)
Barceló, P.: Querying graph databases, pp. 175–187
Angles, R., et al.: Foundations of modern query languages for graph databases. ACM Comput. Surv. 50, 1–40 (2017)
Bondiombouy, C., Valduriez, P.: Query processing in multistore systems: an overview. Int. J. Cloud Comput. 5, 309–346 (2016)
Codd, E.F.: Derivability, redundancy and consistency of relations stored in large data banks. Research Report /RJ /IBM /San Jose, California RJ599 (1969)
Codd, E.F.: Extending the database relational model to capture more meaning. ACM Trans. Database Syst. (TODS) 4, 397–434 (1979)
Atzeni, P., Antonellis, V.D.: Relational Database Theory. The Benjamin/Cummings Publishing Company, San Francisco (1993)
Abiteboul, S., Buneman, P., Suciu, D.: Data on the Web: From Relations to Semistructured Data and XML. Morgan Kaufmann, San Francisco (1999)
IETF RFC 8259. The JavaScript Object Notation (JSON) Data Interchange Format. https://datatracker.ietf.org/doc/html/rfc7159 (2014)
Klarlund, N., Schwentick, T., Suciu, D.: XML: Model, Schemas, Types, Logics, and Queries, 1–41. Springer, Heidelberg (2003)
Extensible Markup Language (XML) 1.0 (Fifth Edition). https://www.w3.org/XML/
Bourhis, P., Reutter, J.L., Suárez, F., Vrgoc, D.: JSON: data model, query languages and schema specification, pp. 123–135
ECMA-404. The JSON Data Interchange Standard, 2nd Edition. https://www.json.org/json-en.html (2017)
Pezoa, F., Reutter, J.L., Suarez, F., Ugarte, M., Vrgoč, D.: Foundations of JSON Schema, pp. 263–273
Baazizi, M.-A., Colazzo, D., Ghelli, G., Sartiani, C.: Schemas and types for json data: From theory to practice, 2060–2063. ACM, New York (2019)
Ullman, J.D.: Principles of Database and Knowledge-Base Systems - Volume I: Classical Database Systems. Tech. Rep. (1988)
Güting, R.H.: GraphDB: Modeling and Querying Graphs in Databases, pp. 297–308
Beeri, C., Fagin, R., Maier, D., Yannakakis, M.: On the desirability of acyclic database schemes. J. ACM 30, 479–513 (1983)
Resource Description Framework (RDF). https://www.w3.org/RDF/ (2004)
Group, C.L.: Cypher query language reference version 9. https://s3.amazonaws.com/artifacts.opencypher.org/openCypher9.pdf (2011)
Angles, R.: The property graph database model. Vol. 2100 of CEUR Workshop Proceedings (CEUR-WS.org)
Bonifati, A., Fletcher, G., Voigt, H., Yakovets, N.: Querying Graphs. Synthesis Lectures on Data Management, vol. 10. Morgan & Claypool Publishers, San Rafael (2018)
Lu, J.: Towards Benchmarking Multi-Model Databases
Zhang, C., Lu, J., Xu, P., Chen, Y.: UniBench: A Benchmark for Multi-model Database Management Systems, pp. 7–23. Springer, Heidelberg (2018)
Zhang, C., Lu, J.: Holistic evaluation in multi-model databases benchmarking. Distrib. Parallel Databases 39, 1–33 (2021)
ArangoDB Query Language(AQL). https://www.arangodb.com/docs/stable/aql/index.html
Abiteboul, S., Quass, D., Mchugh, J., Widom, J., Wiener, J.L.: The Lorel query language for semistructured data. Int. J. Digit. Libr. 1, 68–88 (1997)
Cattell, R.G.G., Barry, D.K.: The Object Data Standard: ODMG 3.0. Morgan Kaufmann, San Francisco (2000)
Clark, J., DeRose, S.: XML Path Language (XPath), Version 1.0, W3C Recommendation. https://www.w3.org/TR/xpath-datamodel-31/ (1999)
Boag, S. et al.: XQuery 1.0: An XML Query Language (Second Edition). https://www.w3.org/TR/2010/REC-xquery-20101214/ (2010)
XSL Transformations (XSLT): Version 1.0. https://www.w3.org/TR/1999/REC-xslt-19991116
Pérez, J., Arenas, M., Gutiérrez, C.: nSPARQL: a navigational language for RDF. J. Web Semant. 8, 255–270 (2010)
Barceló, P., Hurtado, C.A., Libkin, L., Wood, P.T.: Expressive languages for path queries over graph-structured data. ACM Trans. Database Syst. 37, 3–14 (2012)
Figueira, D.: Foundations of Graph Path Query Languages (Course Notes). Reasoning Web Summer School, Leuven, Belgium. hal-03349901v2 (2021)
Mendelzon, A.O., Wood, P.T.: Finding regular simple paths in graph databases. SIAM J. Comput. 24, 1235–1258 (1995)
Wang, G., Liu, M.: Query Processing and Optimization for Regular Path Expressions, vol. 2681, pp. 30–45. Springer, Heidelberg (2003)
Abiteboul, S.: Querying Semi-Structured Data. Lecture Notes in Computer Science, vol. 1186, pp. 1–18. Springer, Heidelberg (1997)
Cruz, I.F., Mendelzon, A.O., Wood, P.T.: A graphical query language supporting recursion. ACM SIGMOD Rec. 16, 323–330 (1987)
Calvanese, D., Giacomo, G.D., Lenzerini, M., Vardi, M.Y.: Rewriting of regular expressions and regular path queries, pp. 194–204
Calvanese, D., Giacomo, G.D., Lenzerini, M., Vardi, M.Y.: Rewriting of regular expressions and regular path queries. J. Comput. Syst. Sci. 64, 443–465 (2002)
Vardi, M.Y.: A Theory of Regular Queries, 1–9. ACM, New York (2016)
Martinez, P., Lopez, J., Rodriguez, F.J., Wiggins, J.B., Boyer, K.E.: An algorithm for context-free path queries over graph databases (2020)
Calvanese, D., Giacomo, G.D., Lenzerini, M., Vardi, M.Y.: Containment of Conjunctive Regular Path Queries with Inverse, pp. 176–185. Morgan Kaufmann, San Francisco (2000)
Kostylev, E.V., Reutter, J.L., Romero, M., Vrgoc, D.: SPARQL with Property Paths. Lecture Notes in Computer Science, vol. 9366, pp. 3–18. Springer, Heidelberg (2015)
SPARQL 1.1 Property Paths. https://www.w3.org/2009/sparql/docs/property-paths/Overview.xml#define-property-paths (2010)
Harris, S., Seaborne, A., Prud’hommeaux, E.: SPARQL 1.1 Query Language. W3C recommendation (2013)
Prud’hommeaux, E., Seaborne, A.: SPARQL Query Language for RDF. W3C recommendation (2008)
Curé, O., Blin, G.: RDF Database Systems: Triples Storage and SPARQL Query Processing. Morgan Kaufmann, San Francisco (2015)
Rodriguez, M.A.: The Gremlin Graph Traversal Machine and Language. https://arxiv.org/abs/1508.03843 (2015)
TinkerPop: The Gremlin Graph Traversal Machine and Language. https://tinkerpop.apache.org/gremlin.html (2021). Accessed Oct 2021
PGQL 1.1 specification. https://pgql-lang.org/spec/1.1/ (2017)
van Rest, O., Hong, S., Kim, J., Meng, X., Chafi, H.: PGQL: A Property Graph Query Language. ACM, New York (2016)
Angles, R. et al.: G-CORE: A Core for Future Graph Query Languages, pp. 1421–1432
Wu, M., Deutsch, A.: GSQL: An SQL-Inspired Graph Query Language. Tech. Rep. (2018)
Deutsch, A., Xu, Y., Wu, M., Lee, V.E. TigerGraph: A Native MPP Graph Database. https://arxiv.org/abs/1901.08248 (2019)
Amer-Yahia, S., Cho, S., Lakshmanan, L.V.S., Srivastava, D.: Minimization of Tree Pattern Queries, pp. 497–508 (2001)
Czerwinski, W., Martens, W., Niewerth, M., Parys, P.: Optimizing tree patterns for querying graph- and tree-structured data. SIGMOD Rec. 46, 15–22 (2017)
Kelter, U., Däberitz, D.: An Assessment of Non-Standard DBMSs for CASE Environments, pp. 96–113. Springer, Heidelberg (1996)
Özsu, M.T., Valduriez, P.: Principles of Distributed Database Systems, 4th edn. Springer, Heidelberg (2020)
Doan, A., Halevy, A.Y., Ives, Z.G.: Principles of Data Integration. Morgan Kaufmann, San Francisco (2012)
Ciucanu, R.: Cross-Model Queries and Schemas: Complexity and Learning. Ph.D. thesis, Lille University of Science and Technology, France (2015)
DeWitt, D.J., et al.: Split query processing in polybase, pp. 1255–1266
Elmore, A.J., et al.: A demonstration of the BigDAWG Polystore system. Proc. VLDB Endow. 8, 1908–1911 (2015)
Bondiombouy, C.: Query Processing in Multistore Systems. (Traitement de requêtes dans les systèmes multistores). Ph.D. thesis, University of Montpellier, France (2017)
Multimodel Database, White Paper. ORACLE CORPORATION 16 (2019)
Oracle Database. https://www.oracle.com/database/ (2021)
PostgreSQL: The World’s Most Advanced Open Source Relational Database. https://www.postgresql.org/ (2021)
MongoDB: Build faster! Build smarter!. https://www.mongodb.com/ (2021). Accessed Oct 2021
ArangoDB. https://www.arangodb.com/
OrientDB: The database designed for the modern world. https://orientdb.com/
Kaitoua, A., Rabl, T., Markl, V.: A distributed data exchange engine for polystores. it Inf. Technol. 62, 145–156 (2020)
Fagin, R., Kolaitis, P.G., Miller, R.J., Popa, L.: Data Exchange: Semantics and Query Answering. Lecture Notes in Computer Science, vol. 2572, pp. 207–224. Springer, Heidelberg (2003)
Calvanese, D., Giacomo, G.D., Lenzerini, M., Vardi, M.Y.: Query processing under GLAV mappings for relational and graph databases. Proc. VLDB Endow. 6, 61–72 (2012)
Lenzerini, M.: Data integration: a theoretical perspective, pp. 233–246
Codd, E.F.: A Data Base Sublanguage Founded on the Relational Calculus, SIGFIDET ’71, pp. 35–68. ACM, New York (1971)
Codd, E.F.: Relational completeness of data base sublanguages. Research Report /RJ /IBM /San Jose, California RJ987 (1972)
Chamberlin, D.D., Boyce, R.F.: SEQUEL: a structured english query language, pp. 249–264
Chamberlin, D.D., et al.: SEQUEL 2: A unified approach to data definition, manipulation, and control. IBM J. Res. Dev. 20, 560–575 (1976)
Held, G., Stonebraker, M., Wong, E.: INGRES: a relational data base system, Vol. 44, pp. 409–416 (AFIPS Press)
Stonebraker, M., Held, G., Wong, E., Kreps, P.: The design and implementation of INGRES. ACM Trans. Database Syst. 1, 189–222 (1976)
Melton, J., Simon, A.R.: Understanding the New SQL: A Complete Guide. Morgan Kaufmann, San Francisco (1993)
Committee, I.J.T.: ISO/IEC 9075-4:2011, Information technology–Database languages–SQL–Part 4: Persistent Stored Modules (SQL/PSM). https://www.iso.org/standard/53684.html (2011)
ISO/IEC 9075-2:1999 Information technology–Database languages–SQL–Part 2: Foundation (SQL/Foundation). https://www.iso.org/standard/26197.html (1999)
Melton, J.: Understanding the New SQL: A Complete Guide, vol. I, 2nd edn. Morgan Kaufmann, San Francisco (2000)
ISO/IEC 9075-4:2011, Information technology–Database languages–SQL–Part 4: Persistent Stored Modules (SQL/PSM). https://www.iso.org/standard/53684.html (2011)
Committee, I.J.T.: ISO/IEC TR 19075-6:2017(E), Part 6: SQL support for JavaScript Object Notation (JSON). https://www.iso.org/standard/67367.html (2017)
ISO/IEC CD 9075-16.2 Information technology–Database languages SQL–Part 16: SQL Property Graph Queries (SQL/PGQ). https://www.w3.org/TR/sparql11-query/ (2019)
Plantikow, S., Cannan, S.: GQL Early Working Draft v2.2. https://www.delltechnologies.com/en-us/blog/crap-and-crud-from-database-to-datacloud/ (2019)
ISO SC32/WG3: Graph Query Language (GQL) Standard. https://www.gqlstandards.org/home (2021)
W3C Workshop on Web Standardization for Graph Data. https://www.w3.org/Data/events/data-ws-2019/report.html (2019)
Ong, K.W., Papakonstantinou, Y., Vernoux, R.: The SQL++ semi-structured data model and query language: A capabilities survey of sql-on-hadoop, nosql and newsql databases. https://arxiv.org/abs/1405.3631 (2014)
Chamberlin, D.: SQL++ For SQL Users: A Tutorial. Couchbase Inc, Santa Clara (2018)
Database Query Language N1QL: Get the familiarity of SQL with the flexibility of JSON. https://www.couchbase.com/products/n1ql (2021)
Alsubaiee, S., et al.: AsterixDB: a scalable, open source BDMS. Proc. VLDB Endow. 7, 1905–1916 (2014)
AsterixDB - The SQL++ Query Language. https://asterixdb.apache.org/docs/0.9.3/sqlpp/manual.html (2018)
A Direct Mapping of Relational Data to RDF. https://www.w3.org/TR/rdb-direct-mapping/ (2012)
Virtuoso: Data-driven agility without compromise. https://virtuoso.openlinksw.com/ (2021)
DuCharme, B.: Learning SPARQL: Querying and Updating with SPARQL 1.1. O’Reilly Media Inc, Sebastopol (2013)
OpenLink Virtuoso Blog. About linked data, data virtualization, and data flow. https://medium.com/virtuoso-blog (2021)
Group, C.L.: Cypher 10 Improvement Proposals. https://github.com/opencypher/openCypher/labels/cypher10 (2017)
openCypher query language. https://opencypher.org/ (2016)
Lindaaker, T.: An overview of the recent history of Graph Query Languages (2018)
Plantikow, S. Summary Chart of Cypher, PGQL, and G-Core. https://s3.amazonaws.com/artifacts.opencypher.org/website/materials/DM32.2/DM32.2-2018-00086r1-summary-chart-of-cypher-pgql-gcore.pdf (2018)
Gallagher, B.: Matching structure and semantics: a survey on graph-based pattern matching, Vol. FS-06-02, pp. 45–53
Junghanns, M., Kießling, M., Averbuch, A., Petermann, A., Rahm, E.: Cypher-based Graph Pattern Matching in Gradoop, pp. 3:1–3:8
Cattell, R.G.G.: The Object Database Standard: ODMG-93. Morgan Kaufmann, San Francisco (1994)
Papakonstantinou, Y., Garcia-Molina, H., Widom, J.: Object exchange across heterogeneous information sources, pp. 251–260
Protocol Buffers – Google’s data interchange format. https://github.com/protocolbuffers/protobuf (2008)
Robie, J., Chamberlin, D., Dyck, M.: XQuery 3.0: An XML Query Language, W3C Recommendation. https://www.w3.org/TR/xquery-30/ (2014)
Bry, F., Schaffert, S.: The XML Query Language Xcerpt: Design Principles, Examples, and Semantics, Vol. 2593 of LNCS, pp. 295–310 (Springer, Heidelberg, 2002)
Hosoya, H., Pierce, B.C.: XDuce: a statically typed XML processing language. ACM Trans. Internet Technol. 3, 117–148 (2003)
Benzaken, V., Castagna, G., Frisch, A.: CDuce: an XML-centric general-purpose language. ACM SIGPLAN Not. 38, 51–63 (2003)
Chen, Z., Ling, T.W., Liu, M., Dobbie, G.: Xtree for Declarative XML Querying. Lecture Notes in Computer Science, vol. 2973, pp. 100–112. Springer, Heidelberg (2004)
Berglund, A., et al.: XML Path Language (XPath) 2.0 (Second Edition), W3C Recommendation. https://www.w3.org/TR/xpath20/#XPath (2010)
Chamberlin, D.D., Robie, J., Florescu, D.: Quilt: An XML Query Language for Heterogeneous Data Sources. Lecture Notes in Computer Science, vol. 1997, pp. 1–25. Springer, Heidelberg (2000)
Kovse, J., Mahnke, W.: Introducing Custom Language Extensions to sql:1999, 193–208. Springer, Heidelberg (2003)
Gottlob, G., Koch, C., Pichler, R.: Efficient Algorithms for Processing Xpath Queries, pp. 95–106. Morgan Kaufmann, Hong Kong (2002)
Marx, M., de Rijke, M.: Semantic characterizations of navigational xpath. SIGMOD Rec. 34, 41–46 (2005)
Baca, R., et al.: Structural XML query processing. ACM Comput. Surv. 50, 64:1-64:41 (2017)
Lakshmanan, L.V.S., Wang, W.H., Zhao, Z.J.: Answering tree pattern queries using views, pp. 571–582
Chen, Z., et al.: Counting Twig Matches in a Tree, pp. 595–604
Jagadish, H.V., Lakshmanan, L.V.S., Srivastava, D., Thompson, K.: TAX: A Tree Algebra for XML. Lecture Notes in Computer Science, vol. 2397, pp. 149–164. Springer, Heidelberg (2001)
Mendelzon, A.O., Wood, P.T.: Finding Regular Simple Paths in Graph Databases, pp. 185–193
Cassidy, S.: Generalizing xpath for directed graphs (2003)
Marklogic XQuery. https://docs.marklogic.com/guide/xquery/langoverview#chapter (2021). Accessed Oct 2021
DataDirect XQuery. http://media.datadirect.com/download/docs/ddxquery/allddxq/reference/wwhelp/wwhimpl/common/html/wwhelp.htm?context=reference &file=quickstart2.html (2020). Accessed Oct 2021
Beyer, K.S., et al.: Jaql: a scripting language for large scale semistructured data analysis. Proc. VLDB Endow. 4, 1272–1283 (2011)
Gössner, S., Frank, S.: JSONPath - XPath for JSON. https://goessner.net/articles/JsonPath/h
Robie, J., et al.: JSONiq: The JSON Query Language. https://www.jsoniq.org/ (2016)
Florescu, D., Fourny, G.: JSONiq: the history of a query language. IEEE Internet Comput. 17, 86–90 (2013)
Fourny, G. Jsoniq: The sql of nosql (2013)
Barceló, P., Libkin, L., Reutter, J.L.: Querying graph patterns, pp. 199–210
Barceló, P., Libkin, L., Lin, A.W., Wood, P.T.: Expressive languages for path queries over graph-structured data. ACM Trans. Database Syst. 37, 31:1-31:46 (2012)
Angles, R., Reutter, J., Voigt, H.: Graph query languages. Encyclopedia of Big Data Technologies, pp. 883–890 (2019)
Fernández, M.F., Florescu, D., Levy, A.Y., Suciu, D.: Declarative specification of web sites with strudel. VLDB J. 9, 38–55 (2000)
Buneman, P., Fernandez, M.F., Suciu, D.: UnQL: a query language and algebra for semistructured data based on structural recursion. VLDB J. 9, 76–110 (2000)
Consens, M.P., Mendelzon, A.O.: Expressing structural hypertext queries in graphlog, pp. 269–292
Marton, J., Szárnyas, G. & Varró, D. Formalising openCypher Graph Queries in Relational Algebra, Vol. 10509 LNCS, 182–196 (Springer, Heidelberg, 2017)
Karvounarakis, G., Alexaki, S., Christophides, V., Plexousakis, D., Scholl, M.: RQL: a declarative query language for RDF, pp. 592–603
Haase, P., Broekstra, J., Eberhart, A., Volz, R.: A comparison of RDF query languages. ISWC 3298, 502–517 (2004)
XSPARQL Language Specification. https://www.w3.org/Submission/xsparql-language-specification/ (2009)
Scholl, M.H., Paul, H., Schek, H.: Supporting flat relations by a nested relational kernel, pp. 137–146
Wang, H., Zaniolo, C., Luo, C.: ATLAS: a small but complete SQL extension for data mining and data streams, pp. 1113–1116 (2003)
Abiteboul, S., Beeri, C.: The power of languages for the manipulation of complex objects. Tech. Rep. (1988)
Lahiri, T., Abiteboul, S., Widom, J.: Ozone: Integrating structured and semistructured data, Vol. 1949, 297–323 (Springer, Heidelberg, 1999)
Fleming, M.W., Gunther, R., Rosebrugh, R.D.: A database of categories. J. Symb. Comput. 35, 127–135 (2003)
Spivak, D.I.: Table manipulation in simplicial databases. https://aarxiv.org/abs/1003.2682 (2010)
Schultz, P., Spivak, D.I., Vasilakopoulou, C., Wisnesky, R.: Algebraic databases. https://arxiv.org/abs/1602.03501 (2016)
Uotila, V., et al.: Multi-model Query Processing Meets Category Theory and Functional Programming
Uotila, V., et al.: MultiCategory: multi-model query processing meets category theory and functional programming. Proc. VLDB Endow. 14, 2663–2666 (2021)
Bugiotti, F., Cabibbo, L., Atzeni, P., Torlone, R.: Database design for nosql systems, Vol. 8824 of LNCS, pp. 223–231 (Springer, Heidelberg, 2014)
Atzeni, P., Torlone, R.: A metamodel approach for the management of multiple models and translation of schemes. Inf. Syst. 18, 349–362 (1993)
Atzeni, P., Gianforme, G., Cappellari, P.: A universal metamodel and its dictionary. Trans. Large Scale Data Knowl. Centered Syst. 1, 38–62 (2009)
Forresi, C., Francia, M., Gallinucci, E., Golfarelli, M.: Optimizing execution plans in a multistore, Vol. 12843 of LNCS, pp. 136–151 (Springer, Heidelberg, 2021)
Maccioni, A., Torlone, R.: Augmented access for querying and exploring a polystore, pp. 77–88