Abstract
Supporting frequent update throughput is an essential issue in applications that involve monitoring and querying continuous variables. We present an I/O optimal method to efficiently update the disk-resident interval tree for a set of new intervals. The idea is to partition the input data into two parts and bulk-applies each part into the structure. Meanwhile, the tree balance is preserved. We introduce our proposal and develop alternative methods. To verify the performance, an experimental evaluation is conducted. The results demonstrate that our method achieves three orders of magnitude better performance than individual updates and 1.5–3 times faster than the drop-and-rebuild method for updating 0.5 million intervals on the historical data containing 10 million intervals.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Arge, L., Hinrichs, K.H., Vahrenhold, J., Vitter, J.S.: Efficient bulk operations on dynamic r-trees. Algorithmica 33(1), 104–128 (2002)
Arge, L., Vitter, J.S.: Optimal external memory interval management. SIAM J. Comput. 32(6), 1488–1508 (2003)
Biveinis, L., Saltenis, S., Jensen, C.S.: Main-memory operation buffering for efficient r-tree update. In: VLDB, pp. 591–602 (2007)
Böhm, C., Klump, G., Kriegel, H.-P.: Xz-ordering: A space-filling curve for objects with spatial extension. In: 6th International Symposium, Advances in Spatial Databases, pp. 75–90 (1999)
Bozkaya, T., Ozsoyoglu, M.: Indexing valid time intervals. In: Quirchmayr, G., Schweighofer, E., Bench-Capon, T.J.M. (eds.) DEXA 1998. LNCS, vol. 1460, pp. 541–550. Springer, Heidelberg (1998). https://doi.org/10.1007/BFb0054512
den Bercken, J.V., Seeger, B.: An evaluation of generic bulk loading techniques. In: VLDB, pp. 461–470 (2001)
den Bercken, J.V., Seeger, B., Widmayer, P.: A generic approach to bulk loading multidimensional index structures. In: VLDB, pp. 406–415 (1997)
Edelsbrunner, H.: Dynamic data structures for orthogonal intersection queries. Tech. Univ. Graz, Austria, Technical report (1980)
Graefe, G.: B-tree indexes for high update rates. SIGMOD Rec. 35(1), 39–44 (2006)
Güting, R.H., Behr, T., Düntgen, C.: SECONDO: a platform for moving objects database research and for publishing and integrating research implementations. IEEE Data Eng. Bull. 33(2), 56–63 (2010)
Kaushik, R., Bohannon, P., Naughton, J.F., Shenoy, P.: Updates for structure indexes. In VLDB, pp. 239–250 (2002)
Lee, M., Hsu, W., Jensen, C.S., Cui, B., Teo, K.L.: Supporting frequent updates in R-trees: a bottom-up approach. In: VLDB, pp. 608–619 (2003)
Overmars, M., Berg, M., Kreveld, M., Schwarzkopf, O.: Computational Geometry. Section 10.1: Interval Trees. Springer, Heidelberg (2000). https://doi.org/10.1007/978-3-662-04245-8
Khalil, M., Kamel, I., Kouramajian, V.: Bulk insertion in dynamic R-trees. In: SDH, pp. 31–42 (1996)
Silva, Y.N., Xiong, X., Aref, W.G.: The RUM-tree: supporting frequent updates in R-trees using memos. VLDB J. 18(3), 719–738 (2009)
Song, M., Choo, H., Kim, W.: Spatial indexing for massively update intensive applications. Inf. Sci. 203, 1–23 (2012)
Acknowledgment
This work is supported by NSFC under grants 61972198, Natural Science Foundation of Jiangsu Province of China under grants BK20191273 and National Key Research and Development Plan of China (2018YFB1003902).
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2021 Springer Nature Switzerland AG
About this paper
Cite this paper
Xu, J., Wei, J. (2021). Efficiently Update Disk-Resident Interval Tree. In: Meng, X., Xie, X., Yue, Y., Ding, Z. (eds) Spatial Data and Intelligence. SpatialDI 2020. Lecture Notes in Computer Science(), vol 12567. Springer, Cham. https://doi.org/10.1007/978-3-030-69873-7_14
Download citation
DOI: https://doi.org/10.1007/978-3-030-69873-7_14
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-69872-0
Online ISBN: 978-3-030-69873-7
eBook Packages: Computer ScienceComputer Science (R0)