delight412's image delight412 601118
7/11 '12 posted

어설픈 NoSQL 도입에 대한 경고-2

연인들을 위한 SNS를 표방하는 '비트윈'(Between) 제공 업체인 VCNC의 엔지니어가 빅데이터의 부상과 함께 주목받고 있는 NoSQL DB를 도입하는 것을 경고하는 글이 눈길을 끈다. 

글에 따르면 페이스북, 트위터, 텀블러, 에버노트, 핀터레스트, 인스타그램 등 대부분의 서비스들은 지금도 마이SQL(MySQL)과 같은 관계형 DB를 주요 저장소로 활용하고 있다. 페이스북도 일부에만 HBase와 같은 NoSQL을 실험적으로 도입한다. 트위터는 NoSQL을 전면 도입하려다 그만뒀다고.

왜 그랬을까?
오픈소스로 공개되어 있는 NoSQL은 굉장히 많다.[19] 많은 기업들이 NoSQL을 도입하기 위해 여러가지 시도들을 하고 있다. 하지만 아직까지 주요 데이터 저장소로 RDBMS를 사용하는 경우가 거의 대부분인 것이 현실이다. 왜 그럴까? 많은 이유가 있을 수 있겠지만, 그 중 중요한 하나는 배포 중인 NoSQL들이 범용적으로 사용하기에는 아직 부족한점이 너무도 많다는 것이다.
거의 대부분의 서비스에서는 NoSQL을 사용하지 않는다. 그리고 그 이유는 트렌젝션과 같은 일반적인 서비스 구현에 필요한 기능들이 전혀 준비되어 있지 않기 때문이다. 하지만 구글의 경우 모든 것을 해결한 시스템을 BigTable상에 구현했으며 이미 몇 년동안 서비스하고 있다. 내리고 싶은 결론은 두 가지다. 구글을 찬양하자. 바퀴를 만들지 말자.

eincs님만 이렇게 말하는건 아니다.  지난해부터 빅데이터 관련 플로그 포스팅을 꾸준히 올리고 있는 우승이님도 예전에 NoSQL 도입에 대한 낙관주의를 경계하는 글을 올린 바 있다.

"어차피 저렴한 하드웨어들로 꾸려서 먹고 사는 웹서비스 입장에서 보면 NoSQL이 MySQL 샤딩해서 쓰는것 보다 특별히 서버를 적게 먹는것 같지도 않고, 제약도 많고, 구조를 제대로 이해하고 문제없이 적용하는 것도 매우 어렵습니다. 다만 확장이 용이하고 확장에 대한 관리가 쉬워보이더라구요. SQL이라는 글자는 들어가있지만 대부분의 경우 기존 SQL을 대체하는데 적합해 보이지 않습니다. 특별히 빅데이터 처리가 필요한 경우가 아닌데도 요즘 유행이라 여기저기서 보이니까 SQL대신 한번 써보고 망하는 경우 많은거 같아요. 저희는 서비스 만드는데 NoSQL + MySQL 샤딩 같이 갑니다."

생각보다 쓸만하지 않기 때문에, NoSQL을 성공적으로 도입한 사례는 그래서 주목받는 것이 아닐까?

gaiaville
빅데이터는 ROI하고도 직결되는 일. 여기에 참조된 cloudata는 그루터의 국내 유일의 NoSQL... "삼성SDS가 바이오연구에 하둡·NoSQL 쓴 이유" http://t.co/AN1400Zx
2012/7/10 10:54 오전

yonghosee
저 역시 NoSQL에서 Eventual Consistency는 과연 보통의 개발자가 빠르게 개발하는데 얼마나 도움이 되는가 회의적입니다. 그 정도 스케일의 시스템이 필요하지 않거나 DB를 잘 쓰는게 직관적인 경우가 많죠. #NoSQL쓸만한가
2012/7/10 2:47 오후
hbright7
왠만한 중소 규모에서는 NoSQL을 안쓰는것이 좋다. 트랜잭션도 안되고 조인도 안되는데 굳이 쓸 이유가.. 구관이 명관이라는 말이 맞음.
2012/7/10 2:52 오후





embed