A Space Efficient Indexing Technique for DNA Sequences

공간 효율적인 DNA 시퀀스 인덱싱 방안

  • 송혜주 (숙명여자대학교 멀티미디어과학과) ;
  • 박영호 (숙명여자대학교 멀티미디어과학과) ;
  • 노웅기 (성결대학교 멀티미디어학부)
  • Published : 2009.12.15

Abstract

Suffix trees are widely used in similar sequence matching for DNA. They have several problems such as time consuming, large space usages of disks and memories and data skew, since DNA sequences are very large and do not fit in the main memory. Thus, in the paper, we present a space efficient indexing method called SENoM, allowing us to build trees without merging phases for the partitioned sub trees. The proposed method is constructed in two phases. In the first phase, we partition the suffixes of the input string based on a common variable-length prefix till the number of suffixes is smaller than a threshold. In the second phase, we construct a sub tree based on the disk using the suffix sets, and then write it to the disk. The proposed method, SENoM eliminates complex merging phases. We show experimentally that proposed method is effective as bellows. SENoM reduces the disk usage less than 35% and reduces the memory usage less than 20% compared with TRELLIS algorithm. SENoM is available to query efficiently using the prefix tree even when the length of query sequence is large.

서픽스 트리는 공통의 프리픽스의 빈도수가 높을 때 효과적인 알고리즘으로, 한정된 문자로만 구성된 DNA 유사성 검색을 위한 연구에서 널리 활용되고 있다. 그러나, 서픽스 트리는 인덱스 특성상 메모리 공간을 많이 차지하며, 트리의 분할 시 DNA 시퀀스의 비율로 인한 쏠림현상이 발생한다는 문제점을 가진다. 따라서, 본 논문에서는 공통의 프리픽스를 가지는 가변길이의 파티셔닝 방법으로 합병하지 않는 인덱싱 방안인 SENoM을 제안한다. SENoM은 전체 시퀀스에서 공통의 프리픽스를 가지는 서픽스들의 발생 빈도수가 임계치 이하인 경우 디스크에 저장하고, 임계치 이상인 경우 임계치 이하가 될 때까지 프리픽스를 확장한다. 모든 파티션은 서브트리로 구축한 후 디스크에 저장하며, 질의처리를 위해, 구축된 파티션의 프리픽스를 서픽스로 가지는 트리를 구축한다. 제안하는 기법은 복잡한 합병과정을 제거하고, 많은 파티션 발생으로 인한 디스크 I/O 발생을 줄인다. 실험을 통해, SENoM이 Trellis 알고리즘에 비해 메모리 사용량을 약 35%, 인덱스 크기를 약 20% 감소시켰음을 보인다. 또한, 질의길이가 긴 경우에도 프리픽스 트리를 이용하여 효과적인 질의처리가 가능함을 보인다.

Keywords

References

  1. S. F. Altschul et aI, 'Basic Local Alignment Se-arch Tool,' Journal of the Molecular Biology, vol.215, no.3, pp.403-410, 1990 https://doi.org/10.1016/S0022-2836(05)80360-2
  2. E. McCreight, 'A Space-Economical Suffix Tree Construction Algorithm,' Journal of the ACM, vol.15, no.2, pp.514-534, 1976 https://doi.org/10.1145/321941.321946
  3. D. G. Jeffrey et al, 'BeoBLAST: Distributed BLAST and PSI-BLAST on a Beowulf cluster,' Journal of the Bioinformatics, vol.18, no.5, pp. 765-766, 2002 https://doi.org/10.1093/bioinformatics/18.5.765
  4. E. Hunt, M. P. Atkinson and R. W. Irving, 'Database Indexing for Large DNA and Protein Sequence Collections,' Journal of the VLDB, vol.11, no.3, pp.256-271, 2002 https://doi.org/10.1007/s007780200064
  5. D. Yao, C. Shahabi and P. A. Larson, 'Hash-based Labeling Techniques for Storage Scaling,' Journal of the VLDB, vol.14, no.2, pp.222-237, 2005 https://doi.org/10.1007/s00778-004-0124-6
  6. P. Krishnan, J S. Vitter and B. R. Iyer, 'Estimating Alphanumeric Selectivity in the Presence,' In Proc. of the 1996 ACM SIGMOD Int''l Conf. on Management of Data, vol.25, no.2, pp.282-293, June, 1996 https://doi.org/10.1145/235968.233341
  7. M.Farach-Colton, P.Ferragina and S.Muthukrishnan, 'Overcoming the Memory Bottleneck in Suffix Tree Construction,' Journal of the ACM, vol.47, no.6, pp.987-1011, 2007 https://doi.org/10.1145/355541.355547
  8. C. F. Cheung, J X. Yu and H. Lu, 'A Compact Partitioned Suffix Tree for Disk-based Indexing on Large Genome Sequences,' IEEE Trans. on Knowledge and Data Engineering, vol.17, no.l, pp.90-105, 2005 https://doi.org/10.1109/TKDE.2005.3
  9. Y. Tian et al., 'Practical Methods for Constructing Suffix Trees,' Journal of the VLDB, vol.14, no.3, pp.281-299, 2005 https://doi.org/10.1007/s00778-005-0154-8
  10. S. Tata, R. Hankins and J Patel, 'Practical Suffix Tree Construction,' In Proc. of the VLDB Int'l Conf., vol.23, no.2, pp.36-47, 2004
  11. J I. Won, S. K. Hong, J H. Yoon, S. H. Park and S. W. Kim, 'A Practical Method for Approximate Subsequence Search in DNA Databases,' In Proc. of the PAKDD'2007, pp.921-931, 2007 https://doi.org/10.1007/978-3-540-71701-0_103
  12. R. Giegerich, S. Kurtz and J Stoye, 'Efficient Implementation of Lazy Suffix Trees,' In Proc. of the Workshop on Algorithm Engineering, vol.33, no.11, pp.1035-1049, 2003 https://doi.org/10.1002/spe.535
  13. E. Ukkonen and J Karkkainen, 'On-line Construction of Suffix Trees,' Journal of the Association for Computing Machinery, vol.14, no.3, pp.262-272, 1995 https://doi.org/10.1007/BF01206331
  14. B. Phoophakdee and M. J. Zaki, 'Genome-scale Disk-based Suffix Tree Indexing,' In Proc. of the ACM SIGMOD Int'l Conf. on Management of Data, pp.833-844, 2007 https://doi.org/10.1145/1247480.1247572
  15. E. Hunt, M. Atkinson and R. Irving, 'A Database Index to Large Biological Sequences,' In Proc. of the VLDB Int'l Conf., vol.7, no.3, pp.139-148, 2001
  16. S .Bedathur and J Haritsa, 'Engineering a Fast Online Persistent Suffix Tree Construction,' In Proc. of the IEEE 20th Int'l Conf. on Data Engineering, vol.20, pp.720-731, 2004 https://doi.org/10.1109/ICDE.2004.1320040