December 29, 2014

Google's BigTable, Pregel, and Streaming PageRank

As already you might know, Google stores the webpages in BigTable. Considering the time-series dimension, the web graph is stored in 3D space like below:


And then Pregel is believed to be used for calculating PageRank. How do it work? When the new version is added to the "webtable" while crawling web pages periodically, each processor of Pregel scans latest version of anchors in its partition, and updates the graph structure. The several vertices received message from newly-created or updated vertex will be reactivated and begun to recompute PageRank incrementally.

Therefore, the Pregel paper describes as a batch system that processes iterative graph algorithms efficiently but I think the vertex-centric model and its spontaneous reactivation mechanism is especially worth noting and very fit for streaming graph.

Although Graph module (Pregel clone) of Apache Hama supports dynamic graph operations, I never tried yet. I'll post more details if it works fine.

December 14, 2014

2014년도를 떠나며

몇 일이 지나면 전세계인은 2014년도를 떠나보내야 한다. 나 역시 14년을 떠나고 이젠 새로이 준비를 해야하는 시점이 되었네.

나에게 2014년은 참 많은 일들이 일어났고, 그렇게 원하던 창업을 하면서 다양한 경험과 사람을 겪어본 한 해. 한 가지 크게 느낀 것이 있다면, 알게 모르게 사람들은 나를 지켜보고 평가한다는 것 (물론 그렇다고 의식하진 않지만), 모든 결정은 언제나 후회가 남는다는 것, 선동은 몇 마디로 가능하지만 반박을 위해서는 수십개의 근거 자료가 필요하다는 것 등등.

솔직히 엔지니어로써 커리어에는 이러한 것들은 도무지 쓸데 없는 경험일지 모르겠다. 이 때문에 한편으로는 계속 하던일에 몰두했어야하나 살짝 걱정도 되긴하나 분명 나에게 크나큰 밑거름이 되었음을! 결국 내가 살아가는 세상은 "사회"이니까.

부작용이라하면 내 몸안에 사파/마교 무림 고수의 광기가 다소 누그러진 정도? ㅋ

December 1, 2014

DataSayer received an OSS achievement award today.


Today @datasayer received an achievement award from the National IT Industry Promotion Agency.

.. Thanks for nominating me, Oracle Korea!

November 28, 2014

Changing the fuse on a Fender Frontman 25R


If you can't power on then the fuse is blown and needs to be replaced (99.9%):

1. Prepare the screwdriver and new f500mal 250v fuse.
2. Remove the amp from body using screwdriver.
3. Replace the fuse.

That's all, save money!

November 24, 2014

Experiences Porting the Apache Hama Graph Analytics Framework to an HPC InfiniBand Connected Cluster

November 20, 2014

(기사 번역/의역) Hortonworks IPO: Where Are The Margins?

원문은 여기서: Forbes 뉴스 링크
호튼웍스의 SEC 상장 신청서 전문은 여기서: 링크

(내용 번역은 제 마음대로 요약/의역해서 작성합니다.)

호튼웍스: 어디서 남겨먹어?

기업은 데이터로 움직이니, 단연코 요즘 가장 뜨거운 소프트웨어 전쟁터는 빅 데이터. 이 와중에, 호튼웍스가 미 증권거래위원회(SEC)에 상장 신청서를 제출하고 바짝 전투력을 끌어올리기 시작했다고.

그 전쟁터에는 메이저 3사가 있는데 그것이 바로 클라우데라, 맵알, 그리고 호튼웍스. 기 유사 시장 RDBMS 벤더들의 전쟁과는 다르게 이들은 오픈소스 하둡으로 데이터 플랫폼을 만들고 있는게 특징이라면 특징. 따라서, 전쟁의 승자는 누가 오픈소스 비지니스 모델을 잘 만드냐로 결판.

한편 상장 신청서에 따르면, 호튼웍스는 데이터 플랫폼을 무료로 제공하고 (역시 예상대로) 기술 지원 등으로 수익을 창출하겠다고.

