{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,6,6]],"date-time":"2026-06-06T16:27:20Z","timestamp":1780763240769,"version":"3.54.1"},"reference-count":52,"publisher":"Association for Computing Machinery (ACM)","issue":"9","content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["Proc. VLDB Endow."],"published-print":{"date-parts":[[2025,5]]},"abstract":"<jats:p>The JavaScript Object Notation (JSON) format is ubiquitous, and countless applications depend on it to store and exchange high volumes of data. Despite its great popularity, JSON is nevertheless a very inefficient data format: decoding and querying JSON data is often a major bottleneck for many data-intensive applications.<\/jats:p>\n          <jats:p>\n            In this paper, we explore how Graphics Processing Units (GPUs) can be used to parallelize\n            <jats:italic toggle=\"yes\">both<\/jats:italic>\n            JSON de-serialization and querying. We show how JSON parsing can be implemented on GPUs by means of parallel structural index construction, and we describe how JSON data can then be queried\n            <jats:italic toggle=\"yes\">in situ<\/jats:italic>\n            using a lightweight query engine designed to run on GPUs. We present the design and implementation of GpJSON, a GPU-based JSON data processing library. The library can be used from high-level languages such as JavaScript or Python, and features bindings for the GraalVM language runtime. Our evaluation on real-world datasets shows that, on a single NVIDIA Ampere A100, GpJSON achieves at least 2.9x speedup on end-to-end performance (de-serialization plus querying) over state-of-the-art parallel JSON parsers and query engines, and 6-8 x over NVIDIA RAPIDS.\n          <\/jats:p>","DOI":"10.14778\/3746405.3746439","type":"journal-article","created":{"date-parts":[[2025,9,3]],"date-time":"2025-09-03T17:06:20Z","timestamp":1756919180000},"page":"3216-3229","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":4,"title":["GpJSON: High-Performance JSON Data Processing on GPUs"],"prefix":"10.14778","volume":"18","author":[{"given":"Sacheendra","family":"Talluri","sequence":"first","affiliation":[{"name":"Vrije Universiteit Amsterdam"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Guido Walter","family":"Di Donato","sequence":"additional","affiliation":[{"name":"Politecnico di Milano"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Luca","family":"Danelutti","sequence":"additional","affiliation":[{"name":"Politecnico di Milano"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Koen R.","family":"Vlaswinkel","sequence":"additional","affiliation":[{"name":"Eindhoven University of Technology"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Marco","family":"Arnaboldi","sequence":"additional","affiliation":[{"name":"Oracle Labs, Zurich"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Arnaud","family":"Delamare","sequence":"additional","affiliation":[{"name":"Oracle Labs, Zurich"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Marco D.","family":"Santambrogio","sequence":"additional","affiliation":[{"name":"Politecnico di Milano"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Daniele","family":"Bonetta","sequence":"additional","affiliation":[{"name":"Vrije Universiteit Amsterdam"}],"role":[{"vocabulary":"crossref","role":"author"}]}],"member":"320","published-online":{"date-parts":[[2025,9,3]]},"reference":[{"key":"e_1_2_1_1_1","unstructured":"[n.d.]. Java JsonPath implementation. [Online] Accessed: 2024-10-22. Available at: https:\/\/github.com\/json-path\/JsonPath."},{"key":"e_1_2_1_2_1","unstructured":"[n.d.]. JSONPath Plus. [Online] Accessed: 2024-10-22. Available at: https:\/\/github.com\/JSONPath-Plus\/JSONPath."},{"key":"e_1_2_1_3_1","doi-asserted-by":"publisher","DOI":"10.1145\/1735688.1735706"},{"key":"e_1_2_1_4_1","doi-asserted-by":"publisher","DOI":"10.1145\/2925426.2926259"},{"key":"e_1_2_1_5_1","doi-asserted-by":"crossref","unstructured":"Tim Bray. 2014. The javascript object notation (json) data interchange format. Technical Report.","DOI":"10.17487\/rfc7159"},{"key":"e_1_2_1_6_1","unstructured":"Best Buy. 2023. Best Buy Developer API. https:\/\/bestbuyapis.github.io\/api-documentation\/ [Online] Accessed: 2023-03-01."},{"key":"e_1_2_1_7_1","unstructured":"David Chester. [n.d.]. Robust JSONPath engine for Node.js. [Online] Accessed: 2024-10-22. Available at: https:\/\/github.com\/dchester\/jsonpath."},{"key":"e_1_2_1_8_1","doi-asserted-by":"publisher","DOI":"10.1145\/3533737.3535094"},{"key":"e_1_2_1_9_1","unstructured":"Oracle RDBMS documentation. 2023. JSON Path expressions and simplified syntax. https:\/\/livesql.oracle.com\/apex\/livesql\/file\/content_I5YTG3IFTTL9XD15PWRG4G4NI.html [Online] Accessed: 2025-06-21."},{"key":"e_1_2_1_10_1","volume-title":"Proceedings of the Asia-Pacific Programming Languages and Compilers Workshop.","author":"Duboscq Gilles","year":"2013","unstructured":"Gilles Duboscq, Lukas Stadler, Thomas W\u00fcrthinger, Doug Simon, Christian Wimmer, and Hanspeter M\u00f6ssenb\u00f6ck. 2013. Graal IR: An extensible declarative intermediate representation. In Proceedings of the Asia-Pacific Programming Languages and Compilers Workshop."},{"key":"e_1_2_1_11_1","doi-asserted-by":"publisher","DOI":"10.1145\/3448016.3452809"},{"key":"e_1_2_1_12_1","unstructured":"Apache Foundation. 2023. The Arrow data format. https:\/\/arrow.apache.org\/docs\/python\/json.html Accessed: 2025-06-21."},{"key":"e_1_2_1_13_1","unstructured":"Apache Foundation. 2023. Loading LD-JSON in Arrow. https:\/\/arrow.apache.org\/docs\/python\/json.html Accessed: 2025-06-21."},{"key":"e_1_2_1_14_1","unstructured":"Apache Software Foundation. [n.d.]. Apache Parquet. [Online] Accessed: 2024-10-22. Available at: https:\/\/parquet.apache.org\/docs\/."},{"key":"e_1_2_1_15_1","doi-asserted-by":"publisher","DOI":"10.1145\/3623278.3624754"},{"key":"e_1_2_1_16_1","unstructured":"Stefan G\u00f6ssner.[n.d.]. JSONPath - XPath for JSON. [Online] Accessed: 2024-10-22. Available at: http:\/\/goessner.net\/articles\/JsonPath\/."},{"key":"e_1_2_1_17_1","doi-asserted-by":"publisher","DOI":"10.23919\/DATE54114.2022.9774696"},{"key":"e_1_2_1_18_1","doi-asserted-by":"publisher","DOI":"10.1109\/FPL60245.2023.00034"},{"key":"e_1_2_1_19_1","doi-asserted-by":"publisher","DOI":"10.1109\/FPL64840.2024.00012"},{"key":"e_1_2_1_20_1","doi-asserted-by":"publisher","DOI":"10.1145\/1376616.1376670"},{"key":"e_1_2_1_21_1","unstructured":"HEAVY.AI. [n.d.]. HeavyDB. [Online] Accessed: 2024-10-22. Available at: https:\/\/www.heavy.ai\/product\/heavydb."},{"key":"e_1_2_1_22_1","unstructured":"Kinetica DB Inc. [n.d.]. Kinetica: The Database for Time & Space. [Online] Accessed: 2024-10-22. Available at: https:\/\/www.kinetica.com\/."},{"key":"e_1_2_1_23_1","unstructured":"Twitter Inc. 2023. Developer APIs. https:\/\/developer.twitter.com\/en Accessed: 2025-06-21."},{"key":"e_1_2_1_24_1","doi-asserted-by":"publisher","DOI":"10.14778\/3436905.3436926"},{"key":"e_1_2_1_25_1","doi-asserted-by":"publisher","DOI":"10.1109\/DSAA54385.2022.10032381"},{"key":"e_1_2_1_26_1","unstructured":"Gregory Kimball. 2019. Error with batched multi-source JSON read with more than one MB per row. https:\/\/github.com\/rapidsai\/cudf\/issues\/1666. Accessed: 2024-10-22."},{"key":"e_1_2_1_27_1","unstructured":"Gregory Kimball Elias Stehle and Karthikeyan Natarajan. 2023. Reading JSON data in cuDF (NVIDIA). https:\/\/developer.nvidia.com\/blog\/gpu-accelerated-json-data-processing-with-rapids Accessed: 2025-06-21."},{"key":"e_1_2_1_28_1","unstructured":"Kubernetes. 2023. JSONPath support. https:\/\/kubernetes.io\/docs\/reference\/kubectl\/jsonpath\/ Accessed: 2025-06-21."},{"key":"e_1_2_1_29_1","volume-title":"Proceedings of the 19th Symposium on Database Systems for Business, Technology and Web (BTW","author":"Kumaigorodski Alexander","year":"2021","unstructured":"Alexander Kumaigorodski, Clemens Lutz, and Volker Markl. 2021. Fast CSV Loading Using GPUs and RDMA for In-Memory Data Processing. In Proceedings of the 19th Symposium on Database Systems for Business, Technology and Web (BTW 2021). 19\u201338. https:\/\/dl.gi.de\/bitstreams\/d90ece98-9fbe-49af-8778-57595f108478\/download"},{"key":"e_1_2_1_30_1","doi-asserted-by":"publisher","DOI":"10.1007\/s00778-019-00578-5"},{"key":"e_1_2_1_31_1","doi-asserted-by":"publisher","DOI":"10.14778\/3115404.3115416"},{"key":"e_1_2_1_32_1","doi-asserted-by":"publisher","DOI":"10.14778\/3415478.3415534"},{"key":"e_1_2_1_33_1","unstructured":"MongoDB Inc. 2019. BSON Binary Data Format Specification. https:\/\/bsonspec.org\/ Accessed: 2025-06-21."},{"key":"e_1_2_1_34_1","unstructured":"Rene Mueller and Lukas Stadler. [n.d.]. grCUDA: Polyglot GPU Access in GraalVM. [Online] Accessed: 2024-10-22. Available at: https:\/\/github.com\/NVIDIA\/grcuda."},{"key":"e_1_2_1_35_1","unstructured":"MySQL. 2023. The world's most popular open source database. https:\/\/www.mysql.com\/ Accessed: 2025-06-21."},{"key":"e_1_2_1_36_1","unstructured":"NVIDIA Corporation. 2023. CUDA Runtime API: Stream Management. https:\/\/docs.nvidia.com\/cuda\/cuda-runtime-api\/group__CUDART__STREAM.html Accessed: 2025-06-21."},{"key":"e_1_2_1_37_1","unstructured":"Oracle. [n.d.]. GraalVM. [Online] Accessed: 2024-10-22. Available at: https:\/\/www.graalvm.org."},{"key":"e_1_2_1_38_1","doi-asserted-by":"publisher","DOI":"10.14778\/3236187.3236207"},{"key":"e_1_2_1_39_1","doi-asserted-by":"publisher","DOI":"10.1109\/ICFPT52863.2021.9609833"},{"key":"e_1_2_1_40_1","unstructured":"Luis Fernando Perez. [n.d.]. Node.js bindings for the simdjson project. [Online] Accessed: 2024-10-22. Available at: https:\/\/github.com\/JSONPath-Plus\/JSONPath."},{"key":"e_1_2_1_41_1","unstructured":"PostgreSQL. 2023. The World's Most Advanced Open Source Relational Database. https:\/\/www.postgresql.org Accessed: 2025-06-21."},{"key":"e_1_2_1_42_1","unstructured":"JSON Schema. 2023. JSON Schema Standard. https:\/\/json-schema.org\/ Accessed: 2025-06-21."},{"key":"e_1_2_1_43_1","doi-asserted-by":"publisher","DOI":"10.1109\/PAAP.2011.30"},{"key":"e_1_2_1_44_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.procs.2012.04.205"},{"key":"e_1_2_1_45_1","unstructured":"SQream. [n.d.]. SqreamDB. [Online] Accessed: 2024-10-22. Available at: https:\/\/sqream.com\/product\/sqreamdb\/."},{"key":"e_1_2_1_46_1","doi-asserted-by":"publisher","DOI":"10.14778\/3377369.3377372"},{"key":"e_1_2_1_47_1","unstructured":"Web Technology Surveys. 2023. Usage statistics of LD-JSON for Websites. https:\/\/w3techs.com\/technologies\/details\/da-jsonld"},{"key":"e_1_2_1_48_1","unstructured":"Tencent. [n.d.]. RapidJSON Documentation. [Online] Accessed: 2024-10-22. Available at: https:\/\/rapidjson.org\/."},{"key":"e_1_2_1_49_1","doi-asserted-by":"publisher","DOI":"10.1145\/2213836.2213863"},{"key":"e_1_2_1_50_1","unstructured":"Walmart. 2023. Walmart Developer Portal. https:\/\/developer.walmart.com Accessed: 2025-06-21."},{"key":"e_1_2_1_51_1","doi-asserted-by":"publisher","DOI":"10.1109\/ICDEW.2011.5767669"},{"key":"e_1_2_1_52_1","doi-asserted-by":"publisher","DOI":"10.1145\/2509578.2509581"}],"container-title":["Proceedings of the VLDB Endowment"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.14778\/3746405.3746439","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,9,4]],"date-time":"2025-09-04T19:53:42Z","timestamp":1757015622000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.14778\/3746405.3746439"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2025,5]]},"references-count":52,"journal-issue":{"issue":"9","published-print":{"date-parts":[[2025,5]]}},"alternative-id":["10.14778\/3746405.3746439"],"URL":"https:\/\/doi.org\/10.14778\/3746405.3746439","relation":{},"ISSN":["2150-8097"],"issn-type":[{"value":"2150-8097","type":"print"}],"subject":[],"published":{"date-parts":[[2025,5]]},"assertion":[{"value":"2025-09-03","order":3,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}