생물정보학
1. 개요
대량으로 생산되는 생물학 관련 데이터를 컴퓨터로 분석하는 분야이다. 영어로는 바이오인포매틱스(Bioinfomatics)라고 한다. 이 때, 생물학 관련 데이터는 마이크로 어레이 데이터, 논문 데이터, RNA-seq. 데이터, 이미징 데이터 등을 포함한다. 주로 사용되는 컴퓨터 언어/도구는 오래 전에는 perl이 많이 사용되었으나 현재는 파이썬 또는 R이 많이 사용되고 있다. 특히 유전체 데이터 분석에 사용되는 여러 가지 소프트웨어를 제공하는 Bioconductor(https://www.bioconductor.org/)는 R언어로 작성되어 있다. 자바 등도 종종 사용된다. 많은 경우 그렇듯 속도가 특히 중요한 경우 자주 C/C++/fortran 으로 작성되기도 하며, R의 경우도 많은 패키지가 C/C++/fortran 등으로 작성되기도 한다.
의료공학과에서는 생체정보학 알고리즘 설계를 중점으로 다루며 MATLAB을 사용한다.
2. 역사
변변찮은 실험 도구를 이용하여 실험을 하던 생물학의 초기 단계에선 기껏해야 엑셀 등의 프로그램으로 분석이 가능한 데이터들이 느린 속도로 만들어지고 있었다. 1990년대부터 기기 등의 발달이 생물학에 서서히 영향을 주기 시작, 1990년대 후반부터 서서히 대용량의 생물학 데이터들이 만들어지기 시작한다. 세계적으로 가장 잘 알려진 예는 인간 유전체 프로젝트(Human Genome Project, HGP)로, 사람의 모든 염색체의 서열을 알아 낸 것이었다. 이 때, 한 번에 한 개의 염색체를 전부 서열분석(sequencing)을 할 수 없기 때문에, 잘려진 DNA 조각들을 개별적으로 서열을 알아 낸 후, 양 끝의 겹치는 서열을 이용하여 조합하는 식으로 전체 염색체의 서열을 알아 내는 식으로 분석하였다. 염색체의 길이가 매우 크기 때문에 이 작업에 컴퓨터가 필수 불가결하였다.
이 즈음 (2000년대 초반) 세포 안에 발현되어 있는 모든(이론적으로) 메신저 RNA(mRNA)의 양을 한 번에 측정해 내는 기술인 마이크로어레이가 개발되어 널리 사용되기 시작하였다. 대략 1만개에서 2만개 정도 되는 유전자에 대하여 그들의 모든 양을 한 번의 실험으로 측정할 수 있게 된 것이다. 즉, 변수의 개수가 1~2만개 정도 되는 여러 문제들이 탄생한 것이다.
그 이후, promoter methylation, SNP, RNA-seq. 등에 의한 대량 데이터는 계속적으로 생산되고 있다. 특히 세포 내에 존재하는 여러 종류의 RNA의 서열을 직접 분석해서 정량하는 기술인 RNA-seq.에 의해 엄청난 양의 데이터들이 생산되고 있다. 어느 센터(?)에서는 하루에 12TB (12,000GB) 정도의 RNA-seq. 데이터가 만들어지고 있다고 한다. 한 사람의 모든 염색체의 서열 역시 하루이틀이면 되는 시점에 이르렀다. 이러한 양의 데이터를 분석하는 것이 생물정보학의 주요 임무이다. 실제로 현재 구글/아마존/IBM/KT 등이 이러한 생물학 데이터의 저장/분석에 사활을 걸고 있는 실정이다. 현재 아마존에서는 1000 genome project를 통해 나오는 데이터를 얹어 놓은 기계를 공개했다.
3. 비슷한 생물학 분야
유사 분야로 시스템 생물학(systems biology), 전산생물학(computational biology)가 존재한다. 전산/정보/시스템 분야들 간의 명확하게 합의된 구분은 없기 때문에 학술적으로든 실무적으로든 혼용된다.
그래도 구분을 해보자면, 시스템 생물학 분야는 생물물리학의 연장선상에서 생물 계(system)의 동역학을 파악하는 분야다. 그리고 전산생물학 분야는 전산학의 연장선상에서 생물체를 다루기 위한 '''기초적인''' 알고리즘과 모델을 만드는 분야다. 반면 생물정보학 분야는 이러한 동역학과 기초적인 알고리즘을 이용하여 각각의 생명과학 문제를 해결하기 위한 응용 소프트웨어를 만드는 분야다.