Disco 0.1 – 얼랭으로 만든 오픈소스 분산 컴퓨팅 프레임웍

8월 마소잡지에 Erlang으로 Map/Reduce 프레임웍을 만드는 예제로 만든적이 있었다. 이 글 이후에 외부 스크립트로 Python을 사용하는 포스팅을 쓴적이 있었다. 사실 위 글은 내가 만든 map/reduce 프레임웍에서 Python 외부 스크립트를 사용하기 위한 방법을 고안하기 위해 했던 작업의 일환이였다. 그러나 내가 생각했던 수준보다 더 많은 고민을 한 오픈소스 프로젝트가 얼마전에 공개되었다. 좀 촌스러운 프로젝트 이름인지 몰라도 Disco […]

계속 읽기

Erlang으로 구현한 분산처리 플랫폼 : PDF 공개

금번 8월 월간 마소에 올렸던 Erlang관련 기고문을 공개한다.   한달정도 지나면 공개해도 된다는 말씀을 기자 분에게 들었었고 게다가 저작권이 본인과 월간 마소에 있어서 큰 문제가 없다고 생각한다.   글을 쓰면서 지면 여건상 많은 내용을 넣지 못한것이 조금 아쉬웠다. 11장으로 집약하기에는 부족한 감이 없지않아 있지만 초보분들에게는 좋은 시작점이 될 수 있을거란 생각을 해본다. 추가적으로 리서치가 되는 […]

계속 읽기

내일 얼랭 모임이 야후에서 있군요.

누가 보면 야후 코리아에서 있다는 이야긴줄 알겠지만 아쉽게도 야후 본사에서 모임을 갖는다고 한다. Erlounge @ Yahoo 재밋겠다. 전에 야후 내부 직원 전용 사이트에서 erlang으로 검색하니 딱 한명 나오던데, 그 사람이 모임장소 섭외를 한거 같다. 시간나면 이 친구하고 메신저나 터놓고 이야기나 하면 되겠군. urls 카페

계속 읽기

Erlang과 Python 인터페이싱하기

몇일전 Erlang이 라이브러리가 부족하다 뭐하다 하는 썰을 풀어 놓았었다. 그러다 어제 돌입한 작업이 그럼 Erlang과 다른 외계어들간에 인터페이싱이였다. 작업은 얼랭에서 강력하게 추천하는 방법인 port를 통한 인터페이싱이다. 강력하게 추천하는 이유는 다른 언어로 된 프로세스가 얼랭 런타임 환경 이외에서 실행이 되고 그곳에서의 예기치 못한 fail이 전체 얼랭 런타임 환경의 fail로 이어지는것을 방지해 주기 때문이다. 한마디로 fault-tolerant 한 […]

계속 읽기

얼랭(Erlang) OTP에 대한 단상

주말에 Erlang OTP(Open Telecom Platform)에 대한 학습과 생각을 조금 해봤다.OTP라는 줄임말이 주는 의미보다 더 큰 가능성과 기능을 가지고 있다는게 가장 처음 든 생각이였다.대용량(large-scale), 에러에 강한(fault-tolerant) 분산 어플리케이션을 만들 수 있는 하나의 어플리케이션 운영체제라는 말이 맞을 정도다. 요걸 보다보니 이런 어플리케이션을 만들고 싶다는 생각이 불끈 불끈 솓아 오른다. OTP를 보면서 이를 이용해 웹 크롤러 시스템을 만들면 […]

계속 읽기

얼랭(Erlang)과 Map/Reduce

마소 기고문 쓰다가 발견한 자료다.얼랭언어에 대한 간략한 소개 후에 간단한 Map/Reduce 알고리즘을 구현/설명을 하고 있다. Exploring Erlang with Map/Reduce 블로그에 올린 공짜글 치고는 정말 좋은 글이다.

계속 읽기

Facebook에서 Erlang으로 채팅서버를 구현했다는…

전에 Erlang으로 hadoop같은 분산처리 어플리케이션을 손쉽게 만들 수 있을거 같다는 포스팅을 쓴적이 있다.  지금 보면 허접한 포스팅이 아닐 수 없었는데 점점 그런 생각들이 실례로 드러나고 있다. 이미 FaceBook의 대용량 처리 어플리케이션에 Erlang이 쓰이고 있다는 글이 올라 왔다. … Erlang is the key tools for building large scale applications, especially for social networks… 새로운 채팅 서버를 […]

계속 읽기

Distributed Untar.

내가 사용하는 서버중에 core가 8개인 서버가 있다. 메모리도 4기가 정도 되고… 오늘 이 서버에 데이터를 옮기로 압축을 풀고 있는데 이 압축 푸는 속도가 너무 느리고 htop을 쳐서 보면 1개 코어만 쓰고 나머지는 핑핑 놀고 있어서 나중에 써먹을 것을 생각해서 코어에 분산시켜서 untar를 하는 Erlang 프로그램을 짜봤다. [CODE js]#!/usr/bin/env escript main(_) ->    OptionList = [{cwd, […]

계속 읽기

ANN을 한큐에 표현한 그림들

요즘 개인적으로 ANN을 이용한 어플리케이션을 만들고 있었는데, 이 글을 보고 설계를 고치기로 했다. 이미 80%완성을 했는데.. 쩝.. ㅜㅜ 먼저 글에 나온 그림이 상당히 인상적이였는데 ANN을 이렇게나 쉽게 이야기 하는 그림이 세상이 있을까 하는 생각이 들 정도의 아주 멋진 그림이였다. 아래는 각 Neural이 어떻게 계산되고 output을 어떻게 내고 있는건지 잘 나타내는 그림이고 아래 그림은 모든 레이어의 […]

계속 읽기

Erlang kpmap 함수

pmap을 개선해서 kpmap함수를 만들어 봤다. (함수명은 내가 직접 지어본거다. ^^;) kpmap 함수는 …기존의 pmap함수가 입력되는 리스트 원소 갯수만큼 process를 만들어 버리는 단점을 가지고 있기 때문에 마지막 인수로 k라는 인수를 두어 k개의 process만을 만들어 처리를 하게끔 하는 함수이다. pmap 함수에서 내가 사용했던 작업이 1000여개의 파일을 열어 텍스트 처리를 하는 함수였는데, 1000여개의 함수를 여는 1000여개의 process를 만들기가 […]

계속 읽기