출고예상일 안내
주문하신 상품이 한국에서 현지 배송을 위한 출고단계가 이루어질 것으로 예상되는 날짜입니다. 상품을 준비하는 과정에서 내부적인 사정으로 인해 출고예상일에 다소 오차가 생길 수 있습니다.
여러 상품(예약상품포함)을 함께 주문하신 경우 출고예상일이 가장 늦은 날짜에 맞춰 함께 배송됩니다.

ISBN : 9788994506968 / 656쪽 188 x 245 (㎜)
이 상품에 궁금하신점이 있으세요? 1:1상담문의

-
코리아교육그룹 교육연구소
-
박현규, 김성경
-
제임스 러브록
-
성구(강성규)
- 19,800
- 21,600
- 18,900
- 21,600
출판사 리뷰
Hadoop의 다양한 애플리케이션 개발 환경을 상세히 설명하고 구축과 운영에 관한 자세한 정보 수록!
A부터 Z까지 Hadoop에 관한 거의 모든 것!
IT 시스템 세계에서 ‘Hadoop’이라는 소프트웨어 사용이 늘어나고 있다. 이 책을 가지고 있다는 것은 적어도 Hadoop에 관심이 있다는 것이다. 아직 Hadoop에 관해 잘 몰라도 소프트웨어 이름이라는 것 정도는 알고 있겠지만, ‘도대체 용도가 뭐야?’, ‘뭐 하는 거지?’ 등과 같은 초보적인 질문을 하는 사람도 적지 않을 것이다. 또한, 어떤 데이터를 취급하기 위한 미들웨어라는 것은 알고 있더라도 ‘관계형 데이터베이스랑은 어떻게 달라?’, ‘파일시스템이랑 달라?’, ‘처리를 위한 새로운 개념인가?’ 등 다양한 의문이 많을 거라고 생각된다.
Hadoop은 다수의 컴퓨터를 연결하여 대용량 처리를 가능케 하는 오픈 소스 소프트웨어이며, MapReduce라는 자바 프레임워크를 사용해 프로그래밍이 가능하다. 또한, 표준 입출력을 사용할 수 있는 HadoopStreaming, 플로(flow) 기술 환경 Pig, SQL 방식 인터페이스인 Hive 등 다양한 개발 환경을 제공하고 있다. 뿐만 아니라 행 지향 데이터베이스인 HBase나 로그 수집기 Fluentd의 기반 시스템으로도 사용할 수 있어서 높은 범용성을 자랑한다.
이 책은 1판에 비해 Hadoop에 관해 전혀 모르는 사람들도 이해하는 데 좀 더 도움이 되도록 개요 부분을 더욱 쉽게 구성했으며, MapReduce 애플리케이션 개발 내용을 추가하고 초보자부터 고급 사용자까지 모두 활용할 수 있도록 했다. 운용성, 가용성 측면도 보강하고 새로운 기술 이슈에 대해서도 추가하였다. 또한, 실제 시스템에서 많이 사용되고 있는 클라우데라(Cloudera)의 CDH 4를 기준으로 시스템 확장, 감시, 운영 방법 등 현장에서 바로 적용할 수 있는 최신 노하우까지 담았다.








