Static and dynamic semantics of NoSQL languages

Autor: Jérôme Siméon, Kim Nguy ~ên, Giuseppe Castagna, Véronique Benzaken
Přispěvatelé: Vérification d'Algorithmes, Langages et Systèmes (LRI) (VALS - LRI), Laboratoire de Recherche en Informatique (LRI), Université Paris-Sud - Paris 11 (UP11)-CentraleSupélec-Centre National de la Recherche Scientifique (CNRS)-Université Paris-Sud - Paris 11 (UP11)-CentraleSupélec-Centre National de la Recherche Scientifique (CNRS), Université Paris-Sud - Paris 11 (UP11)-CentraleSupélec-Centre National de la Recherche Scientifique (CNRS), Preuves, Programmes et Systèmes (PPS), Université Paris Diderot - Paris 7 (UPD7)-Centre National de la Recherche Scientifique (CNRS), IBM Thomas J. Watson Research Center, IBM, Centre National de la Recherche Scientifique (CNRS)-Université Paris Diderot - Paris 7 (UPD7)
Rok vydání: 2013
Předmět:
FOS: Computer and information sciences
Semantics (computer science)
Computer science
Cloud computing
0102 computer and information sciences
02 engineering and technology
Query language
NoSQL
computer.software_genre
Semantics
01 natural sciences
[INFO.INFO-FL]Computer Science [cs]/Formal Languages and Automata Theory [cs.FL]
Computer Science - Databases
Jaql
020204 information systems
Code (cryptography)
0202 electrical engineering
electronic engineering
information engineering

medicine
Calculus (medicine)
computer.programming_language
[INFO.INFO-PL]Computer Science [cs]/Programming Languages [cs.PL]
[INFO.INFO-DB]Computer Science [cs]/Databases [cs.DB]
Computer Science - Programming Languages
Programming language
business.industry
Type inference
Databases (cs.DB)
medicine.disease
JSON
Computer Graphics and Computer-Aided Design
010201 computation theory & mathematics
Embedded SQL
business
computer
Software
Programming Languages (cs.PL)
Zdroj: POPL
POPL, Jan 2013, Rome, Italy. pp.101-114, ⟨10.1145/2429069.2429083⟩
ISSN: 1558-1160
0362-1340
DOI: 10.1145/2480359.2429083
Popis: International audience; We present a calculus for processing semistructured data that spans differences of application area among several novel query languages, broadly categorized as ''NoSQL''. This calculus lets users define their own operators, capturing a wider range of data processing capabilities, whilst providing a typing precision so far typical only of primitive hard-coded operators. The type inference algorithm is based on semantic type checking, resulting in type information that is both precise, and flexible enough to handle structured and semistructured data. We illustrate the use of this calculus by encoding a large fragment of Jaql, including operations and iterators over JSON, embedded SQL expressions, and co-grouping, and show how the encoding directly yields a typing discipline for Jaql as it is, namely without the addition of any type definition or type annotation in the code.
Databáze: OpenAIRE