2025년 2월 12일 수요일

그동안 KRA/SRA 등록을 하면서 library selection 항목을 잘못 입력했던 것 같다

먼저 이 문서는 KOBIC이나 NCBI 데이터 등록 담당자에게 공식적으로 문의하여 얻은 결론을 바탕으로 쓴 것은 아님을 밝혀 둔다. 순전히 웹 검색과 혼자 생각한 것으로만 쓴 것이다.

데이터를 더욱 가치 있게 만드는 것은 제대로 작성한 메타데이터(다른 데이터를 설명하거나 기술하는 데이터)라고 생각한다. 예를 들어 KRA/SRA에 sequencing raw data를 등록할 때, 이 자료가 어떤 장비에서 만들어졌으며 라이브러리는 어떤 키트로 만들었는지 등을 꼼꼼하게 적는 것을 의미한다. 요즘은 시퀀싱 업체에서 리포트를 만들어 제공하므로 이를 찾아 적는 것에 별 어려움이 없지만, 과거에 연구소 내부 센터에 분석을 의뢰한 경우에는 그렇지를 못하였다. 남은 것은 FASTQ 파일과 이것이 어떤 장비에서 생산되었는지에 해당하는 기억이 전부이다. 물론 이런 방법이 통했던 것은, 나중에 담당자에게 전화나 이메일로 물어서 필요한 메타데이터를 얻을 수 있기 때문이다. 요즘은 달라졌을 것으로 생각한다. 

KRA/SRA의 메타데이터 중에 'library selection'이라는 항목이 있다. NCBI 웹사이트에는 자세한 설명이 없으니 K-BDS 웹사이트 자료실의 '2023년도 바이오 연구데이터 표준등록양식' 파일을 다운로드하여 30쪽부터 나오는 해당 항목을 살펴보자. 국문으로는 '라이브러리 선택항목'이라고 번역해 놓았으며, 가능한 34가지 값을 나열해 놓았다. 

나는 습관적으로 library selection을 random이나 PCR로 설정해 놓았었다. Whole-genoe (shotgun) sequencing library는 DNA 단편을 'random'하게 고르는 일부터 출발하고, 라이브러리 제작 막바지 단계에서 PCR을 하니까 그저 막연하게 생각했던 것이다. 요즘은 shotgun sequencing이라는 말도 잘 쓰지 않는 것 같다. PubMed에서 찾은 두 용어의 쓰임새를 보라. Whole genome shotgun sequencing은 clone-by-clone 방식의 genome sequencing 방법에 대체하는 새로운 방식으로서 쓰이기 시작한 것으로 알고 있다. 이제는 shotgun 방식이 아닌  whole genome sequencing을 상상할 수가 없다.

현재는 whole genome sequencing이라는 용어를 압도적으로 많이 쓴다.

심지어 1997년 Genome Research에는 이런 글도 실렸었다. Philip Green의 'Against a whole-genome shotgun'. Whole-genome shotgun을 반대하다니! 전기차를 반대하다니! 인공지능을 반대하다니! 나는 내 블로그에 쓴 2020년 글에서 이 perspective를 언급한 일이 있다(Jvarkit: Java utilities for bioinformatics).

조금 전에 옆 방에서 서울대학교 백대현 교수(지놈포미의 설립자이기도 함)의 온라인 미팅이 있었다. 백대현 교수는 이 글을 쓴 필립 그린의 연구실에서 박사 학위를 받았다. 오늘 접속을 해 보니 필립 그린 웹사이트에서 더 이상 David Gordon의 모습이 보이지 않는 것으로 보아 은퇴를 한 것 같다. 아, 추억의 consed여!


내가 library selection 방법으로 주로 골랐던 값은 다음의 두 개였다.

  • RANDOM: random selection by shearing or other method
  • PCR: source matrial was selected by designed primers

그러나 어제 게놈 고물상(취지, 최근 작업) 관련 일을 하면서 오래전에 만든 HiSeq 2000 데이터를 다루다가 문득 뭔가 잘못되었다는 생각이 들기 시작하였다. 만약 library selection = PCR이라면, genomics DNA로부터 specific primer를 이용하여 PCR을 한 경우에만 이 용어를 써야 하는 것 아니겠는가? 실제로는 Covaris 등의 기기나 효소를 이용하여 fragmentation을 한 뒤 TapeStation 등으로 'size fractionation'을 한 것이므로, 이를 택해서 명확히 기술해야 한다는 생각이 들었다. 그래서 어제 데이터를 등록할 때에는 size fractionation으로 library selection 항목의 값을 넣었다.

그러면 나의 최종 선택은 옳았는가? 아직 확신을 하지 못하겠다. 예를 들어 rapid sequencing kit로 나노포어 시퀀싱을 한다고 생각해 보자. 이 경우에는 분리 과정에서 저절로 깨진 genomic DNA를 그대로 사용한다. 전기영동을 하여 특정 위치에 해당하는 밴드를 오려내지는 않는다. 그렇다면 size fractionation을 실제로 하지는 않은 것에 해당한다. 따라서 random으로 표기하는 것이 옳다고 본다.

일루미나의 경우에는 bead를 이용하여 size selection을 수행하는 것으로 알고 있다. 하지만 이것은 적극적인 size selection에 해당하지 않고 그저 작은 DNA 단편을 제거하는 cleanup에 해당한다고 누군가 강하게 주장한다면 할 말은 없다...

이 sequencing raw data로부터 de novo assembly를 재수행하다가 또 중요한 사실을 하나 알게 되었다. Draft genome sequence를 등록할 때에는 200 bp 미만의 contig는 제거해야 한다. ZGA pipeline에 '--minimum-contig-length $$$' 옵션이 있지만 이는 가장 마지막의 annotation에 투입되는 염기서열의 길이 제한에 쓰일 뿐, 실제 FASTA file은 건드리지 않는다.  BioPerl Bio::Seq 오브젝트를 기억 속에서 소환해서 간단한 스크립트를 짜야 하나? 그럴 필요는 없었다. 다음과 같이 SeqKit(seq subcommand)를 써서 쉽게 해결하였다.

seqkit seq -m 200 IN.FASTA > FILTERED.FASTA


댓글 없음: