목록빅데이터/BIGDATA Platform (14)
Practice makes perfect

스톰(STORM)이란? : 실시간 분산 처리기 - 빅데이터 프로젝트에서 실시간 데이터를 병렬 프로세스(독자적으로 처리(MAP)의 결과를 최종의 결과로 모아주는 것 = reduce - 분산 병렬 처리 )로 처리하기 위한 소프트웨어입니다. Nathan Marz와 BacType의 팀이 개발하였으며, 이 프로젝트는 트위터에 의해 인수된 뒤 오픈 소스화되었습니다. 스톰의 특징 1) 스톰은 사용자가 만든 spout와 bolt를 사용하여 정보원과 조작부를 정의함으로써 스트리밍 데이터의 일괄, 분산 처리를 가능케 합니다. 2) 이벤트를 발생하게 하는 기능을 없어서 에스터를 연결하여 이벤트를 사용합니다. * 에스퍼 : 실시간 스트리밍(데이터가 움직이는 통로) 데이터의 복잡한 이벤트 처리가 필요할 때 사용하는 룰 엔진 3..

하둡(Hadoop)이란 ? : 2003년 구글의 파일 시스템이 모태가 돼서 만들어진 것이 HDFS이고, 2004년에 구글이 발표한 맵리듀스(mapreduce)를 적용하여 하둡에 구현이 되어서 2009년에 발표가 되었습니다.하둡의 창시자가 2005년에 검색엔진 프로젝트를 진행하면서 하둡 프로젝트가 시작되었습니다. 구글의 알고리즘을 통해서 완성되었는데 그 당시 구글의 주 핵심기능이 검색 기술이었기 때문에 가능했다고 합니다.(빠른 처리) 하둡(Hadoop)의 특징 1) 하둡은 여러 개의 저렴한 컴퓨터를 마치 하나인 것처럼 묶어 대용량 데이터를 처리하는 기술입니다. 2) 하둡을 황용하여 빅데이터 분석에 들어가는 초기 비용을 줄이면서 데이터 시스템과의 호환 문제도 쉽게 해결할 수 있습니다. 3) 하둡은 수천 대의..

주키퍼(ZOOKEEPER)란? : 분산 코디네이션 서비스를 제공하는 오픈소스 프로젝트로, 일관적으로 관리 해주는 프로그램 입니다. 주키퍼(ZOOKEEPER) 홈페이지 : zookeeper.apache.org/ 주키퍼(ZOOKEEPER)역할 1) 네임서비스를 통해 하나의 서버만 서비스를 수행하지 않고 알맞게 분산해 각각의 클라이언트들이 동시 작업할 수 있도록 지원하여 부하를 분산시킵니다. 2) 락(lock)을 통해 하나의 서버에서 처리된 결과가 또 다른 서버들과 동기화할 수 있도록 합니다. - 결국 주키퍼는 안정적이고 가용성 높은 znode 데이터 시스템을 제공하는 클러스터 서버라고 해도 과언이 아닙니다. 주키퍼(ZOOKEEPER) 주요 구성 요소 Client : 주키퍼 ZNode에 담긴 데이터에 대한 쓰..

카프카(Kafka)란? MOM(Message Oriented Middleware – 메시지성 데이터 처리에 최적화되어 있는 middleware, 비정형성) 소프트웨어 중 하나로 대규모로 발생하는 메시지성 데이터를 비동기 방식으로 중계하는 역할을 하며 실시간 처리에 사용합니다. 실시간 데이터 피드를 관리하기 위해 통일된, 높은 처리량, 낮은 지연시간을 지닌 플랫폼을 제공하는 것을 목표로 합니다. 링크드인에서 2011년에 개발되어 그 해 6월에 아파치 인큐베이터에 등록됐고, 2012년 10월 에 아파치 최상위 프로젝트로 승격되었습니다. Kafka의 기능 : 원천 시스템으로부터 대규모 트랜잭션 데이터가 발생했을 때 중간에 데이터를 버퍼링하면서 타깃 시스템에 안정적으로 전송해 주는 강력한 기능과 아키텍처를 제공..

플럼(Flume)이란? Apache Flume(이하 플룸)은 클라우데라에서 처음 개발 돼, 2011년 클라우데라를 통해 처음 소개 되어서 아파치 소프트웨어 프로젝트에 기증되어 최상위 프로젝트로 격상되어 사용중입니다. 다양한 수집 요구 사항들을 해결하기 위해 기능으로 구성된 소프트웨어이며, 로그데이터를 깔끔하게 수집하는 데 이만한 게 없으며, 많은 기업들에서 실제 서비스 로그데이터 관리를 위해 사용하고 있습니다. Apache Flume 프로젝트는 공식 홈페이지는 https://flume.apache.org/ 입니다. Flume의 특징 1) 시스템 신뢰성 (Reliability) - 장애가 발생시 로그의 유실없이 전송할 수 있는 기능입니다. 2) 시스템 확장성 (Scalability) - Agent의 추가 ..

빅데이터란? : 오늘날 정보통신 분야에서의 화두는 단연 빅데이터입니다. 1) 빅데이터는 기존 데이터보다 너무 방대하여 기존의 방법이나 도구로 수집/저장/분석 등이 어려운 정형 및 비정형 데이터들을 의미합니다. 2) 어떤 그룹에서는 빅데이터를 테라바이트 이상의 데이터라고 정의하기도 하며 대용량 데이터를 처리하는 아키텍처라고 정의하기도 합니다(서버 한대로 처리할 수 없는 규모의 데이터, 기존의 소프트웨어로 처리할 수 없는 규모의 데이터). 빅데이터의 특징 : 빅데이터의 특징으로는 크기(Volume), 속도(Velocity), 다양성(Variety)을 들 수 있습니다. 크기(Volume) : 크기는 일반적으로 수십 테라 바이트 혹은 수십 페타바이트 이상 규모의 데이터 속성을 의미합니다. 속도(Velocity)..