2011년 7월 23일 토요일

영화처럼 - 가네시로 가즈키
































영화처럼

카테고리

소설 > 일본소설 > 일본소설일반

지은이

가네시로 가즈키 (북폴리오, 2008년)

상세보기




오랜만의 집어든 가즈키의 소설.


GO, 레볼루션 No.3, 플라이 대디 플라이, SPEED..
가즈키는 한번 읽기 시작하면 단숨에 끝까지 읽도록 만드는 비법을 가지고 있는것 같다. 


이 책도
이전의 책들 처럼
어김없이 신나고
재미있고
눈물을 흘리게 한다. 

그리고, 힘을 준다. 


 

2011년 7월 19일 화요일

Hadoop Lzo 압축 설정 (2)


이전에 Hadoop Lzo 압축 설정에 관한 블로깅을 했는데...

그 이후에 발생했던 문제와,
실질적으로 사용하는 방법에 대해서 정리..


# 두 가지 버전의 hadoop lzo
1. https://github.com/omalley/hadoop-gpl-compression
  - 이전에 설치했던 버전

2. https://github.com/kevinweil/hadoop-lzo
  - 이 버전으로 다시 설치


# 사용법

1. 파일시스템의 파일을 압축해서 hdfs에 올리는 방법.
> lzop 파일이름
> hadoop fs -copyFromLocal 파일이름.lzo hdfs위치



2. hdfs의 lzo 파일에 index 만들기
 - lzo 파일이 있는곳에 파일이름.index라는 파일이 생긴다.
 - index를 안해주면, lzo 파일을 split하지 않고 하나의 map으로 처리

1) index it in-process via:
hadoop jar /path/to/your/hadoop-lzo.jar com.hadoop.compression.lzo.LzoIndexer big_file.lzo

2) index it in a map-reduce job via:
hadoop jar /path/to/your/hadoop-lzo.jar com.hadoop.compression.lzo.DistributedLzoIndexer big_file.lzo




3. splitted lzo 파일 사용
  - 파일이름.index 를 보고 알아서 나누어서 작업한다.
1) java
job 설정에 다음을 추가..

job.setInputFormatClass(LzoTextInputFormat.class);
 
2) streaming (테스트 안해봄)
실행할때 다음을 추가

"-inputformat com.hadoop.mapred.DeprecatedLzoTextInputFormat




4. 최종 결과 파일을 fs로
1) lzo_deflate
  - 압축코덱을 LzoCodec으로 하면 .lzo_deflate의 형태로 압축된다.
  - lzo_deflate는 파일시스템으로 getmerge 한 후 압축을 어떻게 푸는지 알수가 없어서, 코덱 설정을 바꿈.


<property>
      <name>mapred.output.compression.codec</name>
      <value>com.hadoop.compression.lzo.LzoCodec</value>
</property>


2) LzoCodec -> LzopCodec
   - The LzoCodec for the pure LZO
format, which uses the .lzo_deflate filename extension (by analogy with
DEFLATE, which is gzip without the headers).
  - The LzopCodec is compatible with the lzop tool, which is essentially the LZO format with extra headers.
 - map 과 reduce 사이에는 header가 없는 LzoCodec으로..
 - 최종 output은 LzopCodec 으로 변경


<property>
      <name>mapred.output.compression.codec</name>
     <value>com.hadoop.compression.lzo.LzopCodec</value>
</property>



3) getmerge 후에 fs에서 압출 풀때
  - 1개의 reducer의 경우 'lzop -d' 로 일반적인 경우처럼
  - reducer의 개수 1개 이상일 때는 다음과 같이
lzop -d 파일명.lzo -o 압축풀파일명


깊이에의 강요 - 파트리크 쥐스킨트
































깊이에의강요

카테고리

소설 > 독일소설

지은이

파트리크 쥐스킨트 (열린책들, 2008년)

상세보기





친목형 독서토론회를 하고 있는데,
아무리 친목형이라도 책이 너무 읽히지 않아서,
7월달은 아주 얇은 책으로 선정을 했다.

대학생 때,
'향수'를 읽고 쥐스킨트의 팬이 되어 버린 후,
도서관에서 쥐스킨트의 작품을 모조리 읽었었다. 
이전에 읽었지만, 책의 내용을 기억을 못하니..
책의 4번째 단편인 <문학적 건망증>의 이야기가 마음에 와닿았다.


도대체 왜 글을 읽는단 말인가? 도대체 무엇 때문에 지금 들고 있는 것과 같은 책을 한 번 더 읽는단 말인가? 모든 것이 무(無)로 와해되어 버린다면, 대관절 무엇 때문에 무슨 일인가를 한단 말인가? 어쨌던 언젠가는 죽는다면 무엇 때문에 사는 것일까? 




2011년 7월 12일 화요일

