3. GFS의 상호작용(Interactions) GFS의 설계자들은 모든 작업에 대해 마스터의 참여가 최소화 되도록 시스템을 설계했습니다. 이 배경을 바탕으로 어떻게 클라이언트, 마스터 그리고 청크서버 간의 상호작용에서 마스터의 개입이 최소화되는지를 알아보겠습니다. 1) Leases and Mutation Order 변화(Mutation)는 ...
용어정리 1. 원자성(Atomicity)
GFS를 공부하다보면 ‘원자성’이라는 다소 낯선 단어가 등장하는데, 이 원자성을 이해하기 위해선 먼저 트랜잭션(Transaction)을 알아야합니다. 1. 트랜잭션(Transaction) 트랜잭션은 데이터베이스 시스템이나 그와 유사한 시스템에서 등장하는 용어로서 쿼리가 실행 중에 중단될 경우, 처음부터 다시 실행하는 롤백을 수행하고, 오류없이 실행을...
이코테 Ch.1 그리디 알고리즘 (3)
이 문제의 핵심은 행별로 최소값을 찾는 것이다. 문제에서 입력값을 행렬의 형태와 각 행별 값들을 넣도록 했기 때문에 input으로 행렬의 형태를 만들어줘야하고, 그 다음 각 행의 값을 입력해주는 방식으로 코드를 짜야한다 만들어야 하는 행이 n개이므로 반복문을 활용해야하며, loop 한 회당 그 행의 값을 input으로 입력하는 형태여야 한다. m...
Hadoop Deep Inside - Ch.2 구글 파일 시스템(Google File System) (1)
앞선 챕터에서 분산 파일 시스템(DFS)라는 운영체제에 대한 공부를 했습니다. GFS와 HDFS의 근간이 되는 개념이죠. 그럼 또 한가지 의문이 생깁니다. HDFS는 GFS 논문을 보고 만들었고 GFS는 DFS 개념을 토대로 작성되었으니, 이제는 ‘GFS는 과연 무엇일까’하는 의문이 말이죠. 이 의문은 너무나도 자연스러워서 거부할 수 없는 흐름을 만들...
이코테 Ch.1 그리디 알고리즘 (2)
입력 예시가 있는 문제들이 있는 경우는 input 값을 입력하는 형태로 구성해주면 된다. 특히나 input값을 가지고 연산이 필요한 경우는 map 함수를 통해 int, float 등 필요한 숫자형태로 변형해준다. 만약 배열의 형태로 가져오고 싶다면 list와 map 함수를 사용한다. [예시 코드] # input 값으로 받은 값들은 정수형으로 반환...
Hadoop Deep Inside - Ch.1 분산 파일 시스템(Distributed File System)
하둡을 구성하는 핵심요소는 세 가지로 압축됩니다. 첫째는 하둡 분산 파일 시스템(HDFS). 둘째는 하둡 맵리듀스. 그리고 마지막으로 하둡 YARN 입니다. 하둡 딥인사이드의 챕터는 앞의 순서대로 진행이 될 것입니다. 그리고 그 첫번째 챕터, HDFS에 대한 이야기를 시작하도록 하겠습니다. 현 시점의 저는 HDFS가 어떤 구조와 형태로 작동하는지는 ...
이코테 Ch.1 그리디 알고리즘 (1)
1. 그리디 알고리즘의 의미 이름에서도 알 수 있듯 탐욕법이라고도 불립니다. 어떤 문제를 단순 무식하게, 탐욕적으로 문제를 푸는 알고리즘을 의미합니다. 여기서 탐욕적이라는 말은 ‘현재 상황에서 지금 당장 좋은 것만 고르는 방법‘입니다. 그리디 알고리즘은 매순간 가장 좋아보이는 것을 선택하고, 그 선택이 미래에 미치는 영향따위는 고려하지 않습니다. ...
Hadoop Deep Inside - Ch.0 개요
Hadoop Deep Inside 시리즈는 T-Academy의 하둡강의를 기반으로 진행합니다. 이 외에도 하둡 공식홈페이지와 여러 블로그, 커뮤니티들을 참조합니다. 또한, Deep Inside 시리즈는 spark, elk stack, kafka 등 사용한 경험이 있는 모든 tool들을 대상으로 확대해 갈 예정입니다. 0. 여는 말...
엘라스틱서치 - Elasticsearch-.py와 Elasticsearch_dsl
Elasticsearch : 7.17.6 Elasticsearch_dsl : 7.4.0 1. 개요 django에서 검색엔진을 구현할 때는 Elasticsaerch 모듈을 사용하고, 검색 랭킹 집계를 구현할 때는 Elasticsearch_dsl을 사용했다. 이는 집계할때 dsl이 더 사용하기 좋았기 때문인데, 실제 elasticsearc...
엘라스틱서치 - 실시간 인기 기업 순위
참고 사이트 Elasticsearch_dsl 공식홈페이지 Stackoverflow Elasticsearch : Single-node로 구현 1. 개요 세번째 프로젝트 과정에서 채용중인 기업 중 인기있는 기업을 순서대로 나열해서 보여주기 위한 실시간 검색 순위를 구현할 필요가 생겼다. 장고로 부터 로그데이터를 수집하여 엘라스틱...