Skip to main content

Speeding Up Double-Array Trie Construction for String Matching

  • Conference paper
Trustworthy Computing and Services (ISCTCS 2012)

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

Included in the following conference series:

Abstract

Double-Array Trie is presented as a data structure for Trie which has advantages both in the compactness and access speed. Thus Double Array Trie structure is broadly adopted by many string matching algorithms. However, the Double Array Trie construction process is faced with problems of huge temporary peak of memory consumption and low construction speed when applied to large scale sets of strings. It’s hard to meet the requirement of detecting high speed network flow in real time. This paper presents two optimization strategies in the Double Array Trie construction process to avoid the temporary peak of memory consumption and reduce the construction time. The first is to generate the Trie recursively. The second is to take different methods in finding current node’s base value process according to the number of child nodes. We applied the improved strategy to Aho-Corasick algorithm and tested with different large-scale sets of strings. From the results, it turned out that the space consumption and the construction time are both significantly improved on the premise of same search efficiency.

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 84.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 109.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

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. http://linux.thai.net/~thep/datrie/datrie.html

  2. http://urlblacklist.com/

  3. http://www.snort.org/

  4. Aho, A., Corasick, M.: Efficient String Matching: An Aid to Bibliographic Search. Communications of the ACM 18(6), 333–340 (1975)

    Article  MathSciNet  MATH  Google Scholar 

  5. Boyer, R., Moore, J.: A fast string searching algorithm. Communications of the ACM 20(10), 761–772 (1977)

    Article  Google Scholar 

  6. Morris, J.H., Knuth, D.E., Pratt, V.R.: Fast pattern matching in strings. SIAM J. Comput. 6(1), 322–350 (1977)

    MathSciNet  Google Scholar 

  7. Tarjan, R.E., Yao, A.C.: Storing a Sparse Table. Communications of the ACM 22(11), 606–611 (1979)

    Article  MathSciNet  MATH  Google Scholar 

  8. Aho, A., Sethi, R., Ullman, J.: Compilers: Principles, Techniques, and Tools. Addison-Wesley (1985)

    Google Scholar 

  9. Aoe, J.: An Efficient Digital Search Algorithm by Using a Double-Array Structure. IEEE Transactions on Software Engineering 15(9), 1066–1077 (1989)

    Article  Google Scholar 

  10. Aoe, J.: An Efficient Implementation of Static String Pattern Matching Machines. IEEE Transactions on Software Engineering 15(8), 1010–1016 (1989)

    Article  Google Scholar 

  11. Aoe, J., Morimoto, K.: An Efficient Implementation of Trie Structures. Software-Practice and Experience 22(9), 695–721 (1992)

    Article  Google Scholar 

  12. Aoe, J., Morimoto, K., Shishibori, M., Park, K.-H.: A trie compaction algorithm for a large set of keys. IEEE Transactions on Knowledge and Data Engineering 8(3), 476–491 (1996)

    Article  Google Scholar 

  13. Morita, K., Tanaka, A., Fuketa, M., Aoe, J.: Implementation of Update Algorithms for a Double-Array Structure. In: 2001 IEEE International Conference on Systems, Man, and Cybernetics, pp. 494–499 (2001)

    Google Scholar 

  14. Navarro, G., Raffinot, M.: Flexible Pattern Matching in Strings: Practical on-line search algorithms for texts and biological sequences (2002)

    Google Scholar 

  15. Tuck, N., Sherwood, T., Calder, B., Varghese, G.: Deterministic Memory-Efficient String Matching Algorithms for Intrusion Detection. In: IEEE INFOCOM (2004)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2013 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Shuai, N., Yanbing, L., Xinbo, S. (2013). Speeding Up Double-Array Trie Construction for String Matching. In: Yuan, Y., Wu, X., Lu, Y. (eds) Trustworthy Computing and Services. ISCTCS 2012. Communications in Computer and Information Science, vol 320. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-35795-4_72

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-35795-4_72

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-35794-7

  • Online ISBN: 978-3-642-35795-4

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics