728x90
[etc] MapReduce
맵리듀스(MapReduce)는 대규모 데이터 집합을 처리하는 데 사용되는 프로그래밍 모델이다.
대규모 컴퓨팅 클러스터에서 병렬 처리를 수행하여, 데이터를 처리하고 분석하는 데 유용하다.
맵 리듀스는 일반적으로 맵, 리듀스 두 단계로 구성된다.
맵(Map) 단계
입력 데이터를 가져와서 여러 작은 부분으로 나눈 후에,
각 부분에 대해 지정된 함수(맵 함수)를 적용하여 중간 결과를 생성한다.
이 단계에서 입력 데이터를 키-값 쌍 형식으로 매핑한다.
예를 들어 아래와 같은 입력 데이터가 있다고 가정해보자.
Hello world
Hello there
Hello world
위의 입력 데이터에서는 다음과 같은 키-값 쌍이 생성된다.
("Hello", 1),("World", 1)
("Hello", 1),("there", 1)
("Hello", 1),("World", 1)
리듀스(Reduce) 단계
맵 단계에서 생성된 중간 결과를 모으고 정렬한 다음,
각 키에 대해 지정된 함수(리듀스 함수)를 적용하여 최종 결과를 생성한다.
예를 들어 위 맵 단계에서 생성된 중간 결과를 모아,
"Hello"를 키로 갖는 값들을 합산하여 각 단어의 총 출현 횟수를 계산한다.
("Hello", 3)
이러한 방식으로 맵 리듀스는 대용량의 문서나 텍스트 파일과 같은 데이터를 처리하여
각 단어의 출현 횟수를 계산할 수 있다.
반응형
'💾 Data > etc' 카테고리의 다른 글
[Excel] VLOOKUP (0) | 2024.08.05 |
---|---|
[Excel] 엑셀을 이용하여 INSERT QUERY문 만들기 (0) | 2023.09.16 |
[Superset] 차트에 HyperLink 걸기 (0) | 2023.07.11 |
[Hive] Apache Hive란? (0) | 2023.06.01 |
[Trino] trino(Presto SQL)란? (0) | 2023.05.31 |