그래서 이번 《빅 데이터 시대의 하둡 완벽 입문(제2판)》을 출판하면서 Hadoop을 전혀 모르는 사람들이 이해하는 데 좀 더 도움이 될 수 있도록 1장과 2장 내용을 보강하여 Hadoop에 대한 개요 부분을 좀 더 쉽게 구성했다. 또한, MapReduce 애플리케이션 개발 내용을 추가하여 초보자부터 고급 사용자까지 활용할 수 있도록 했다. 이 책의 특색인 운용성과 가용성 측면도 1판에 비해 보강했으며, 새로운 기술 이슈에 대해서도 추가하였다. _XIV
따라서 대용량 데이터를 효율적으로 읽어 들이기 위해서는 복수의 디스크에 데이터를 기록해 두고 각 디스크에서 병행하여 읽을 수밖에 없다. 예를 들어, 한 대의 SATA 디스크라면 70MB/초 처리량밖에 안 되지만, 40대로 동시에 읽어 들이면 2,800MB/초 처리량을 구현할 수 있다. 1TB 데이터도 약 350초면 된다. 만약 1,000대의 디스크를 사용한다면 14초 만에 읽을 수가 있다. _12p
HDFS는 여러 대의 노드로 구성된다. 수백 대 규모가 되면 노드의 고장은 특별한 문제가 아닌 일상적으로 발생할 수 있는 문제가 된다. 예를 들어, 노드 한 대가 고장 날 확률이 1,000일에 1회라고 하면 HDFS 구성 노드 수가 1,000일 경우, 매일 한 대의 서버가 고장 나게 된다. 특정 데이터를 특정 노드에만 저장해 두면 해당 노드의 고장으로 데이터를 잃어버릴 수 있지만, HDFS에서는 복수의 노드를 사용해 데이터 복제를 유지하기 때문에 손실을 방지할 수 있다. _68p
Hadoop은 자바 이외의 언어로 MapReduce 애플리케이션을 작성할 수 있도록 프로그램 인터페이스를 제공하고 있다. 이 인터페이스가 HadoopStreaming이다. Hadoop Streaming을 사용해서 애플리케이션을 작성한 경우도 map 함수/reduce 함수 처리를 작성해 주어야 한다. 그러나 HadoopStreaming에서는 Map 처리/Reduce 처리를 위한 데이터 입출력을 위해 표준 입출력을 사용한다는 것이 큰 차이다. 이것은 표준 입출력을 사용할 수 있다면, 어떤 프로그램 언어든 MapReduce 애플리케이션을 만들 수 있다는 것을 의미한다. 앞서 말한 것과 같이 HadoopStreaming을 사용하는 경우도 Map 처리/Reduce 처리가 필요하다. 단, Map 처리/Reduce 처리는 다음 조건을 고려한 후 작성해야 한다. _150p
MapReduce 애플리케이션 설계에 있어서 중요한 것은 ‘MapReduce 사양’을 따르는 것이다. MapReduce는 병렬 분산 처리를 위한 프레임워크로, 슬레이브 노드 상에서 실행되는 각 Map 태스크나 Reduce 태스크가 상호 통신 없이 독립된 처리를 한다. 그리고 이를 통해 확장성과 안정성을 확보하고 있다. 그러나 범용 언어인 자바로 프로그램을 기술하면 다음과 같은 처리도 간단히 만들 수 있다. _236p
Hive는 HiveQL이라 불리는 SQL 유사 언어를 이용해서 MapReduce를 실행하는 것이다. SQL을 익힌 엔지니어가 MapReduce를 쉽게 이용할 수 있도록 한 처리 인터페이스로, Apache 프로젝트 중 하나다. 주로 페이스북 멤버를 중심으로 개발이 진행되고 있다. SQL과 비슷하지만, SQL 표준을 따르고 있지는 않아서 ‘SQL 유사’라고 한다. HiveQL이 취급하는 데이터는 논리적 행과 열로 이루어진 테이블 구조로, HDFS 상에 파일로 존재한다. HiveQL로 기술한 처리(쿼리)는 MapReduce 같은 일련의 처리로 변환되어 테이블을 조작한다. _320p
최근에는 Cassandra(또는 NoSQL) 등 다른 분산 데이터베이스가 등장하고 있는데, HBase는 이들과 비교해서 ‘일관성을 중시한다’는 것이 특징이다. 다른 데이터베이스들은 저장한 값이 바로 반영되지 않아 저장 시점보다 앞서 존재하던 예전 데이터가 보일 수도 있다. 하지만 HBase에서는 저장된 데이터에 바로 접근해도 반드시 최신 값이 보인다는 것이 특징이다. HBase는 이미 많은 기업이나 서비스가 사용하고 있으며, 최근에는 페이스북 메시지에서 사용해 화제가 되었다. 이 외에도 웹 브라우저 Mozilla의 충돌 리포트 수집, 미국 스텀블어폰(StumbleUpon)의 단축 URL 서비스 등에서 사용되고 있다. _553p










































