CFP last date
20 January 2025
Reseach Article

Performance of JSON Updates using Different Storage Forms

by Dušan Petković
International Journal of Computer Applications
Foundation of Computer Science (FCS), NY, USA
Volume 185 - Number 43
Year of Publication: 2023
Authors: Dušan Petković
10.5120/ijca2023923237

Dušan Petković . Performance of JSON Updates using Different Storage Forms. International Journal of Computer Applications. 185, 43 ( Nov 2023), 8-15. DOI=10.5120/ijca2023923237

@article{ 10.5120/ijca2023923237,
author = { Dušan Petković },
title = { Performance of JSON Updates using Different Storage Forms },
journal = { International Journal of Computer Applications },
issue_date = { Nov 2023 },
volume = { 185 },
number = { 43 },
month = { Nov },
year = { 2023 },
issn = { 0975-8887 },
pages = { 8-15 },
numpages = {9},
url = { https://ijcaonline.org/archives/volume185/number43/32974-2023923237/ },
doi = { 10.5120/ijca2023923237 },
publisher = {Foundation of Computer Science (FCS), NY, USA},
address = {New York, USA}
}
%0 Journal Article
%1 2024-02-07T01:28:30.441918+05:30
%A Dušan Petković
%T Performance of JSON Updates using Different Storage Forms
%J International Journal of Computer Applications
%@ 0975-8887
%V 185
%N 43
%P 8-15
%D 2023
%I Foundation of Computer Science (FCS), NY, USA
Abstract

This paper discusses performance of modification operations on JSON documents, stored in different relational storage forms. The first form is a “raw” document form, meaning that an exact copy of the JSON data is stored into relational table. The second one is the native form of MYSQL, which belongs to a group of binary formats for storing JSON. We discuss first the update primitives, which build a foundation for modification operations on JSON data. The existing forms of SQL UPDATE of the database system are used to implement these operations using two pairs of tables, which significantly differ in relation to their volume. We compare the performance of JSON updates on documents stored using the TEXT data type when data are stored in “raw” document form and using the JSON data type, when data are stored in the native (binary) form. Our study divides the update primitives in two groups: one for the modification operations on objects (name-value pairs) and the other one for the modification operations on arrays. For both groups of operations, we measure the performance when the data are stored in the proprietary binary format and in “raw” document one. Our measures show that for all UPDATE operations, except for the initial loading process, the modification of JSON data stored in the binary form is significantly faster than the modification of the same data stored in the “raw” document form. Additionally, improvements in execution time of update statements are higher in the case of the large JSON documents. In other words, the bigger the JSON document, the more significant the performance gains.

References
  1. SQL/JSON 2016 Standard: ISO/IEC TR 19075-6:2017, Information technology Part 6: SQL support for JSON, http://standards.iso.org/ittf/PubliclyAvailableStandards.
  2. D. Petković, SQL/JSON Standard: Properties and Deficiencies, Datenbank Spektrum, Vol.17, No.3, 2017, DOI: 10.1007/s13222-017-0267-4.
  3. JSON datatype and binary storage format, https://dev.mysql.com/worklog/task/?id=8132
  4. D.Petković – Implementation of JSON Update Frameworks in RDBMSs, International Journal of Computer Applications 177(37):35-39, DOI: 10.5120/ijca2020919881.
  5. Partial Update in MySQL,https://dev.mysql.com/doc/ refman/8.0/en/json.html#json-partial-updates
  6. US ZIP Code Data Catalog, https://catalog.data_gov/dataset1.
  7. PostgreSQL: The JSON data type, https://www.postgresql.org/ docs/9.4/datatype-json.html
  8. Z.H. Liu, et al. JSON data management: supporting schemaless development in RDBMS. SIGMOD Conference 2014, 1247-1258 2014, DOI: 10.1145/2588555.2595628
  9. Z.H. Liu, et al., Native JSON Datatype Support, Proc. Of the VLDB Endowment, Vol.13, No. 12, 2020, https://doi.org/10.14778/3415478.3415534
  10. Teradata JSON Datatype: https://docs.teradata.com/ reader/ C8cVEJ54PO4~YXWXeXGvsA/4IAzgRsj_8aRj5pCQoEqzA
  11. BSON, http://bsonspec.org/
  12. UBJSON: http://ubjson.org/
  13. DB2 JSON support, https://www.ibm.com/support/ knowledgecenter/en/SSEPEK11.0.0/json/src/tpc/db2z_jsonfunctions.html
  14. MongoDB storage formats, https://www.mongodb.com/json-and-bson
  15. Couchbase JSON Support, https://developer.couchbase.com/ docum/server/3.x/developer/dev-guide-3.0/using-json-docs.html
  16. D. Tahara, et al: Sinew: a SQL system for multi-structured data. SIGMOD Conference 2014: 815-826, DOI: 10.1145/2588555.2612183
  17. MySQL, Partial Updates of JSON Values, https://dev.mysql. com/ doc/refman/8.0/en/json.html#json-partial-updates.
  18. Oracle, Piece-wise update of JSON, https://docs.oracle.com/en/database/oracle/oracle-database/19/adjsn/overview-of-inserting-updating-loading-JSON-data.html#GUID-94E37619-C242-44F0-B1C3-9A63859AD0C5.
Index Terms

Computer Science
Information Sciences

Keywords

RDBMSs JSON UPDATE performance Artifact Availability: The data and/or other artifacts have been made available at https://doi.org/10.6084/m9.figshare.23805153.