Abstract
Variable size strings are a fundamental data type in RDBMS and used in virtually all database components and applications including XMLs, blogging, customer service comments, e-commerce product descriptions, etc. Many applications could require large strings to store XML documents, JSON documents, customer support history, blog entries, or HTML documents. Many social network applications as well as web 3.0 applications also require large string type. A naïve implementation would simply increase the size of the traditional variable strings, but this will incur performance problems due to row chaining. Using Large Object type (LOB) will enable users to store large string without row chaining, but it is difficult to manipulate LOBs and many built-in operators for strings are not applicable to LOBs. Oracle 12c provides a capability of storing large strings without the row-chaining problem while eliminating LOB?s deficiencies. In addition, users can control the data placement and storage format based on their application workload. However, reading the large string from storage for each reference to the string would be inefficient for queries that reference the strings frequently. This paper presents an efficient processing strategy for queries involving large strings, while supporting theoretically unlimited size of the strings. It illustrates how seemingly simple conceptual work involves careful design and extensive engineering work to have a scalable and efficient implementation. The solution has been implemented in Oracle 12c, and the performance results show its efficiency.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
References
IBM DB2 String data types. http://publib.boulder.ibm.com/infocenter/dzichelp/v2r2/index.jsp?topic=%2Fcom.ibm.db2z10.doc.intro%2Fsrc%2Ftpc%2Fdb2z_stringdatatypes.htm
Microsoft SQL Server char and varchar. http://technet.microsoft.com/en-us/library/ms176089.aspx
NIST Secure Hashing. http://csrc.nist.gov/groups/ST/toolkit/secure_hashing.html
Kunchithapadam, K., Zhang, W., Ganesh, A., Mukherjee, N. Oracle database filesystem. In: ACM SIGMOD Conference 2011, 1149–1160 (2011)
Oracle® Database SecureFiles and Large Objects Developer?s Guide, 12c Release 1 (12.1), E17605-10
Hendler, J.: Web 3.0: the dawn of semantic search. IEEE Comput. 43(1), 77–80 (2010)
Vianu, V.: A web odyssey: from Codd to XML. In: ACM PODS Conference 2001, pp. 1–15 (2001)
Sumbaly, R., Kreps, J., Shah, S.: The ?Big Data? Ecosystem at LinkedIn. In: ACM SIGMOD Conference 2013, 1125–1134 (2013)
Guadagno, R.E., Loewald, T.A., Muscanell, N.L., Barth, J.M., Goodwin, M.K., Yang, Y.: Facebook History Collector: A New Method for Directly Collecting Data from Facebook. Int. J. Interact. Commun. Syst. Technol., 3, 57–67 (2013)
Extensible Markup Language (XML). http://www.w3.org/XML/
Introducing JSON. http://www.json.org/
MySQL 5.7 Reference Manual. http://dev.mysql.com/doc/refman/5.7/en/char.html
PostgreSQL 9.3.5 Documentation. http://www.postgresql.org/docs/9.3/static/datatype-character.html
Acknowledgements
Many people contributed to the initial discussion of this project. Our thanks to Thierry Cruanes, Cetin Ozbutun, Dmitry Potapov, Kumar Rajamani, Shrikanth Shankar, Sankar Subramanian, Andy Witkowski, and Mohamed Zait. We apologize if we missed anyone.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2015 Springer International Publishing Switzerland
About this paper
Cite this paper
Eadon, G., Chong, E.I., Raghavan, A. (2015). Efficient Storage and Query Processing of Large String in Oracle. In: Chen, Q., Hameurlain, A., Toumani, F., Wagner, R., Decker, H. (eds) Database and Expert Systems Applications. Globe DEXA 2015 2015. Lecture Notes in Computer Science(), vol 9261. Springer, Cham. https://doi.org/10.1007/978-3-319-22849-5_24
Download citation
DOI: https://doi.org/10.1007/978-3-319-22849-5_24
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-22848-8
Online ISBN: 978-3-319-22849-5
eBook Packages: Computer ScienceComputer Science (R0)