YoonWould!!

Mapreduce vs RDBMS 본문

<IT기술>/빅데이터

Mapreduce vs RDBMS

Hading 2018. 9. 1. 13:54
728x90

[먼저 맵리듀스(mapreduce) 알아보기] (클릭)



Mapreduce vs RDBMS


  • Mapreduce는 간단히 애드혹 분석을 위해 일괄 처리 방식으로 전체 데이터셋을 분석할 필요가 있는 문제에 적합하다.
  • RDBMS(관계형 데이터베이스 관리 시스템)은 포인터 쿼리와 업데이트에 적합한데, 상대적으로 적은 양의 데이터를 낮은 지연 시간에 검색하고 업데이트하기 위해 데이터셋을 색인한다.


 Mapreduce는 데이터를 한 번 쓰면 여러 번 읽는 응용프로그램에 적합하고 반면에 RDBMS는 지속적으로 업데이트되는 데이터셋에 적합하다.


다음 표는 RDBMS와 Mapreduce 비교를 나타내는 표이다.


Mapreduce와 RDBMS의 또 다른 차이는 연산하는 데이터셋 구조의 개수다.


RDBMS

  • 구조화된 데이터(structured data)는 XML문서나 특별히 미리 정해진 스키마에 부합하는 데이터베이스 테이블과 같이 정해진 형태가 있는 엔티티로 구성된다. 
  • 관계형 데이터는 무결성 유지와 중복 제거를 위해 종종 정규화된다. 이러한 정규화는 맵리듀스에는 문제점으로 거론되는데, 이는 맵리듀스가 레코드 읽기를 비지역연산으로 만들고 스트리밍 읽기와 쓰기가 가능하다는 것을 주요 전제 사항으로 하기 때문이다.
Mapreduce
  • 한편, 반구조화된 데이터(semi-structured data)는 조금 더 자유롭고 스키마가 있다 해도 종종 무시되기 때문에 데이터 구조에 대한 참조 정도로 사용되기도 한다. 어떠한 특별한 내부 구조가 없으며 예를 들어 일반 텍스트나 이미지 데이터가 이러한 구조를 띈다.
  • 맵리듀스는 처리 시간에 데이터를 해석하도록 설계되었기 때문에 비구조화 또는 반구조화된 데이터에서 잘 작동한다.

 하지만 Mapreduce와 RDBMS의 차이는 시간이 지남에 따라 희미해지고 있다.

 관계형 데이터베이스가 맵리듀스로부터 일부 아이디어를 수용하기 시작했고, 반대로 맵리듀스에 추가된 고수준의 쿼리 언어(피그와 하이브 같은) 덕분에 맵리듀스 시스템은 전통적인 데이터베이스 프로그래머에게 더욱 친근하게 다가서고 있다.


728x90

'<IT기술> > 빅데이터' 카테고리의 다른 글

맵리듀스(Mapreduce)  (0) 2018.09.01
가장 흔해빠진 7가지 하둡 및 스파크 프로젝트  (0) 2018.09.01