클라우드 컴퓨팅, Hadoop, NoSQL 새로운 기술이고 구글이나 FaceBook과 같은 B2C의 선두 업체들이 주로 사용하는 기술이다.
그런데, 왜 우리도 이 기술에 열광하는가?
재미는 있고, 쓸모는 있는 기술이다. 그런데 필요가 있나? 한번 더 생각해볼 필요가 있다.
첫번째 Hadoop
Hadoop의 경우 대용량 데이타를 배치성으로 처리하기 위한 분산 처리 프레임웍이다.
여러가지 사용 용도가 있을 수 있겠지만, 주로 대용량 데이타를 분석하기 위해서 사용된다.
이런 형태의 데이타 분석은 이미 OLAP이나 BI형태로 솔루션들이 제공되고 있고, 기업에서는 이미 구축되어 있다. 구글이나 페이스북과 같은 대규모 서비스를 한다면 모를까? 5000만 인구의 대한민국에서는 그만한 데이타 분석이 필요할까 과연 의문이다.
물론 비정형 데이타 분석에는 충분히 활용할만하다. 이런 시나리오를 바탕으로 오라클,Microsoft,IBM등은 Hadoop과 융합한 솔루션을 출시하는데, 데이타를 수집 및 정재 변환하고, 이 데이타를 Hadoop 클러스터에 넣는 시나리오이다.
국내에서도 한정된 시나리오에는 사용될만은 하지만, 이게 과연 이렇게 열광할만한 솔루션인가는 사실 반문이 든다. 차라리 memcached나 redis 같은 솔루션들이 훨씬 더 도움이 될거 같다.
두번째 NoSQL
NoSQL은 대용량 데이타 저장, 성능 등에 목적을 가지고 있는 특수목적 데이타 베이스로
각 NoSQL 솔루션에 따라서 그 사용 용도가 모두 틀리다.
오픈소스 RDBMS의 대명사인 MySQL 의 경우에도 10억개 정도의 레코드를 처리할 수 있으며, Query Off Loading이나 Sharding등을 통해서 확장성과 성능을 모두 보장할 수 있다. 페이스북도 몇년전까지만 해도 실제로 MySQL과 memcached의 조합으로 운영을 해왔다.
사실 요즘 유행하는 대부분의 기술들은 기업(Enterprise)성의 기술들이 아니다. IT의 주도권이 Oracle,IBM,Microsoft등의 대형 벤더에서 Google,FaceBook,Twitter로 넘어오면서 이들이 사용하는 기술들이 주목 받게 되었다. 그러나 이들이 만들어낸 기술 (NoSQL, Map & Reduce 기반의 분산 처리)는 철저하게 이들의 서비스 시나리오에 최적화 되어 있다.
그런데 이것을 가져다가 적용하려하니, 엔터프라이즈에서는 안맞는 부분이 생기고, 국내 B2C에서도 활용 시나리오가 모호해진다.
첫번째로, 국내 시장 상황에서는 이정도의 빅데이타가 없고
두번째로, 이러한 기업들은 자체적으로 해당 기술에 대한 엔지니어를 보유하고 끊임 없이 공부하고 업그레이드 해 나간다. 특히 국내 SI기업에서는 인력 기반 장사 시장에서 어려운 이야기고 테스트랩이라도 하나 세팅하려고 하고 연구팀을 꾸리면 1~2년이면 SI 시장으로 나가야 한다.
기술 자체가 의미가 없는 것은 아니다. 그러나!! 왜 생긴 기술이고 내 업무에 적용할만한지를 판단해봐야 할것이며, 기존에 다른 솔루션들을 사용하고 있었을 경우, 이런 신기술로 변환했을 경우 장단점을 꼼꼼하게 따져 봐야 한다. 더 이상 기술 유행에 휩쓸리지 말고 기술 자체를 이해하는 노력이 필요하다.
그리고 이런 기술을 쓰려면 반드시 개발자나 기술자들이 중요한 것을 인식하고 충분한 기술 습득의 시간과 환경을 제공함으로써 내재화를 진행해야 한다. 예전처럼 외주 개발자를 밀어붙이고, 솔루션 벤더 불러다가 욕을 한다고 해결될게 아니다. 욕을 하고 싶으면 그 오픈소스를 만들고 있는 개발자들에게 월급을 주시던가...
'클라우드 컴퓨팅 & NoSQL > 분산컴퓨팅&클라우드' 카테고리의 다른 글
HMAC을 이용한 REST API 인증 방법 모음 (0) | 2013.03.16 |
---|---|
Google 기술 스택의 이해 (5) | 2012.08.06 |
클라우드 관련 재미있는 사이트 하나 찾아서 북마크 (0) | 2011.10.31 |
분산 처리 오픈 소스 Gearman 퀵리뷰 (0) | 2011.10.24 |
Message Queue Comparision (0) | 2011.06.03 |