{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,2,9]],"date-time":"2026-02-09T10:50:44Z","timestamp":1770634244065,"version":"3.49.0"},"reference-count":46,"publisher":"Association for Computing Machinery (ACM)","issue":"3-4","license":[{"start":{"date-parts":[[2018,11,27]],"date-time":"2018-11-27T00:00:00Z","timestamp":1543276800000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["ACM Trans. Sen. Netw."],"published-print":{"date-parts":[[2018,11,30]]},"abstract":"<jats:p>Brick is a recently proposed metadata schema and ontology for describing building components and the relationships between them. It represents buildings as directed labeled graphs using the RDF data model. Using the SPARQL query language, building-agnostic applications query a Brick graph to discover the set of resources and relationships they require to operate. Latency-sensitive applications, such as user interfaces, demand response, and model-predictive control, require fast queries\u2014conventionally less than 100ms.<\/jats:p>\n          <jats:p>We benchmark a set of popular open source and commercial SPARQL databases against three real Brick models using seven application queries and find that none of them meet this performance target. This lack of performance can be attributed to design decisions that optimize for queries over large graphs consisting of billions of triples but give poor spatial locality and join performance on the small dense graphs typical of Brick. We present the design and evaluation of HodDB, a RDF\/SPARQL database for Brick built over a node-based index structure. HodDB performs Brick queries 3--700\u00d7 faster than leading SPARQL databases and consistently meets the 100ms threshold, enabling the portability of important latency-sensitive building applications.<\/jats:p>\n          <jats:p>This article is an extension of a previously published work\u00a0[16].<\/jats:p>","DOI":"10.1145\/3199666","type":"journal-article","created":{"date-parts":[[2018,11,27]],"date-time":"2018-11-27T13:18:59Z","timestamp":1543324739000},"page":"1-25","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":7,"title":["Design and Analysis of a Query Processor for Brick"],"prefix":"10.1145","volume":"14","author":[{"given":"Gabe","family":"Fierro","sequence":"first","affiliation":[{"name":"UC Berkeley, CA, USA"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"David E.","family":"Culler","sequence":"additional","affiliation":[{"name":"UC Berkeley, CA, USA"}],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"320","published-online":{"date-parts":[[2018,11,27]]},"reference":[{"key":"e_1_2_1_1_1","unstructured":"RDF Concepts Namespace. 1999. Retrieved from http:\/\/www.w3.org\/1999\/02\/22-rdf-syntax-ns#.  RDF Concepts Namespace. 1999. Retrieved from http:\/\/www.w3.org\/1999\/02\/22-rdf-syntax-ns#."},{"key":"e_1_2_1_2_1","unstructured":"RDF Schema Namespace. 2000. Retrieved from https:\/\/www.w3.org\/2000\/01\/rdf-schema#.  RDF Schema Namespace. 2000. Retrieved from https:\/\/www.w3.org\/2000\/01\/rdf-schema#."},{"key":"e_1_2_1_3_1","unstructured":"The Go Programming Language. 2017. Retrieved from https:\/\/golang.org\/.  The Go Programming Language. 2017. Retrieved from https:\/\/golang.org\/."},{"key":"e_1_2_1_4_1","doi-asserted-by":"publisher","DOI":"10.1145\/1385989.1386007"},{"key":"e_1_2_1_5_1","volume-title":"Proceedings of the 14th USENIX Conference on File and Storage Technologies (FAST\u201916)","author":"Michael"},{"key":"e_1_2_1_6_1","volume-title":"Handbook on Ontologies","author":"Antoniou Grigoris"},{"key":"e_1_2_1_7_1","doi-asserted-by":"publisher","DOI":"10.1145\/2993422.2993577"},{"key":"e_1_2_1_8_1","volume-title":"Proceedings of the World Wide Web Consortium","author":"Beckett David","year":"2014"},{"key":"e_1_2_1_9_1","doi-asserted-by":"publisher","DOI":"10.1145\/2821650.2821669"},{"key":"e_1_2_1_10_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.websem.2009.07.002"},{"key":"e_1_2_1_11_1","doi-asserted-by":"crossref","unstructured":"Christian Bizer and Andreas Schultz. 2009. The berlin sparql benchmark. Retrieved from http:\/\/wifo5-03.informatik.uni-mannheim.de\/bizer\/berlinsparqlbenchmark\/.  Christian Bizer and Andreas Schultz. 2009. The berlin sparql benchmark. Retrieved from http:\/\/wifo5-03.informatik.uni-mannheim.de\/bizer\/berlinsparqlbenchmark\/.","DOI":"10.4018\/jswis.2009040101"},{"key":"e_1_2_1_12_1","unstructured":"Cayleygraph. 2017. Cayley. Retrieved from https:\/\/cayley.io.  Cayleygraph. 2017. Cayley. Retrieved from https:\/\/cayley.io."},{"key":"e_1_2_1_13_1","doi-asserted-by":"publisher","DOI":"10.1145\/1317353.1317362"},{"key":"e_1_2_1_14_1","unstructured":"Inc Dgraph Labs. 2017. Dgraph. Retrieved from https:\/\/dgraph.io\/index.html.  Inc Dgraph Labs. 2017. Dgraph. Retrieved from https:\/\/dgraph.io\/index.html."},{"key":"e_1_2_1_15_1","volume-title":"Networked Knowledge-Networked Media","author":"Erling Orri"},{"key":"e_1_2_1_16_1","doi-asserted-by":"publisher","DOI":"10.1145\/3137133.3137155"},{"key":"e_1_2_1_17_1","unstructured":"Franz Inc. 2017. AllegroGraph: Semantic Graph Database. Retrieved from https:\/\/allegrograph.com\/allegrograph\/.  Franz Inc. 2017. AllegroGraph: Semantic Graph Database. Retrieved from https:\/\/allegrograph.com\/allegrograph\/."},{"key":"e_1_2_1_18_1","volume-title":"Visualizing the Semantic Web","author":"Frasincar Flavius"},{"key":"e_1_2_1_19_1","volume-title":"MessagePack: It\u2019s like JSON. but fast and small","author":"Furuhashi Sadayuki","year":"2014"},{"key":"e_1_2_1_20_1","unstructured":"Google Inc. 2017. Badwolf. Retrieved from https:\/\/google.github.io\/badwolf\/.  Google Inc. 2017. Badwolf. Retrieved from https:\/\/google.github.io\/badwolf\/."},{"key":"e_1_2_1_21_1","unstructured":"Steve Harris Andy Seaborne and Eric Prud\u2019hommeaux. 2013. SPARQL 1.1 query language. W3C Recommend. 21 10 (2013).  Steve Harris Andy Seaborne and Eric Prud\u2019hommeaux. 2013. SPARQL 1.1 query language. W3C Recommend. 21 10 (2013)."},{"key":"e_1_2_1_22_1","doi-asserted-by":"publisher","DOI":"10.1109\/LAWEB.2005.25"},{"key":"e_1_2_1_23_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-642-10543-2_21"},{"key":"e_1_2_1_24_1","volume-title":"Swick","author":"Lassila Ora","year":"1999"},{"key":"e_1_2_1_25_1","doi-asserted-by":"publisher","DOI":"10.5555\/2032397.2032435"},{"key":"e_1_2_1_26_1","first-page":"2","article-title":"Docker: Lightweight linux containers for consistent development and deployment","volume":"239","author":"Merkel Dirk","year":"2014","journal-title":"Linux"},{"key":"e_1_2_1_27_1","doi-asserted-by":"publisher","DOI":"10.1145\/219717.219748"},{"key":"e_1_2_1_28_1","doi-asserted-by":"publisher","DOI":"10.5555\/2063016.2063046"},{"key":"e_1_2_1_29_1","unstructured":"Neo Technology Inc. 2017. Neo4j. Retrieved from https:\/\/neo4j.com\/.  Neo Technology Inc. 2017. Neo4j. Retrieved from https:\/\/neo4j.com\/."},{"key":"e_1_2_1_30_1","doi-asserted-by":"publisher","DOI":"10.14778\/1453856.1453927"},{"key":"e_1_2_1_31_1","doi-asserted-by":"crossref","volume-title":"Usability Engineering","author":"Nielsen Jakob","DOI":"10.1016\/B978-0-08-052029-2.50007-3"},{"key":"e_1_2_1_32_1","doi-asserted-by":"publisher","DOI":"10.1109\/5254.920601"},{"key":"e_1_2_1_33_1","doi-asserted-by":"publisher","DOI":"10.1109\/CTS.2010.5478492"},{"key":"e_1_2_1_34_1","volume-title":"ACEEE Summer Study on Energy Efficiency in Buildings. Asilomar Convention Center","author":"Piette Mary Ann","year":"2014"},{"key":"e_1_2_1_36_1","doi-asserted-by":"publisher","DOI":"10.1145\/2815072.2815073"},{"key":"e_1_2_1_37_1","unstructured":"Craig Sayers. 2004. Node-centric rdf graph visualization. http:\/\/www.hpl.hp.com\/techreports\/2004\/HPL-2004-60.pdf.  Craig Sayers. 2004. Node-centric rdf graph visualization. http:\/\/www.hpl.hp.com\/techreports\/2004\/HPL-2004-60.pdf."},{"key":"e_1_2_1_38_1","doi-asserted-by":"publisher","DOI":"10.1109\/ICDE.2009.28"},{"key":"e_1_2_1_39_1","unstructured":"OpenLink Software. 2017. Virtuoso. Retrieved from https:\/\/virtuoso.openlinksw.com\/download\/.  OpenLink Software. 2017. Virtuoso. Retrieved from https:\/\/virtuoso.openlinksw.com\/download\/."},{"key":"e_1_2_1_40_1","doi-asserted-by":"publisher","DOI":"10.1145\/1367497.1367578"},{"key":"e_1_2_1_41_1","unstructured":"SYSTAP LLC. 2017. Bigdata Database Architecture Whitepaper. Retrieved from https:\/\/www.blazegraph.com\/whitepapers\/bigdata_architecture_whitepaper.pdf.  SYSTAP LLC. 2017. Bigdata Database Architecture Whitepaper. Retrieved from https:\/\/www.blazegraph.com\/whitepapers\/bigdata_architecture_whitepaper.pdf."},{"key":"e_1_2_1_42_1","unstructured":"SYSTAP LLC. 2017. blazegraph. Retrieved from https:\/\/www.blazegraph.com\/.  SYSTAP LLC. 2017. blazegraph. Retrieved from https:\/\/www.blazegraph.com\/."},{"key":"e_1_2_1_43_1","volume-title":"A free and open source Java framework for building semantic web and linked data applications.","author":"Software Foundation The Apache","year":"2017"},{"key":"e_1_2_1_44_1","unstructured":"The Apache Software Foundation. 2017. High performance Triple Datastore. Retrieved from https:\/\/jena.apache.org\/documentation\/tdb\/.  The Apache Software Foundation. 2017. High performance Triple Datastore. Retrieved from https:\/\/jena.apache.org\/documentation\/tdb\/."},{"key":"e_1_2_1_45_1","unstructured":"The RDFLib Team. 2017. RDFLib. Retrieved from https:\/\/rdflib.readthedocs.io\/en\/stable\/.  The RDFLib Team. 2017. RDFLib. Retrieved from https:\/\/rdflib.readthedocs.io\/en\/stable\/."},{"key":"e_1_2_1_46_1","unstructured":"TopQuadrant. 2017. TopBraid Live. Retrieved from http:\/\/www.topquadrant.com\/products\/topbraid-live\/.  TopQuadrant. 2017. TopBraid Live. Retrieved from http:\/\/www.topquadrant.com\/products\/topbraid-live\/."},{"key":"e_1_2_1_47_1","volume-title":"Journal of Physics: Conference Series","volume":"180","author":"Wu Kesheng","year":"2053"}],"container-title":["ACM Transactions on Sensor Networks"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3199666","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3199666","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T19:07:18Z","timestamp":1750273638000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3199666"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2018,11,27]]},"references-count":46,"journal-issue":{"issue":"3-4","published-print":{"date-parts":[[2018,11,30]]}},"alternative-id":["10.1145\/3199666"],"URL":"https:\/\/doi.org\/10.1145\/3199666","relation":{},"ISSN":["1550-4859","1550-4867"],"issn-type":[{"value":"1550-4859","type":"print"},{"value":"1550-4867","type":"electronic"}],"subject":[],"published":{"date-parts":[[2018,11,27]]},"assertion":[{"value":"2018-01-01","order":0,"name":"received","label":"Received","group":{"name":"publication_history","label":"Publication History"}},{"value":"2018-03-01","order":1,"name":"accepted","label":"Accepted","group":{"name":"publication_history","label":"Publication History"}},{"value":"2018-11-27","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}