COG란 미국 NCBI의 Eugine V. Koonin 그룹에서 개발한 일종의 단백질 서열 데이터베이스이다. 1997년
Science 논문으로 첫선을 보였을 때에는 시퀀싱이 완료된 유전체의 수준에서 집계한 최초의 근대적(?)인 단백질 서열 데이터베이스였다. 어떤 규칙에 의거하여 단백질 패밀리 혹은 클러스터를 구성한 뒤, 각 클러스터에 대해서 COG 번호와 functional class(알파벳 문자 하나), 그리고 단백질 명칭을 부여해 놓은 것이다.
COG의 핵심은 1) 클러스터를 만드는 방법과 2) 이렇게 만들어진 COG data, 그리고 3) query protein이 주어졌을 때 어느 COG에 들어가는지를 선택하는 방법의 3가지라고 보면 된다. 3)을 통해서 당시 붐을 이루던 미생물 유전체 프로젝트의 중간 결과물(유전자 서열 - 단백질로 번역된)에 대하여 꽤 높은 coverage로 functional annotation을 할 수가 있었으므로 한동안 널리 활용되었다. 지금까지 가장 오랫동은 활용된 것은 2003년에 공개된
개정판으로 66개의 genome에서 산출된 4873개의 클러스터로 이루어졌다. 2014년 버전(
Nucl Acids Res 2015 1월에 게재)은 엄밀히 말하면 2003년 개정판을 확장한 것이다. 그래서 COG2003-2014 update라고도 불리는 것이다. 새로 등장한 클러스터는 없고 오히려 242개의 COG가 줄어들어서 전체 클러스터는 4631개가 되었다. 사라진 클러스터는 대부분 효모의 것이다. 큰 차이점은 클러스터를 집계한 유전체의 수가 그동안 축적된 서열데이터를 반영하여 711개로 늘어났고, functional class가 정비되었으며, functional annotation이 새롭게 부여된 COG가 생겼다는 것이다.
공교롭게도 3)번을 위한 프로그램은 마땅한 것이 없었다. COG software가 공개된 것은 꽤 시간이 흐른 뒤였고, 그나마 지금 문서 파일을 읽어봐도 도대체 어떻게 쓰라는 것인지 이해하기가 상당히 어렵다. 당시에는 COGnitor라는 웹 서비스가 있어서 query protein sequence를 넣으면 blast 검색을 거쳐서 COG 번호를 할당해 주었으나 지금은 사라진지 오래이다. 그래서 이런 편법을 쓰기도 하였다. COG protein set에 대해서 blast를 한 뒤, best hit에 해당하는 COG 정보를 단순히 가져오는 것이다. 하지만 1) COG를 생성하는 방법, 즉 genome-specific best hits(BeTs)이 삼각형을 이룰 때 이것을 최초의 클러스터로 간주한다는 원칙이 지켜진 방법이 아니므로 정확성에 약간의 의문을 제기할 수 있다.
따라서 내가 갖고 있는 query protein에 COG number를 할당하는 가장 정통적인 방법은 어떻게 해서든 공개된 COG software를 활용하는 것이다. 이것은
sourceforge("COGsoft")나
NCBI에서 입수할 수 있다. 실은 어제 COG software를 내려받아서 Readme 파일을 막 읽기 시작하였다. 수년 전에는 이해하기가 참 힘들었는데 이제는 조금만 궁리하면 나만의 COG를 만들거나 query protein을 기존의 COG에 할당하는 제대로된 방법을 셋업할 수 있을 것이라는 희망을 갖고 있다. 물론 만들어진 cluster에 annotation을 부여하는 것은 전적으로 사용자의 몫이다. 2015년 논문을 보면 외부에서 만들어진 몇 가지 COG의 확장판에 대해 언급을 하고 있다(예:
EggNOG - 완전 자동 프로세스로 만들어짐). 하지만 오리지널 COG가 자랑스럽게 차별화하는 포인트는 cluster membership과 annotation을 일일이 전문가가 점검한다는 것이다. 아마도 cluster membership을 점검한다는 것은 tree 구조나 alignment 현황을 들여다본다는 뜻일게다.
Query protein에 COG를 할당하는 차선책은
CDD database를 구성하는 COG subset을 이용하는 것이다. ftp://ftp.ncbi.nih.gov/pub/mmdb/cdd/cdd.tar.gz 파일을 내려받아 압축을 풀면 총 53841개의 PSSM 데이터(.smp 파일)가 나오는데, 이중에서 4873개는 COG 2003 버전에 해당하는 것이다. 서브셋을 일부러 만들 필요는 없고, rpsblast를 실행하되 "Cog"를 데이터베이스로 택하면 된다. 물론 더욱 간단하게는
NCBI CDD batch search 사이트에서 최대 4천개까지의 query를 제출하면 된다. 결과는 이메일로 제공된다. 그 다음 찾아진 COG 번호에 해당하는 annotation 정보는
cognames2003-2014.tab 파일을 참조하여 연결하면 된다. 다음 그림은 batch CD-search가 끝난 이메일로 제공된 링크를 방문한 모습이다.
좀 더 개방적인 태도를 취하고 싶다면 EMBL의 EggNOG를 활용해 보는 것도 좋다.
웹사이트에서는 한번에 하나의 서열만을 넣어서 검색할 수 있지만, 전체 데이터를 내려받아서 hmmer 프로그램으로 복수의 query에 대한 검색을 하는 방법이 설명되어 있다.
COG가 결코 만능은 아니다. COG 데이터에는 gene symbol이나 EC 번호와 같은 정보를 제공하지는 않으니까 말이다. 하나의 데이터베이스/서비스가 사용자의 모든 욕구를 다 충족시키지는 못할 것이니.
NCBI의 COG software를 활용하는 방법은
여기에 소개해 두었다.