JSON data management: supporting schema-less development in RDBMS

Relational Database Management Systems (RDBMS) have been very successful at managing structured data with well-defined schemas. Despite this, relational systems are generally not the first choice for management of data where schemas are not pre-defined or must be flexible in the face of variations and changes. Instead, No-SQL database systems supporting JSON are often selected to provide persistence to such applications. JSON is a light-weight and flexible semi-structured data format supporting constructs common in most programming languages. In this paper, we analyze the way in which requirements differ between management of relational data and management of JSON data. We present three architectural principles that facilitate a schema-less development style within an RDBMS so that RDBMS users can store, query, and index JSON data without requiring schemas. We show how these three principles can be applied to industry-leading RDBMS platforms, such as the Oracle RDBMS Server, with relatively little effort. Consequently, an RDBMS can unify the management of both relational data and JSON data in one platform and use SQL with an embedded JSON path language as a single declarative language to query both relational data and JSON data. This SQL/JSON approach offers significant benefits to application developers as they can use one product to manage both relational data and semi-structured flexible schema data.

[1]  Andrey Balmin,et al.  Jaql , 2011, Proc. VLDB Endow..

[2]  Giorgio Orsi,et al.  The relational model is dead, SQL is dead, and I don't feel so good myself , 2013, SGMD.

[3]  Rick Cattell,et al.  Scalable SQL and NoSQL data stores , 2011, SGMD.

[4]  Toshiyuki Amagasa,et al.  XRel: a path-based approach to storage and retrieval of XML documents using relational databases , 2001, ACM Trans. Internet Techn..

[5]  F. E. A Relational Model of Data Large Shared Data Banks , 2000 .

[6]  Ian Rae,et al.  F1: A Distributed SQL Database That Scales , 2013, Proc. VLDB Endow..

[7]  Zhen Hua Liu,et al.  Efficient support of XQuery Full Text in SQL/XML enabled RDBMS , 2014, 2014 IEEE 30th International Conference on Data Engineering.

[8]  JUSTIN ZOBEL,et al.  Inverted files for text search engines , 2006, CSUR.

[9]  Zhen Hua Liu,et al.  Towards a physical XML independent XQuery/SQL/XML engine , 2008, Proc. VLDB Endow..

[10]  Zhen Hua Liu,et al.  Efficient Support of XQuery Update Facility in XML Enabled RDBMS , 2012, 2012 IEEE 28th International Conference on Data Engineering.

[11]  David J. DeWitt,et al.  On supporting containment queries in relational database management systems , 2001, SIGMOD '01.

[12]  Jignesh M. Patel,et al.  Enabling JSON Document Stores in Relational Systems , 2013, WebDB.

[13]  Michael Stonebraker,et al.  C-Store: A Column-oriented DBMS , 2005, VLDB.

[14]  Adriane Chapman,et al.  Making database systems usable , 2007, SIGMOD '07.

[15]  Peter P. Chen The entity-relationship model: toward a unified view of data , 1975, VLDB '75.

[16]  Jeffrey F. Naughton,et al.  In-RDBMS inverted indexes revisited , 2014, 2014 IEEE 30th International Conference on Data Engineering.

[17]  Rakesh Agrawal,et al.  Storage and Querying of E-Commerce Data , 2001, VLDB.

[18]  Michael McGill,et al.  Introduction to Modern Information Retrieval , 1983 .

[19]  Goetz Graefe,et al.  Query evaluation techniques for large databases , 1993, CSUR.

[20]  Michael Stonebraker,et al.  Object-Relational DBMSs: Tracking the Next Great Wave , 1998 .

[21]  David Zhang,et al.  On brewing fresh espresso: LinkedIn's distributed data serving platform , 2013, SIGMOD '13.

[22]  Daniel J. Abadi,et al.  Integrating compression and execution in column-oriented database systems , 2006, SIGMOD Conference.

[23]  Vikas Arora,et al.  Towards an enterprise XML architecture , 2005, SIGMOD '05.

[24]  E. F. CODD,et al.  A relational model of data for large shared data banks , 1970, CACM.

[25]  Shankar Pal,et al.  Indexing XML Data Stored in a Relational Database , 2004, VLDB.

[26]  Sandeepan Banerjee,et al.  XML Schemas in Oracle XML DB , 2003, VLDB.

[27]  Michael Stonebraker,et al.  Object-Relational DBMSs, Second Edition , 1998 .

[28]  MoffatAlistair,et al.  Inverted files for text search engines , 2006 .

[29]  Vikas Arora,et al.  XMLTable Index - An Efficient Way of Indexing and Querying XML Property Data , 2007, 2007 IEEE 23rd International Conference on Data Engineering.

[30]  Krishna Kunchithapadam,et al.  Oracle database filesystem , 2011, SIGMOD '11.

[31]  Hamid Pirahesh,et al.  System RX: one part relational, one part XML , 2005, SIGMOD '05.