오픈소스 사업에서는 기술 지원 등이 일반적인 모델이긴하나, 이는 기술 지원 인건비를 감안해야하므로 돈을 벌기 힘들다는게 중론 (한국형 SI같은 느낌). 게다가 HDP쓰는 사람들이 얼마나 돈을 쓸까에 대해 대단히 회의적.

특히나 경쟁사 클라우데라가 노골적인데 ㅋ 아무르 아와달라 클라우데라 최고기술책임자(CTO)는 호튼웍스는 지금 잘 못하고 있고 경쟁사를 방어할만한 무기가 없다며, 현재 돈을 벌기위해 얼마나 쓰고있는지 눈여겨 잘 보라고  은근슬적 디스아닌 디스같은 감상 평을 남김.

그렇다면, 클라우데라와 맵알은 그럼 얼마나 차별화된 수익 모델이 있는 것인가!? 에 대해서 이후 몇 블락 적어놓았는데 별반 크게 다를것 없어보이므로 과감히 생략!
--

Edward J. Yoon님 comment: 한국에서도 1세대 유사 사업 모델은 사실상 적자행진 및 SI사업으로 전락. 내가 알 수 없지만 클라우데라는 앱시장 개척을 나설 듯. 맵알은 아웃오브관심. 진정한 전쟁은 2년 후 다시 보게 될 거라고 호언장담. 이 댓글은 성지글이 된다!

November 12, 2014

I decided to join Samsung Electronics.

I roll down the shutters of my startup now (DataSayer status: Later) and join Samsung Electronics.

The reasons are simple. 1) I think the data analytics market is not open yet, and 2) there's no maintenance fund for my startup. 3) Also, their offer satisfied my conditions and it's aligned with my vision. 4) Lastly, I married last year (Yes, I need your comfort).

Why I think the market is not open yet? What's my vision?

I personally think that IT business requires two minimum conditions for success: large user base or differentiated original technology.

To increase the user base and make it commoditized, the past big data has thrown out SQL and R cards. It not only sheds no new light but further obscures matters. Things won't change soon.

