본문 바로가기

분류 전체보기

(89)
Distributed Cache in Hadoop Hadoop 책에서 발췌해서 임시 발번역함. 데이터를 직렬화하기 보다 하둡의 분산 캐시 매커니즘을 이용하여 데이터셋을 분산하는 것이 더 유용하다. 첫문장 부터 이해안됨; 태스크들이 실행할 때 사용되는 파일과 아카이브를 태스크 노드에 복사하기 위한 서비스를 제공한다.(맵퍼와 리듀서에서 필요한 리소스들을 저장하기 위한 프로그래밍 매커니즘을 제공함 - 다른 책에서 정의한 문장) 네트워크 대역폭을 절약하기 위하여 파일들은 일반적으로 job 마다 한번 특정 노드에 복사된다. Usage GenericOptionsParser를 사용하는 많은 툴들을 위하여 당신은 -files 라는 옵션을 인수로 지정함으로써 콤마로 구분된 URI 목록으로 분산 파일들을 지정할 수 있다. 파일들은 로컬 파일 시스템 HDFS 또는 다른 하..
The JobConf Object in Detail Pro Hadoop 책에 부록 A에서 일부분을 발췌해서 발번역함. job의 모든것은 JobConf 객체를 통해 제어된다; 이것은 맵리듀스 job의 중심이다. 프레임워크는 JobConf 객체를 가져다가 XML로 표현할 것이다. 그런 후 모든 태스크들은 시작될 때 XML을 로드할 것이다. 이번 섹션은 관련 메소드들을 다루고 기본적인 사용 예제들을 제공할 것이다. JobConf 클래스는 Configuration 클래스로부터 상속받는다. JobConf 객체는 프로그래머와 프레임워크 사이에 주요 인터페이스이기 때문에 Configuration 베이스 클래스로 부터 온 메소드와 구분없이 사용자가 이용할 수 있는 JobConf의 모든 메소드에 대해서 상세히 알아볼 것이다. 그림 A-1에서 보여진 것 같이 새로운 Job..
Task JVM Reuse - in MapReduce Hadoop 책에서 일부 발번역함 하둡은 실행되고 있는 다른 태스크들로부터 분리하기 위하여 자신의 JVM에서 태스크를 실행한다. 각 태스크마다 새로운 JVM을 시작하는 오버헤드는 1초 정도걸린다. 이는 1분정도 실행되는 job들에게는 그다지 중요하지 않다. 그러나, 짧은 생명 주기 태스크(일반적으로 맵태스크들)를 많이 가지고 있거나 긴 초기화과정을 가지고 있는 job들은 다음 태스크들을 위해 JVM이 재사용될 때 좋은 퍼포먼스를 얻을 수 있다. 태스크 JVM 재사용하면 태스크들이 하나의 JVM에서 동시에 실행할 수는 없다. JVM은 순차적으로 태스크를 실행한다. 그러나 태스크트랙커들은 한번에 하나 이상의 태스크를 실행할 수 있지만 이것은 항상 분리된 JVM에서 이루어진다. 태스크트랙커의 맵과 리듀스 태스..
How MapReduce Works Hadoop : The Definitive Guide 책 6장 내용을 일부 발췌해서 발번역함. 이미 한글판 서적이 나왔지만 정리한다는 생각으로 번역~(3rd Edition을 요즘 보고 있어서 내용을 수정 추가~) 이 장에서 우리는 하둡에서 맵리듀스가 어떻게 동작하는지 상세하게 볼 것이다.이는 다음 두 장에서 살펴볼 좀 더 개선된 맵리듀스 프로그램 만들기 위한 좋은 지침을 제공한다. Anatomy of a MapReduce Job Run 당신은 한 라인 코드를 가지고 맵리듀스 job을 실행할 수 있다. : JobClient.runJob(conf). 매우 짧다. 그러나 이 뒤에는 수많은 처리가 숨겨져 있다. 이번 섹션은 하둡이 job을 수행하기위한 절차들을 알아본다.(Hadoop이 0.2로 버전업되면서 AP..
What is a servce factory in osgi? knopflerfish에 설명되어 있는 글을 발번역한 글입니다. 원문 http://www.knopflerfish.org/osgi_service_tutorial.html OSGi 서비스 팩토리는 ServiceFactory를 구현하면 만들 수 있다. 때때로 서비스는 서비스를 사용하는 번들에 의존하여 다양하게 설정될 필요가 있다. 예를 들어, 로그 서비스는 번들의 아이디를 출력할 수 있을 필요가 있다. 그렇지 않으면 읽기 어려울 것이다. 서비스 팩토리는 일반적인 서비스와 같은 방법으로 registerService를 사용하여 등록된다. 유일한 차이점은 실제적인 서비스 객체를 다루기전에 인디렉션 스텝이라는 것이다. 서비스를 사용하는 클라이언트는 서비스가 팩토리 객체인지 일반객체인지 알 필요도 없고 알아서도 안된다..
Whiteboard pattern in osgi 화이트보드 패턴 예제 원문: http://www.osgi.org/wiki/uploads/Links/whiteboard.pdf LCD Display bundle OSGi 환경에서 주요 문제은 번들간의 종속성을 처리하는 것이다: 다른 번들이 소유하거나 생성한 객체를 레퍼런스하는 번들간의 종속성. 이문제는 다음과 같은 간단한 예제를 사용하여 설명할 수 있다. 이 예제는 수 많은 스크린들을 회전하는 LCD 디스플레이 서비스로 구성되어 있다. 스크린들의 내용은 ContentProvider들에 의해 제공된다. 이것은 LCD에 표시되길 원하는 번들에 의해 구현될 수 있는 인터페이스이다. ContentProvider들은 새로운 스크린이 필요하면 그들의 내용에 대해 질의된다.[내용을 얻어오는 함수를 가지고 있다.] 이 ..
Top Threats to Cloud Computing, Version 1.0 개인적으로 공부하기 위해서 번역/정리하는것이라 발번역입니다. 부가설명을 위한 것들은 다 삭제함 원본은 여기 클릭! Threat #1 : 클라우드 컴퓨팅의 남용과 불법적인 사용. 설명 IaaS는 고객에게 무한의 계산능력, 네트워크, 저장공간이 있는것처럼 보이도록 서비스한다. 몇몇 제공자들은 제한적으로나마 무료로 트라이얼 기간동안 사용할 수 있도록 해준다. 등록, 사용모델 뒤에 상대적 익명을 남용하여 스팸머, 악성 코드 작성자 그리고 다른 범법자들은 상대적 면책을 가지고 그들의 행동을 수행해오고 있다. PaaS 제공자들은 전통적으로 이러한 공격에 의해 고통받아 왔다. 그러나 최근들어 해커들은 그러한 공격을 IaaS 밴더를 대상으로 시도하고 있다. 미래의 관심사는 다음과 같은 것을 포함하고 있다. 패스워드와 ..
Defense and Detection Strategies against Internet worms 5장 Construction of a Worm 인텔 i386 플랫폼, 리눅스 아파치 서버에 감염시키는 Slapper 웜을 분석하여 웜의 생성구조를 살펴본다. 5.1 Target Selection 웜을 디자인할 때 첫 번째 해야할 일은 공격하고 이용할 대상을 결정하는 일이다. 두가지를 고려해야 한다. 첫째, 웜이 사용할 플랫폼 선택해야한다. 둘째, 웜이 원격의 시스템을 어떻게 공격할 지 선택해야한다. 5.1.1 Target platform 공격을 시도하는 영역이 인터넷이라면 윈도우 시스템에 대한 공격은 많은 호스트에 영향을 줄 수 있을 것이다. 이는 인터넷을 사용하는 대부분의 클라이언트는 윈도우 환경이기 때문이다. 이와 반대로 유닉스 서버는 네임서버 파일서버와 같이 인터넷 백본을 구성하는 요소로 많이 사용되고 ..