대용량 데이터 처리 방법론

게임회사에서 서버 개발을 3년 동안 해서 그런건지 사실 대부분의 프로그래밍 영역에 대한 흥미를 잃어 버렸는데, 대용량 데이터 처리에 대한 부분 만큼은 아직도 많은 흥미를 가지고 있다. 

객체지향 방법론과 함께 거의 유일한 관심거리라고 해야 하나..

아무튼 우연찮게 학교에서 산업공학과 수업인 '기업정보 솔루션(Management Information Systems)'에서 교수님이 마련한 특강을 듣는데, 강사로 오신 분께서 관련 이야기를 해 주셨다.

사실 강의 주제는 그게 아니었는데, 중간에 이야기가 나와서 계속 졸다가 그 부분만 흥미롭게 들었던거 같다.

구글 이야기가 나왔는데, 어떻게 그 많은 데이터들을 다 처리를 할 것인가에 대한 이야기 였다. 생각해 보니 정말 그런게 구글이 처리하는 데이터의 양은 과거 내가 게임서버 개발하면서 처리했던 데이터와는 비교도 할 수 없을 만큼 방대할 텐데 어떻게 그렇게 잘 되고 있을까. 이거 정말 대단한 기술이 들어있겠다는 생각이 들었다.

강사님께서 말씀해 주신것은 크게 3가지 부분으로 나뉘는데, 하나는 GFS(Google File System), MapReduce, BigTable 기술이다. 이 3가지 기술이 그런 데용량 데이터의 처리를 가능하게 해 준다는 것이다.

일단 지금 당장은 기말고사이고, 또 입사도 앞두고 있고 해서 자제히 들여다 보지는 못하겠지만, 관련 논문이라도 틈나면 읽어 보자는 의미에서 아래 링크를 남긴다.

The Google File System 

We have designed and implemented the Google File System, a scalable distributed file system for large distributed data-intensive applications. It provides fault tolerance while running on inexpensive commodity hardware, and it delivers high aggregate performance to a large number of clients.


MapReduce: Simplified Data Processing on Large Clusters 

MapReduce is a programming model and an associated implementation for processing and generating large data sets. Users specify a map function that processes a key/value pair to generate a set of intermediate key/value pairs, and a reduce function that merges all intermediate values associated with the same intermediate key. Many real world tasks are expressible in this model, as shown in the paper.


Bigtable: A Distributed Storage System for Structured Data

Bigtable is a distributed storage system for managing structured data that is designed to scale to a very large size: petabytes of data across thousands of commodity servers. Many projects at Google store data in Bigtable, including web indexing, Google Earth, and Google Finance. These applications place very different demands on Bigtable, both in terms of data size (from URLs to web pages to satellite imagery) and latency requirements (from backend bulk processing to real-time data serving). Despite these varied demands, Bigtable has successfully provided a flexible, high-performance solution for all of these Google products. In this paper we describe the simple data model provided by Bigtable, which gives clients dynamic control over data layout and format, and we describe the design and implementation of Bigtable.


by 고노루 | 2008/12/04 15:12 | 개발이야기 | 트랙백 | 덧글(0)

트랙백 주소 : http://fineglow.egloos.com/tb/4764697
☞ 내 이글루에 이 글과 관련된 글 쓰기 (트랙백 보내기) [도움말]

:         :

:

비공개 덧글

◀ 이전 페이지          다음 페이지 ▶