Meanwhile, my vision can be explained by following keywords : Streaming, Machine Learning (I never think query-answer system is enough to mine the hidden and valuable insights from data and it's already in a red ocean), Cloud and GPU.

I have to prepare the Tomorrow, Not today!

November 11, 2014

깊이와 감동이 있는 일본 애니메이션 추천 5선

1. 쿠로즈카

사무라이 액션과 뱀파이어의 조합 SF물이지만 너무 쉽게 생각해선 안된다. 원래 소설이 원작이라 스토리 자체가 굉장히 탄탄하다.

2. 후세: 말하지 못한 내 사랑

빈민촌 호걸과 여동생 산골 소녀 사냥꾼, 그리고 반인반견 동화같은 이야기. 깊은 감동이 있는 애니메이션.

3. 써머워즈

현실과 버춸 레알라티의 경계가 무너지는 세계를 그린 애니. 킹 카즈마의 활약과 수학영재의 해킹신이 인상적임.

4. 건그레이브

느와르에 SF가 섞인 배신과 복수로 그려지는 마초적 애니메이션.

5. 늑대아이

늑대소년 송중기 나온거랑 비슷한거아니냐 묻던데 그건 안봐서 모르겠고. 늑대 소녀가 뛰놀때 롤러코스터 타는듯한 영상미, 그리고 숨어살아야하는 그들의 슬픔으로 전해지는 감동.

November 5, 2014

한국, 그리고 실리콘밸리 Tier 1 메이저 투자사의 차이

실리콘밸리 Tier 1 메이저 투자사가 보는것은 딱 두 가지다:

첫째, 유저 베이스 (The number of users of some product or service) 가 얼마나 큰가?
둘째, 원천기술이 있는가?

사실 기업의 평판 자산이나 경험 자산은 그것이 독보적이지 않는 한 큰 의미는 없다고 본다.

잠시 내 분야 얘기로 돌아가서, SIGMOD14 "Are We Experiencing a Big Data Bubble?"[1] 에 대해 내 생각은 이렇다.

초반 빅 데이터 진영에서 빠른 유저 베이스 확보를 위해 꺼낸 카드가 바로 SQL과 R인데, 이것이 결국 기술의 본질 희석과 거품론을 생산하게 된 계기라고 보고 있다. 빅 데이터 진영은 단순 덩어리 키우기 M&A와 Exit에 집중하기보다는 본질 집중과 생각의 전환이 필요한 시점인듯 하다.

여튼 다시.. 한국은 어떨까, 내가 들은 얘기들은 거의 다음과 같다:

첫째, 사람
둘째, 사람
셋째, 사람

더불어 평판과 경험 자산, 그리고 현금 흐름이 우선이며, 또 클라우드>빅 데이터>사물 인터넷 과 같은 트렌드 변화에 굉장히 민감하게 반응한다.

남의 얘기를 잘 들어야한다는 둥 이건 도대체 뭥미? ㅋ 한때는 초짜 스타트업퍼로써 이러한 투자 철학이 왠지 낭만스럽기도 했지만 지금은 생각이 조금 달라졌다. 나도 이제 슬슬 결판을 낼때가 오는것일까!?

1. http://dl.acm.org/citation.cfm?id=2588555.2618215

September 15, 2014

Uniqueness

생활의 달인을 보면, 매회마다 최고의 달인들이 출연한다. 그들의 클로징멘트는 모두가 대부분 유사한데, "돈을 많이 벌어서 앞으로 내 가게를 차리는게 꿈이다"는 것. 그 분야에서 최고가 되었는데 큰 돈은 벌지 못하였나보다. 왜 일까? 그거슨 바로 a lack of uniqueness.

자료구조와 알고리즘을 빠삭하게 꾀고 있는 베스트 프로그래머가 될 필요는 없다. 그래봐야 그냥 우수한 코더가 될 뿐이니까.

September 12, 2014

우선순위

해야할 일들이 쌓여있는데 미래가치를 봐야할지 당장의 닥친 일이 우선인지 저울질하기 힘든 요새다. 아바타 조작하듯 제 3자 입장에서 생각하면 좀 더 과감해질지도!

September 3, 2014

Finding Kth largest element in Array

See Selection Algorithm first: http://en.wikipedia.org/wiki/Selection_algorithm
package org.udanax.eddieyoon.codeguru;

public class KthLargest {

  public static void main(String[] args) {
    int[] x = new int[] { 3, 6, 92, 34, 1, 35, 62, 13, 12, 24, 53 };
    System.out.println(getKthLargest(x, 3));
  }

  private static int getKthLargest(int[] x, int k) {
    int low = 0;
    int high = x.length - 1;

    while (true) {
      int pivot = (low + high) / 2;
      int newPiv = partition(x, low, high, pivot);

      if (newPiv == k) {
        return x[newPiv];
      } else if (newPiv < k) {
        low = newPiv + 1;
      } else {
        high = newPiv - 1;
      }
    }
  }

  private static int partition(int[] x, int left, int right, int pivot) {
    int pivValue = x[pivot];
    swap(x, pivot, right);
    int storePos = left;

    for (int i = left; i < right; i++) {
      if (x[i] < pivValue) {
        swap(x, i, storePos);
        storePos++;
      }
    }
    swap(x, storePos, right);
    return storePos;
  }

  private static void swap(int[] x, int a, int b) {
    int temp = x[a];
    x[a] = x[b];
    x[b] = temp;
  }

}

August 24, 2014

부자가 되는 방법

나만의 부자가 되는 법, 정리해본다.

첫째, 돈 계산을 피하지 말라.

철 없던 시절 주제도 모르고 파이낸스 껴서 포르쉐를 지른적 이 있다 (디자인이 그렇게 튀지 않아서인지, 페라리나 람보르기니와 같은 브랜드보다 아래급이라고 생각하는 사람이 많은데 방문해서 견적내보면 얼마나 고가 브랜드인지 알게 된다). 사고(?)를 치고 난 이후 이자, 소득, 그리고 지출 등 돈 계산을 머리속에서 대강 얼버무려 퉁치는 내 자신을 애써 외면했고, 팔고나서야 얼마나 아슬아슬한 인생으로 만들었는지 깨달았다.

요즘은 대출없는 사람이 없다고 한다. 본인 소득과 지출 등 돈 계산과 현실이 아무리 답답하더라도 당면한 문제를 정확히 진단해야 결국 다음 행동으로 옮겨지는 것이다.

둘째, 해야할 일의 우선순위를 계산하고 시간을 아껴써라.

나는 취미생활이나 드라마/영화같은건 시간이 날때 몰아서 처리하는 경향이 있다. 이럴 때면 결국 대부분의 사람들이 동일하게 주어진 시간을 거의 비슷한 일상에 쓰는게 아닌가라는 생각도 들긴한다. 하지만 차이점이라면 아마 우선순위를 정해서 쓰는 것과 그렇지 못한 것 일게다.

지금 먼저 해야할 일과 나중에 해도 괜찮은 것들을 잘 스케쥴링해서 시간을 효율적으로 활용해야한다.

자, 나는 .. 요거 두가지만 잘 지키면 누구나 부자(?)가 될 수 있다고 자신한다!

August 21, 2014

Alone You Breathe - Savatage

Lyrics:

You were never one for waiting
Still I always thought you'd wait for me
Have you from your dream awakened
And from where you are what do you see

Which of us is now in exile
Which in need of amnesty
Are you now but an illusion
In my mind alone you breathe

You believed in things that I will never know
You were out there drowning but it never showed
'Til inside a rain swept night you just let go

You're thrown it all away
And now we'll never see
The ending of the play
The grand design
The final line
And what was meant to be

In the dark a distant runner
Now has disappeared into the night
Leaving us to stand and wonder
Staring from this end into your life

You believed in things that I will never know
You were out there drowning but it never showed
'Til inside a rain swept night you just let go

You've thrown it all away
And now we'll never see
The ending of the play
The grand design
The final line
And what was meant to be

And if this is all illusion
Nothing more than pure delusion
Clinging to a fading fantasy

Like Icarus who heeds the calling
Of a sun but now is falling
As the feathers of his life fall free
Can you see
See

Tomorrow
And after
You tell me what am I to do
I stand here
Believing
That in the dark
There is a clue

Perhaps inside
This midnight sky
Perhaps tomorrow's new born eyes
Or could it be
We'll never know
And after all
This was the show

What am I to do

Gotta get back
Gotta get back
Gotta get back

What am I to do

Gotta get back
Gotta get back
Gotta get back

What am I to do

Standing on a dream
Isn't what it seems
Could we then reclaim a dream refused
Knowing what we know
Could we let it go
Realizing that all the years are used

Tomorrow and after
You tell me what am I to do
I stand here believing
That in the dark there is a clue
I am the way
I am the light
I am the dark inside the night
I hear your hopes
I feel your dreams
And in the dark I hear your screams

Tomorrow and after
You tell me what am I to do
I stand here believing
That in the dark there is a clue

August 18, 2014

App Store keeps trying to update iMovie


If Spotlight is disabled, App Store fails to notify you of updates and attempts to continuously update the apps.  To fix this problem, enable the Spotlight and re-index Application folder[1].

% sudo launchctl load -w /System/Library/LaunchDaemons/com.apple.metadata.mds.plist

1. http://support.apple.com/kb/ht2409

August 5, 2014

데이터크라우즈, 비트패킹컴퍼니와 음악 추천 엔진 공모전 개최

빅 데이터 신생 스타트업 데이터세이어(datasayer.com, 대표 윤진석)가 운영하는 데이터크라우즈는 지난 8월 4일 비트패킹컴퍼니와 함께 음악 추천 엔진 공모전 개최한다고 밝혔다.

데이터크라우즈는 기업의 빅 데이터 문제를 외부 전문가 및 대중들의 협력으로 해결하는 크라우드소싱(datacrowds.com 이하 데이터 크라우즈) 서비스로 지난 7월 3일 베타 서비스를 오픈하였다.

크라우드소싱이란 기업이나 단체 등이 특정 목표 달성을 위해 대중(crowds)의 집단 지성을 활용하는 방법으로 페이스북, 월마트, 포드 자동차 등의 다양한 글로벌 기업은 이미 크라우드소싱을 통해 빅 데이터 문제를 해결해나가고 있다.

데이터크라우즈, 비트패킹컴퍼니와 음악 추천 엔진 공모전 개최

비트패킹컴퍼니(beatpacking.com, 대표 박수만)는 저비용으로 다수의 경쟁을 통해 우수한 아이디어와 솔루션을 다양하게 얻을 수 있다는 점이 가장 큰 매력이라며 데이터크라우즈를 통해 공모전을 추진하게 된 배경을 설명하였다.

이번 공모는 누구나 자격 제한없이 참여할 수 있으며, 푸짐한 상금은 물론 향후 비트패킹컴퍼니와 추천 엔진을 구현해볼 수 있는 기회를 각 수상자 또는 수상팀에게 제공하는 것이 특징이다.

데이터세이어 윤진석 대표는 “생각보다 기업들의 반응이 대단히 긍정적이어서 한 달만에 베타 서비스를 마무리하고 비트패킹컴퍼니와 같이 좋은 기업과 첫 문제를 함께하게 되었다”고 밝히며 “앞으로 오픈소스를 통한 개방형 혁신과 데이터크라우즈 서비스를 통해 기술 및 장비 위주의 SI산업 형태로 변질되고 있는 한국의 빅 데이터 산업을 지식산업으로 재정의 할 수 있도록 지속적으로 노력할 것“이라고 덧붙였다.

July 15, 2014

Kaggle ...

미래적인 비지니스 모델이라고 생각하고 있다. 개방형, 집단지성, 리베뉴 쉐어링 요런건 완전 트렌드다. 카피는 쉽지만 스타트업만이 할 수 있다. 구글도 못한다. 외딴섬 제 3자의 스몰 조직이라 가능한 모델. 컨설팅펌이나 고민해볼만한 매물로 M&A도 힘들고 결국 독자생존해야한다.

Dead or Alive.

MapR 구글로부터 $110M 투자유치

후덜더르. 창업자가 구글 출신이긴 하지만. 가만 보면 요즘 M&A나 투자는 대부분 IT, 좀 더 좁히면 빅 데이터 쪽이 강세다.

반면 한국은 여전히..

이유는 간단하다고 본다. 한국이 드라마 한류를 만든것과 일본의 애니메이션이 강세인 이유랑 비슷할 듯.. 결국 수요와 공급 논리로 설명 되지 않을까 싶다.

July 11, 2014

아마존 프라임 에어



아마존의 무인 택배 서비스 '프라임 에어'.
드론이 GPS 기반으로 주소지를 찾아가서 떨구면 끗!
국내에도 노인들이 많은 시골같은 곳은 유용할 것 같다.

July 3, 2014

DataCrowds 베타 런칭

데이터크라우즈 서비스를 베타로 런칭했다.

흠. 분명 진화한 미래형 모델인데 한국은 경험과 경력보다 인맥과 학벌이 중요한 사회이기 때문에 쉽지 않을 것 같기도 하고.

June 11, 2014

군자는 어울리되 패거리를 짓지 않고, 소인은 패거리를 짓되 어울리지 않는다

“군자는 어울리되 패거리를 짓지 않고, 소인은 패거리를 짓되 어울리지 않는다." 군자는 의(義)를 높이기에 아부하지 않고, 부화뇌동(附和雷同)하지 않는다. 군자는 대의명분을 지키면서 화합하며 협력한다.

하지만 소인은 이익을 높이기에 이해관계에 문제가 있으면 하시라도 등을 돌릴 수 있다. 그래서 화합하지 못하는 것이다. 소인배들은 작당하고 부화뇌동하며 자신만의 이익을 위해 반도덕적 삶을 서슴없이 살아간다.

April 28, 2014

창조적 사고를 지속하는 방법

우리는 남들의 비판을 경험하면서 창조적 사고를 포기하게 된다. 비판으로부터 방어논리와 자기 검열에 취중한 나머지 더 이상 사고에 자유롭지 못하게 되니까 그렇다.

 남들의 비판을 두려워하지 않는 자세.. 그것이 순수한 창조적 사고를 지속하는 방법이다. 단점은 평판과 사람을 잃을 수 있다 ㅋ.

March 25, 2014

8년 간의 IT 직장생활과 오픈소스

본래 컴퓨터 사이언스 전공이 아니라서 IT업종에서의 8년간의 직장생활과 오픈소스 생활은 참 험난했고 다양한 사람들을 만났다.

국내 최대 모 포탈 회사, 분산시스템 팀에 입사해서 "회사에 기여하고 정당하게 평가받고 싶은데, 내 아이디어만 뺏기는것 같다"니까 "그럴려고 뽑았다"라는 인간이 있지 않나 (오픈소스로 넘어오지 않았다면 지금 내 이름은 어디에도 없었을 것),

오픈소스 같이 해보자 으쌰으쌰 하는 것도 한 순간, 정작 주변/상사 눈치 보며 외면하지를 않나 (이건 뭐 먹고살아야하는 현실적인 문제라 나도 어쩔 수 없었다고 생각한다),

팀 멤버 의견이 본인 마음에 들지 않는다며 중국인이 개설한 중복 프로젝트로 살짝 들러붙지를 않나 ..

다 잊은 지금은 이런저런 꼬투리를 붙잡고 늘어지지를 않나 ...

그 사람들이 단지 나를 시기하고 질투하고 견제하는 것이면 행복하겠다.
그게 아니라, 내가 잘못한 것이 있다면 대놓고 지적해주면 행복하겠다.

March 4, 2014

대한민국의 데이터 규모는?

위키피디아에 따르면 국내 최대포탈 네이버의 하루 평균 페이지뷰는 860,000,000. 웹로그 한 라인의 평균을 150 bytes라고 계산하면 (referrer URL 추가해서 이정도라고 계산),

하루: 196 GB
일년: 69 TB
10년: 698 TB

99년도 창립 이후 지금까지 14년정도 운영해왔으니 대충 계산해도 access log는 700 TB정도 밖에 안되는거다.

그럼 페타바이트 규모의 데이터는 어디에?

무시무시한 속도로 생성되는 웹 문서, 웹 메일 정도 되겠다. 검색엔진 서비스 개선을 위한 페이지랭크, 스팸필터링, 그리고 문서 클러스터링 요런거 말고 할 것이 별로 없다 (이런 필요성에 MapReduce 모델이 나온 것이다). 아마 분석보다는 스토리지 문제에 포커싱해야겠지.

이런 데이터가 전체 데이터의 90% 이상을 차지하는 것이고, 오늘날 빅데이터가 말하는 "사용자 성향 분석", "추천엔진" 뭐 그런 것들에 필요한 인풋 데이터는 실질적으로 네이버 규모에서도 그 사이즈가 GB ~ TB 수준일 수 밖에 없다.

그러면, 네이버 웹스케일이 아닌 다른 회사들의 전자데이터는 과연 얼마나 될까? :-) 

뭐 외국도 사실 마찬가지다. 몇 테라바이트 트윗 데이터에서 어떤 분석을 위해 사용자 인터렉션 구조를 추출해봐야 몇 GB 되지 않는다.

고급 분석에서는 데이터 사이즈가 문제되는게 아니고 계산 복잡도가 문제인 것을 사람들은 알아야해.

February 17, 2014

원칙과 소신


  • 일희일비말고 원칙을 지키자.
  • 소신 가지고 서두르지 말자.
꼭 잊지 말아야 할 것들.

February 15, 2014

결정은 신중하되 과감하게

후회없고 행복한 삶을 살려면, 자신이 무엇을 원하는지 자신에게 솔직히 물어봐야한다. 그렇게 해본 사람의 결정은 신중하지만 과감해진다.