본문 바로가기

Hadoop

Mongo-Hadoop Integration http://www.slideshare.net/mixmax99/mongodb-hadoop-integrationhttp://www.slideshare.net/mongodb/hadoop-webinarhttps://github.com/mongodb/mongo-hadoop/wiki/Configuration-Reference Mongo hadoop input formatmongo.job.input.format=com.mongodb.hadoop.MongoInputFormat mongo.input.uri=mongodb://my-db:27017/enron.messages Read from MongoDB Read from BSON mongo.job.input.format=com.mongodb.hadoop.BSONFile.. 더보기
Pig - ROW_NUMBER (RANK) ROW_NUMBER 혹은 RANK 함수를 통해 임의의 필드들에 의해 정렬된 결과그룹 중에 상위 1개의 결과를 반환SQL Version (Oracle)SELECT uname, flag, rank, score FROM ( SELECT uname, flag, rank, score, ROW_NUMBER() OVER (PARTITION BY uname ORDER BY flag ASC, rank DESC, score ASC) rank FROM A ) B WHERE B.rank=1;Pig Version-- rownum.pig a = load 'source/rownum.csv' using PigStorage(',') as (uname:chararray, flag:int, rank:chararray, score:int).. 더보기
Pig - UPSERT (UPDATE or INSERT) Pig는 맵리듀스 작업을 Pig Latin이라는 언어를 통해서 보다 손쉬운 MapReduce 작업을 가능하게 하는 스크립트 언어이다. 최근 이와 관련된 프로젝트를 수행하고 있어 기존의 SQL 혹은 HQL(Hive QL)으로 작성된 코드를 Pig 스크립트로 변환하는 작업을 하고 있다. 참고가 될 만한 사항들을 정리하고 있습니다.[ UPSERT ]동작 : 대상 테이블에 킷값이 존재하면 UPDATE 그렇지 않으면 INSERT 수행-- upsert.pigA = load 'source/1.csv' using PigStorage(',') as (uid:chararray, name:chararray); B = load 'source/2.csv' using PigStorage(',') as (uid:chararray,.. 더보기
하둡 스트리밍을 통한 아파치 쿼리 로그 분석 하둡 커뮤니티 모임에서 Apache Log Analysis using Hadoop Streaming라는 제목으로 발표했던 내용을 블로그를 통해서 공개하고자 합니다. 진작 올렸어야 하는 건데 조금 실험을 더 해보려는 욕심에 시간이 지체되어 더 이상 있다가는 올리지도 못 할 것 같아 그냥 올리기만 해 봅니다. 저 또한 그랬으며 하둡 커뮤니티 모임에서 많으신 분들이 참석하고 계시지만, 현실적으로 하둡을 이용해서 실용적인 무언가 또는 실험을 하기는 쉽지만은 않은 것 같습니다. 하지만, 한재선 박사님께서 그러한 분산저장 및 처리에 필요한 하둡 플랫폼을 무료로 제공해 주시기로 하셨습니다. ^^ 현재 하둡 개발자 그룹을 통해서 혼자서 끙끙대면서 하둡을 겨우 설치하고 WordCount 한번 싱글노드에서 돌려보고 마는 .. 더보기
하둡 최신 버전(0.18.1) 릴리스 정보입니다. http://hadoop.apache.org/core/docs/r0.18.1/releasenotes.html 0.17.2 stable 버전과의 차이점 중에서 주목할 만한 것들만 뽑아 보았습니다. dfs Improved management of replicas of the name space image. if all replicas on the Name Node are lost,the latest check point can be loaded from the secondary Name Node. Use parameter "-importCheckpoint" and specify the location with "fs.checkpoint.dir." The directory structure on the sec.. 더보기
하둡은 무려 새로운 비지니스 모델까지 창출해 내고 있군요 Cloudera can help you install, configure and run Hadoop for large-scale data processing and analysis. We support Hadoop whether you run it on servers in your own data center or use Amazon's Elastic Compute Cloud 우연히 하둡을 통하여 아파치 로그를 분석한 사람들의 포스팅을 살피다가 Cloudera라는 회사를 알게 되었는데요..현재는 하둡의 설치, 구성, 데이터 처리 및 분석에 관한 컨설팅을 해주는 회사입니다. Cloudera was founded in 2008 to provide enterprise-level support to users .. 더보기
Hadoop: The Definitive Guide O'Reilly 에서 하둡에 관한 책이 나오는 모양입니다. O'Reilly에서 하둡에 관한 책이 나오는 군요... 목차를 대충 살펴보면 하둡 파일시스템에 대한 설명과 API사용법 분산 컴퓨팅 환경에서의 MapReduce를 통한 개발 하둡의 데이터 입출력, 블록의 생성 및 압축 등 실제 운영되는 맵리듀스 프로그램에 대한 것과 빠지기 쉬운 함정 설계, 구현 및 하둡 클러스터 관리 ZooKeeper, Pig 및 HBase에 관한 내용 등 사파리 북으로 현재 프리뷰를 보실 수 있고요, Manning사의 MEAP과 유사하게 Rough Cuts이라는 이름으로 PDF로 미리 판매를 하고 있습니다. 프리뷰를 통해서 보았을 때에는 하둡을 처음 접하는 사람에게는 상당히 유용할 듯 보이고요, 이미 충분히 활용하고 있는 사람에게는 조금 아쉽지 않을까 하는 생각이 듭니다. 뭐랄까, 현.. 더보기
한국 하둡 커뮤니티 두 번째 모임을 다녀왔습니다 한국 하둡 커뮤니티 구글 그룹스 첫 번째 세션은 한재선 박사님께서 (NexR) 'Naive Bayes Classifier를 이용한 Spam Filtering의 MapReduce 구현' 이라는 주제로 강연을 해주셨습니다. 실제 돌아가는 환경에서 시연도 해주셨고요.. 물론 MapReduce 시연이라면 아시는 분들은 다 아시겠지만, MapReduce결과 로그와 vi 로 결과 파일을 읽는 것 밖에는 없지만 말입니다. 이러한 부분 외에도 기계학습을 분산환경에서 쉽게 운영할 수 있는 플랫폼을 개발하고 계신다는 소식과 더불어, 조만간 그러한 서비스 환경을 일반인에게도 공개한다는 언급도 하셨습니다. 가상화를 통하여 제한된 환경이긴 합니다만, 분산환경을 접하기 힘든 개발자 입장에서는 희소식이 아닐 수 없겠습니다. 또, .. 더보기
Mahout란 무엇에다 쓰는 물건인고? 저의 최대의 관심사는 현재는 데이터 마이닝을 통한 정보검색을 하는 것인데요, 가장 관심이 가는 아파치 프로젝트는 단연 마하우트(Mahout)입니다. Mahout? A Mahout is a person who drives an elephant (hint: Hadoop's logo is an elephant.) 즉, 코끼리를 다루는 사람이라는 의미입니다. 로고는 여기서 다운로드 받을 수 있는데요 로고를 잘 보시면, 코끼리를 타고 있는 사람이 보이실 겁니다. 물론 코끼리를 다루는 사람이라고 해서 하둡을 대상으로 보다 상위에 있는 프로젝트는 아니라고 얘기하고 있습니다. 제 개인적인 생각으로는 하둡위에서 보다 더 고차원적인(?) 일을 하는 사람이라는 생각이 살짝 들었습니다. ^^ 이리저리 사이트를 둘러보면서 정리.. 더보기
Hadoop MapReduce를 이용하여 신경망 학습이 가능할까? 아파치 프로젝트로 진행중인 Mahout라는 프로젝트가 있는데, 이것은 Hadoop MapReduce를 통하여 Machine Learning을 하기 위한 프레임워크다. 하지만 Hadoop만큼이나 인기리에 진행되고 있지는 않는것 같다. 어쨌거나, 클릭로그 정보를 이용하여 문서와 입력된 키워드와의 관계를 neural network를 통하여 학습하고, 검색시에 랭킹에 반영하는 것을 실험해보고 있다. 자세한 내용은 집단지성 프로그래밍 (원서: Programming Collective Intelligence) 4장을 참고. 가장 힘든 부분은 feedforward 단계와 backpropagate 단계에서 node의 weight값과 link 의 weight값을 global하게 사용한다는 점에 있는데, 이를 분산환경에서.. 더보기