다른 의견을 가질 권리 - 슈테판 츠바이크


































다른의견을가질권리

카테고리

인문 > 철학 > 서양철학자 > 그외철학자들

지은이

슈테판 츠바이크 (바오출판사, 2009년)

상세보기




역사 책이다. 
E.H. 카의 '역사란 무엇인가'에서 말하는 역사란 이런 책을 두고 하는 말이 아닐지.. 


# 책표지.. 
신정국가를 건설한 칼뱅의 독재와 폭력에 맞서
사상과 양심의 자유를 옹호하며 관용을 부르짖은
위대한 인문주의자 카스텔리오!
카스텔리오의 감동적인 싸움을 
20세기 최고의 전기작가 슈테판 츠바이크가 
역사의 전면에 부활시킨다!


# 칼뱅


  그는 전체가 아니면 아무것도 필요 없었고, 완전한 권위가 아니면 완전한 포기가 있을 뿐이었다. 그는 절대로 타협을 하지 않았다. 자기만 옳다는 확신은 그에게는 아주 선천적인 특성이어서, 자기 아닌 누군가 다른 사람이 그 나름으로 올바른 생각을 할 수도 있다는 사실을 전혀 상상도 할 수 없었다. 
 


  칼뱅에게는 자기만이 다른 사람을 가르칠 수 있고, 다른 사람은 자기에게 배워야 한다는 것이 하나의 공리로 되어 있었다. 정직하고 참된 확신에 넘쳐서 그는 이렇게 말하기도 했다. 



  "내가 가르치는 것을 나는 하나님에게서 얻는다. 이 사실이 나의 양심에 힘이 된다."



  경악할 정도로 무서운 자기 확신으로, 그는 자신의 주장이 절대적 진리와 같다고 주장한다. 



  "하나님께서 내게 무엇이 옳고, 그런지 판단할 은총을 내리셨다." 



  그리고 누군가 다른 사람이 자기 의견에 반대하는 의견을 감히 주장하기라도 하면, 자기 자신에 사로잡혀 있는 이 사람은 언제나 격분하곤 했다. 항의를 받으면, 칼뱅은 일종의 신경발작을 일으켜서 정신적 예민함이 육체로 전이되어 나타났다. ......


본문 中





  

# 카스텔리오가 칼뱅에게.. 


  "그리스도의 사랑을 위해 당신에게 부탁하오니 나의 자유를 존중하고, 거짓된 죄목을 내 위에 쌓아올리는 일을 멈추라. 아무런 강제 없이 내가 나의 신앙을 고백하도록 허용해달라. 사람들이 당신에게 그것을 허용하듯이, 그리고 내가 당신에게 기꺼이 인정해주듯이 말이다. 당신의 학설과 다른 학설을 가진 사람들이 항상 잘못을 범한다고 믿지 말고, 언제나 그들을 즉시 이단으로 몰아붙이지 말라.......

  다른 수많은 경건한 사람들처럼, 내가 당신과 다르게 성서를 해석하여도 나는 내 모든 힘을 다해 그리스도에 대한 믿음을 고백한다. 우리 둘 중 한쪽이 잘못이겠지만, 그렇기 때문에 우리는 더욱 서로 사랑해야 한다! 주님께서 언젠가는 잘못 생각하는 사람에게 진리를 보여주실 것이다. 우리가 확실하게 아는 것은, 기독교도에게는 사랑의 의무가 있다는 것이다. 그것을 실천하자. 그것을 실천함으로써 우리 적들의 입을 다물게 하자.

  당신은 당신의 의견이 옮다고 생각하는가? 다른 사람들도 자기들의 의견을 그렇게 생각한다. 지혜로운 사람은 서로 사랑하는 사람이고, 자신의 지혜로 인해 스스로 교만해지지 않는 사람일 것이다. 하나님께서는 모든 것을 아시고 교만한 자를 꺾으시고 겸손한 자를 높이신다. ......" 
 


본문 中









  인류는 언제나 진보를 위해서 싸워야 하며, 극히 당연한 것도 새로이 의심받는다. 우리가 자유를 습관으로 여기고 더 이상 신성한 소유물로 여기지 않는 순간에 충동세계의 어둠 속에서 신비한 의지가 자라나 그것을 유린하려고 드는 것이다. 인류는 너무 오래 너무 근심 없이 자유를 누리고 나면, 언제나 힘의 도취에 대한 위험한 호기심, 전쟁에 대한 범죄적인 열망에 사로잡히게 된다.   
  
  역사는 그 알 수 없는 목적지로 나아가기 위해 때때로 우리에게 알수 없는 퇴행을 마련해놓는다. 그리고 폭풍우에 가장 튼튼한 댐과 지붕들이 무너지듯이, 유산으로 물려받은 권리의 담도 무너져내린다. 그렇게 무시무시한 순간에 인류는 깡패집단의 유혈이 낭자한 발광으로, 양떼의 노예 같은 양순함으로 되돌아가는 듯이 보인다. 



  그러나 밀물 뒤의 썰물처럼 이 물살도 빠져나가기 마련이다. 모든 폭력 통치는 극히 짦은 시간에 낡아버리거나 차갑게 식어버리고, 모든 이데올로기와 그 일시적인 승리는 그 시대와 더불어 종말을 고한다. 오로지 모든 이념 중의 이념, 절대로 패하지 않는 이념인 정신적 자유의 이념만이 영원히 되살아나온다. 그것은 정신처럼 영원한 것이기 때문이다. ....


