본문 바로가기

전체 글

(237)
3.하둡-맵리듀스 맵리듀스는 8단계의 처리과정을 거침 1.입력 -데이터를 입력하는 단계 2.맵 -입력을 분할하여 키별로 데이터를 처리 3.컴바이너 -데이터 전송을 줄이기위하여 맵의 결과를 정리 4.파티셔너 -맵의 출력 결과 키 값을 해쉬 처리하여 어떤 리듀서로 넘길지 결정 5.셔플 -각 리듀서로 데이터를 이동 6.정렬 -리듀서로 전달된 데이터를 키 값 기준으로 정렬 7.리듀서 -리듀서로 데이터를 처리하고 결과를 저장 8.출력 리듀서의 결과를 정의된 형태로 저장 보조 도구 -Counter 하둡에서 맵리듀스의 잡 진행 상황을 확인할 수 있는 카운터를 제공. 잡은 맵리듀스의 작업, 입출력 상황을 확인할 수 있는 카운터를 제공하고 사용자가 카운터를 생성하여 사용하기도 가능 -Distributed Cache 맵리듀스 잡에서 공유되..
3.하둡-2 HDFS Federation -네임노드는 파일 정보 메타데이터를 메모리에서 관리하는데 파일이 많아지면 메모리 사용량이 늘어나 메모리 관리에 문제가 생긴다. 이를 해결하기 위해 HDFS Federation을 지원함. HDFS Federation은 디렉토리 단위로 네임노드를 등록하여 사용한다. HDFS Federation을 사용하면 파일, 디렉토리의 정보를 가지는 네임스페이스와 블록의 정보를 가지는 블록 풀을 각 네임노드가 독립적으로 관리한다. 네임스페이스와 블록풀을 네임스페이스 볼륨이라하고 네임스페이스 볼륨을 독립적으로 관리되기 때문에 하나의 네임노드에 문제가 생겨도 다른 네임노드에 영향을 주지않음. HDFS High Availability -HDFS는 네임노드가 단일 실패 지점임, 네임노드에 문제가 생기..
3.하둡-1 하둡은 여러 개의 컴퓨터를 클러스터화하고, 큰 크기의 데이터를 클러스터에서 병렬로 동시에 처리하여 처리 속도를 높이는 것을 목적으로 하는 분산처리를 위한 오픈소스 프레임워크 하둡의 구성 요소 하둡은 4개의 주요 모듈로 구성됨. ●Hadoop Common 하둡의 다른 모듈을 지원하기 위한 공통 컴포넌트 모듈 ●Hadoop HDFS 분산저장을 처리하기 위한 모듈 여러개의 서버를 하나의 서버처럼 묶어 데이터를 저장 ●Hadoop YARN 병렬처리를 위한 클러스터 자원관리 및 스케줄링 담당 ●Hadoop Mapreduce 분산되어 저장된 데이터를 병렬 처리할 수 있게 해주는 분산 처리 모듈 ●Hadoop Ozone 하둡을 위한 오브젝트 저장소 장점 -오픈소스 라인서스에 대한 비용 부담이 적음 -시스템을 중단하지..
2. 파이썬 자료구조 튜플 튜플은 몇 가지를 제외하고는 리스트와 거의 비슷하다. 다른점은 아래와 같다. ● 리스트는 []으로 둘러싸지만 튜플은 ()으로 둘러싼다. ● 리스트는 그 값의 생성, 삭제, 수정이 가능하지만 튜플은 그 값을 바꿀 수 없다. 튜플의 예제는 다음과 같다. >>> a = () >>> a = (1, ) >>> a = (1, 2, 3) >>> a = 1, 2, 3 >>> a = ('a', 'b', ('ab', 'cd')) -인덱싱 >>> a = (1, 2, 3) >>> a[0] 1 >>> a[2] 3 -슬라이싱 >>> a = (1, 2, 3) >>> a[1:] (2, 3) -튜플 더하기 >>> a = (1, 2, 3) >>> b = (4, 5) >>> a + b (1, 2, 3, 4, 5) -튜플 곱하기 >>> a..
2.2 자료구조 큐(queue) - 원형 큐 원형 큐(Circle queue): 기존의 큐는 프론트 값이 계속 증가되면서 공간을 잡아먹는 문제가 있음, 원형큐는 연결리스트를이용하여 공간의 낭비 없이 큐를 구현한 것이다. 원형큐의 동작과정은 다음 그림과 같다. 원형 큐의 연산은 다음 표와 같다. 연산 설명 enQueue 큐에 데이터 삽입 deQueue 큐에 데이터 삭제 peek front 가르키는 데이터 확인 isEmpty 큐가 비어있는지 확인 isFull 큐가 꽉 차있는지 확인 다음은 파이썬을 이용한 원형큐 구현 소스코드이다. class CircleQueue: def __init__(self, size): self.data = [None] * size self.size = size self.count = self.rear = self.front =..
2.1 자료구조 큐(queue) - 선형 큐 큐(queue): 한쪽 방향으로 데이터가 삽입되고 반대 방향으로는 데이터가 삭제되는 구조. 큐는 가장 먼저 삽입된 데이터가 가장 먼저 삭제되므로 선입 선출(FIFO(First-in First-Out) 구조라고도 함. 1. 선형 큐(Linear Queue) 선형 큐는 가장 기본적인 큐로 선입 선출 구조를 가진다. 다음 그림은 선형 큐의 동작 과정이다. 큐는 위의 그림과 같이 동작을 한다. 다음 표는 큐의 연산이다. 연산 설명 enQueue 큐의 rear에 원소 삽입 deQueue 큐의 front에 원소 삭제 peek 큐의 front에 원소 확인 isEmpty 큐가 비어있는지 확인 파이썬으로 구현한 큐의 소스코드는 다음과 같다. class Queue: def __init__(self): self.data =..
2.빅데이터 처리단계 빅데이터의 처리단계는 5단계로 처리됨. 1.수집 데이터를 수집하는 단계 정형, 비정형, 반정형 데이터 수집 ●내부 데이터 시스템 로그, DB 데이터 ●외부 데이터 동영상, 오디오 정보 웹 크롤링, SNS 데이터 ●정제 수집한 데이터를 적재하기 위해 데이터를 전처리하는 과정 ●적재 정제된 데이터를 분석하기 위하여 적재하는 단계 ●분석 적재한 데이터를 의미 있는 지표로 분석하는 단계 ●시각화 분석한 데이터를 도표로 보여주는 단계
1.빅데이터 빅데이터 - 큰 사이즈의 데이터로부터 유의미한 지표를 분석해내는 것, 기존 DB 관리도구의 수집, 저장, 관리, 분석 역량을 넘어서는 데이터 빅데이터의 3V ●Volume - 크기 저장장치 가격의 하락, 네트워크 속도의 향상으로 수 페타바이트의 데이터가 매일 생성 ●Variety - 다양성 정형, 반정형, 비정형 형태의 다양한 데이터를 분석 ●Velocity - 속도 정보의 유통 속도가 굉장히 빠름 빅데이터의 5V 위의 3가지에 아래의 2가지를 추가하여 5V라고 부름 ●Value - 가치 유의미한 가치를 가지는 지표 ●Veracity -정확성 데이터의 신뢰성, 정확성이 높음 1.데이터의 형태 수집 형태 데이터의 수집 형태에 따라 정형, 반정형, 비정형으로 구분됨, 보통 정형 데이터보다 비정형, 반정형 데..