구글, 페이스북 대형 IT업체들이 사용하는 데이터베이스(DataBase)는 무엇일까?

 

갑자기 궁금해서 찾아봄...-_-;;

구글은 빅테이블(Google Bigtable)이라는것을 사용한다고 하는데, 관계형데이터베이스(RDB) 같은 방식이 아니라, 저장소개념으로 필드 단위로 데이터를 저장하는 컬럼 기반 데이터베이스를 사용한다고... 생소한 방식인데, 물론 구글의 모든 전체 서비스를 이것으로 사용하지는 않겠지만, 검색엔진 부분은 이것을 사용한다고...

페이스북(facebook)은 위 사진처럼 엄청난 데이터센터를 공개해서 화제가 되기도 했는데,디비는 MySQL 데이터베이스를 사용하고 있고, PHP 프로그래밍 언어를 통해 개발되었는데, 엔지니어링팀이 기존코드를 C++로 포딩 전환해 성능을 높인 힙합(HipHop)이라 불리는 프로그램을 개발했다고 합니다.

API 제공때문인지 FaceBook database scheme ERD도 공개가 되어 있네요~

역시 큰 회사이고, 제대로 된 회사일수록 간단명료한듯...


트위터는 데이터베이스를 마이SQL(MySQL)을 사용하고 있는데, 카산드라(Casandra)라는것으로 교체하기로 했다고 하는데, 오라클이 최근에 mysql을 인수한것때문이라는 이야기가 나오는데, 페이스북과 디그 등 많은 업체들과 수많은 SNS소셜 네트워크 업체들이 DB이전을 고려하고 있다고 합니다.


오라클이 현재 정책을 무료에서 유지보수 관리비를 받는 식으로 라이센스 개선하고 있는데,
만약 어느날 갑자기 차후버전부터는 오라클처럼 돈을 받겠다라고 나온다면 사용업체들은 막대한 피해를 입을수도 있으니 어쩔수 없는 선택인듯합니다.

소셜네트워크사이트들이 MySQL, 오라클, IBM DB2, MS SQL서버 등의 상용 관계형데이터베이스(RDB)보다 카산드라와 같이 성능이 우수한 오픈소스 및 인덱스 기반의 데이터 저장 구조를 가진 NoSQL 등 새로운 방식을 선호하고 있다고 하는데, NoSQL은 RDB의 한계를 극복하기 위한 데이터 저장소의 새로운 형태로 수평적 확장성을 특징으로 하는데, 관계형이 아니기 때문에 join이 없고 고정된 스키마를 갖지 않으며, 대표적인 NoSQL 제품은 Google의 BigTable, Amazon의 Dynamo이 있다고 합니다.



카산드라 홈페이지 - http://cassandra.apache.org/
위에서 언급된 카산드라는 구글의 BigTable 컬럼기반의 데이타 모델과 페이스북에서 만든 Dynamo의 분산 모델을 기반으로 하여 제작된 아파치 오픈소스로 분산 데이타 베이스로 SQL을 사용하지 않는 NoSQL의 제품이며, 대용량의 데이타 트렌젝션에 대해서 고성능 처리가 가능한 시스템이라고 하는데, 앞으로는 mysql을 대체할 db가 될수 있을까요?


아마존은다이나모를 사용하고, 국내의 네이버, 다음과 같은 포탈 등은 전세계적인 포탈 업체들과 마찬가지로 LAMP (Linux/Apache/MySQL/PHP) Stack을 기반을 서비스를 하고 있다고...

MS-SQL은 KT, KTF, G마켓에 DB를 추가 구축했으며, 제주은행에 시스템을 구축
SQL 서버 2005를 적용한 삼성전자, 옥션(이베이) 등 국내 고객사가 SQL 서버 2008로의 업그레이드를 준비를....

한국IBM은 올해 삼성전자, LG전자, SK에너지 등
한국사이베이스는 SKT, 경찰청, KT&G, 특허청 등
국내 기업인 알티베이스도 KT, SKT, KT&G, 특허청 등의 10여 곳을 고객으로 확보


처음에는 찾아보면서 이것저것 배울것도 많더니, 국내업체쪽은 관련자료도 별로없고, 독자적인 개발이나 오픈소스보다는 외국 DB업체에 종속된 부분이 많은듯 하네요~

국내 업체들도 구글, 페이스북 처럼 새로운 오픈프로젝트를 통해서 하나의 멋진 시스템을 만들어내보는것은 어떨까 싶은 생각이 듭니다.