본문 中 




#
되돌아 보자.  

2011년 7월 9일 토요일

완고한 고집...


# 진리
사람은 진리를 추구한다. 우리가 지금 당연히 진리라고 여기는 것들이 과연 진리일까?


# 혁명구조
갈릴레오가 '그래도 지구는 돈다.' 라고 말하기 전에는 모두 태양이 지구가 돈다고 생각했다. 그리고 지금은 지구가 태양 주위를 도는게 아니고, 어떤걸 기준으로 하는가에 따라서 상대적으로 달라진다고 말한다.
인류의 역사가 시작한 이래, 한 시대를 이끌어 왔던 수많은 진리와 사상중에 그것이 진리이다라고 남아 있는게 얼마나 되는가? 대부분 그러한 생각들은 무너져 왔고, 새로운 생각이 지배를 하고 있다.
그러면, 2011년에 우리가 믿고 따르고 있는 진리라는 것들이 진리일까?


# 터무니 없는 반대의견의 순기능
진리에 터무니 없는 반대의 의견이라도 삶에 도움이 된다. 진리에 대해서 한 번더 생각해 볼 기회를 주고, 논리적인 타당성을 새롭게 정리할수 있기 때문이다. 이를테면, 나라를 위해서 자유를 억압해야 한다는 모습을 정부에서 보이니, 자유가 왜 중요한지 타당한 이유를 찾기위해 공부하게 되고, 자유를 지키는 진영의 논리가 견고해 진다. 


# 상상력
상상력이 결여되면, 정신영역의 많은부분이 저하된다. 
- 생각할 수 있는 스펙트럼이 작아진다. 
- 타인이 느끼는 감정에 대해서 눈치채지 못한다. 
- 창의력 떨어진다. 
- 우스운 말을 잘 못한다. 



조금 더 부드럽고,
조금 더 덜 완고하고,
조금 더 귀를 기울일 필요가 있다.  
 

2011년 7월 6일 수요일

Hadoop LZO 압축 설정


# 첨가. 

hadoop-gpl-compression 를 

https://github.com/kevinweil/hadoop-lzo 로 변경해서 설치할것. 

참고 : http://upepo.tistory.com/174

-------------------------



1. lzo 설치


# 다운로드
http://www.oberhumer.com/opensource/lzo/

# 설치
./configure --enable-shared
make
make instll

# 기타
LD_LIBRARY_PATH 설정
or
/sbin/ldconfig



2. native connector library 설치

# 다운로드
http://code.google.com/a/apache-extras.org/p/hadoop-gpl-compression/

# hadoop library 복사
hadoop.0.20.0-core.jar 를 hadoop-gpl-compression/lib/ 으로 복사

# build
cnt compile-native
ant jar



3. 설정..

# 64bit 인 경우
다음 파일들을..
hadoop-gpl-compression/build/native/Linux-amd64-64/libgplcompression.la
hadoop-gpl-compression/build/native/Linux-amd64-64/lib/*

여기로 복사
hadoop/lib/native/Linux-amd64-64/

다음 파일을
hadoop-gpl-compression/build/hadoop-gpl-compression-0.1.0-dev.jar

여기로 복사
hadoop/lib


# 32bit 인 경우
Linux-amd64-64 --> Linux-i386-32 로 해서 위와 같게..



4. .bash_profile 에 추가

JAVA_LIBRARY_PATH=$JAVA_LIBRRAY_PATH:$HADOOP_HOME/lib/native/Linux-amd64-64/
JAVA_LIBRARY_PATH=$JAVA_LIBRRAY_PATH:$HADOOP_HOME/lib/

export JAVA_LIBRARY_PATH




5. lzop 설치

http://www.lzop.org/
필요하면 설치..




6. hadoop conf

# core-site.xml
- lzo compression도 기본 코덱으로 설정
        <property>
              <name>io.compression.codecs</name>
        <value>org.apache.hadoop.io.compress.GzipCodec,

org.apache.hadoop.io.compress.DefaultCodec,


org.apache.hadoop.io.compress.BZip2Codec,


com.hadoop.compression.lzo.LzoCodec</value>

        </property>

        <property>
                <name>io.compression.codec.lzo.class</name>
                <value>com.hadoop.compression.lzo.LzoCodec</value>
        </property>




# mapred-site.xml
- map이 끝나고 압축해서 reduce로 전달
        <property>
                <name>mapred.compress.map.output</name>
                <value>true</value>
        </property>
        <property>
                <name>mapred.map.output.compression.codec</name>
                <value>com.hadoop.compression.lzo.LzoCodec</value>
        </property>

- reduce 끝나고 최종 결과 압축
        <property>
                <name>mapred.output.compress</name>
                <value>true</value>
        </property>
        <property>
                <name>mapred.output.compression.codec</name>
                <value>com.hadoop.compression.lzo.LzoCodec</value>
        </property>



...

설치 중에 문제 생기는 부분이 있으면 답글 남겨 주세요~ 


피루스의 승리 (Pyrrhic victory)


피루스의 승리 (Pyrrhic victory)

기원전 3세기 그리스의 피루스 왕은 수많은 군대와 코끼리를 이끌고 로마를 침공했다. 격렬한 전투 끝에 왕은 승리를 했지만 감당하기 힘든 병력 손실을 입고 말았다. 이처럼 승리는 했지만 패배나 다름없는 승리를 가르켜 '피루스의 승리'라고 말한다.


출처 : 다른 의견을 가질 권리 - 슈테판 츠바이크.

Crash-only software


# 위키피디아

Crash-only software refers to computer programs that handle failures by simply  restarting, without attempting any sophisticated recovery. Correctly written components of crash-only software can microreboot to a known-good state without the help of a user. Since failure-handling and normal startup use the same methods, this can increase the chance that bugs in failure-handling code will be noticed, except when there are leftover artifacts, such as data corruption from a severe failure, that don't occur during normal startup.

http://en.wikipedia.org/wiki/Crash-only_software


# Original paper

Crash-only programs crash safely and recover quickly. There is only one
way to stop such software -by crashing it - and only one way to bring it
up -by initiating recovery. Crash-only systems are built from
crash-only components, and the use of transparent component-level
retries hides intra-system component crashes from end users.

http://dslab.epfl.ch/pubs/crashonly/


2011년 7월 3일 일요일

2011년 책읽기 중간 점검.


2011년에 책을 50권 읽기로 마음을 먹고 블로그에 기록을 하기 시작했다. 

7월을 맞이하고, 어떻게 진행되었는지 중간점검을 해봤다. 우선, 6월까지 25권을 읽었으니 가장 중요하게 생각했던 갯수는 맞췄다. (질보다는 양을 채우는게 우선적인 목표였다.)


# 우선 1월에 적었던 목표. 

2011년 목표는 50권.

1. 다양하게

2. 미뤄왔던 책들 (사놓고 읽지 않은 것들..)

3. 한 분야는 집중적으로 



# 읽은 목록.




























젊은 베르테르의 기쁨


비폭력 대화


마음


동적평형


정치와 진리


한나라 기행


한장의 사진 미학


마이더스의 노예들


생물과 무생물사이


공항에서 일주일을


자코메티의 아틀리에


카르멘


나를 부르는


미각의 제국


세익스피어의 기억


광기와 우연의 역사


국가란 무엇인가


와인 오디세이 궁금한 와인상식 40


선과 모터사이클 관리술


자유론


로지코믹스


게으름에 대한 찬양


스푸트니크의 연인


나누고 쪼개도 없는 세상 


여행의 기술





 
# 1. 다양하게.
다양성은 어느정도 충족시킨듯 하다.
소설, 과학, 수필, 고전,  미학, 여행기... 
다만,  25권이 여러 장르를 나누어 버리니 집중적으로 읽은 분야가 없다. 


# 2. 미뤄왔던 책들.
읽다가 멈추고, 일기를 미뤄왔던 책들은 아직도 그대로 책장에 꼽혀있다.
- 이중톈의 미학강의
- 예루살렘의 아이히만
- 박경철의 부자 경제학
- 시뮬라시옹
- .. 


# 3.  한 분야는 집중적으로. 
애초에 목표만 있었지, 어떤 분야를 집중적으로 읽을지 선택을 하지 않았었다... ;;
분야의 선정이 없었으니, 당연히 집중적으로 읽은 분야는 없다.
> 미학으로 갈까..?


#
25권은 맞췄으니, 일단 만족.

군대에서 유격훈련을 받을 때, 어느 조교 왈 :
"본 조교는 하고자 하는 의지는 보지 않습니다. 갯수만 맞추십시오." 
열심히 하는 자세를 보인다고 봐주지 않는다. 

여느때는 그냥 목표를 채우는게 중요할 때가 있다.