Skip to main content

An Improved Algorithm for Building Suffix Array in External Memory

  • Conference paper
  • First Online:

Part of the book series: Communications in Computer and Information Science ((CCIS,volume 1163))

Abstract

A suffix array (SA) is a data structure that has been widely used in many string processing applications, and it can be built on external memory model using the induced sorting (IS) method when the size of input and output exceeds the capacity of internal memory. In this paper, we make our first attempt to improve the performance of DSA-IS using new substring sorting and naming methods in the reduction phase. The experimental results indicate that, our program for the adapted algorithm DSA-IS+ runs as fast as eSAIS and consumes only half as much disk space as the latter on various real-world datasets.

This is a preview of subscription content, log in via an institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

References

  1. Abouelhodaa, M., Kurtzb, S., Ohlebuscha, E.: Replacing suffix trees with enhanced suffix arrays. J. Discrete Algorithms 2(1), 53–86 (2004)

    Article  MathSciNet  Google Scholar 

  2. Bingmann, T., Fischer, J., Osipov, V.: Inducing suffix and LCP arrays in external memory. In: Proceedings of the 15th Workshop on Algorithm Engineering and Experiments, pp. 88–102 (2012)

    Chapter  Google Scholar 

  3. Dementiev, R., Kärkäinen, J., Mehnert, J., Sanders, P.: Better external memory suffix array construction. ACM J. Exp. Algorithmics 12(3), 4:1–4:24 (2008)

    MathSciNet  MATH  Google Scholar 

  4. Ferragina, P., Gagie, T., Manzini, G.: Lightweight data indexing and compression in external memory. Algorithmica 63(3), 707–730 (2012)

    Article  MathSciNet  Google Scholar 

  5. Kärkkäinen, J., Kempa, D.: Engineering a lightweight external memory suffix array construction algorithm. In: Proceedings of the 2nd International Conference on Algorithms for Big Data, Palermo, Italy, pp. 53–60 (2014)

    Google Scholar 

  6. Kärkkäinen, J., Kempa, D., Puglisi, S.J.: Parallel external memory suffix sorting. In: Cicalese, F., Porat, E., Vaccaro, U. (eds.) CPM 2015. LNCS, vol. 9133, pp. 329–342. Springer, Cham (2015). https://doi.org/10.1007/978-3-319-19929-0_28

    Chapter  Google Scholar 

  7. Liu, W.J., Nong, G., Chan, W.H., Wu, Y.: Induced sorting suffixes in external memory with better design and less space. In: Iliopoulos, C., Puglisi, S., Yilmaz, E. (eds.) SPIRE 2015. LNCS, vol. 9309, pp. 83–94. Springer, Cham (2015). https://doi.org/10.1007/978-3-319-23826-5_9

    Chapter  Google Scholar 

  8. Manber, U., Myers, G.: Suffix arrays: a new method for on-line string searches. SIAM J. Comput. 22(5), 935–948 (1993)

    Article  MathSciNet  Google Scholar 

  9. Nong, G., Chan, W.H., Hu, S.Q., Wu, Y.: Induced sorting suffixes in external memory. ACM Trans. Inf. Syst. 33(3), 12:1–12:15 (2015)

    Article  Google Scholar 

  10. Nong, G., Chan, W.H., Zhang, S., Guan, X.F.: Suffix array construction in external memory using D-critical substrings. ACM Trans. Inf. Syst. 32(1), 1:1–1:15 (2014)

    Article  Google Scholar 

  11. Nong, G., Zhang, S., Chan, W.H.: Two efficient algorithms for linear time suffix array construction. IEEE Trans. Comput. 60(10), 1471–1484 (2011)

    Article  MathSciNet  Google Scholar 

Download references

Acknowledgments

This work was funded by the National Natural Science Foundation of China (Grant number 61872391), the Guangzhou Science and Technology Program (Grant number 201802010011), and the Guangzhou Tianhe District Science and Technology Program (Grant number 201705YH075).

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Ge Nong .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2020 Springer Nature Singapore Pte Ltd.

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Wu, Y., Lao, B., Ma, X., Nong, G. (2020). An Improved Algorithm for Building Suffix Array in External Memory. In: Shen, H., Sang, Y. (eds) Parallel Architectures, Algorithms and Programming. PAAP 2019. Communications in Computer and Information Science, vol 1163. Springer, Singapore. https://doi.org/10.1007/978-981-15-2767-8_29

Download citation

  • DOI: https://doi.org/10.1007/978-981-15-2767-8_29

  • Published:

  • Publisher Name: Springer, Singapore

  • Print ISBN: 978-981-15-2766-1

  • Online ISBN: 978-981-15-2767-8

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics