cloud 7

[클라우드 컴퓨터링] MapReduce vs. 병렬 데이터베이스

대규모 데이터 처리와 디버깅디버깅의 어려움: 작은 데이터셋에서는 작동하던 것이 큰 규모에서는 메모리 관리 문제(버퍼링, 객체 생성), 과도한 중간 데이터, 손상된 입력 레코드 등으로 인해 실패할 수 있음데이터의 현실: 실제 데이터는 지저분하고(messy) 일관성이 없음데이터센터: 데이터센터 자체가 하나의 거대한 컴퓨터로 비유됨.MapReduce의 한계: 맵리듀스는 훌륭하지만, 데이터센터 컴퓨터를 제어하기엔 '어셈블리'처럼 너무 저수준의 방식임.고수준 언어의 필요성 Hadoop과 Java: 하둡은 대용량 데이터 처리에 좋지만, 모든 것을 Java로 작성하는 것은 장황하고(verbose) 느림. 데이터 과학자들은 Java 작성을 선호하지 않음.해결책: 더 높은 수준의 언어와 컴파일러를 설계하는 것.Hive와..

CLAUD COMPUTERING 2025.11.11

[클라우드 컴퓨터링] MapReduce 데이터 흐름과 API

MapReduce 데이터 흐름단일 리듀스 태스크(Single Reduce Task)모든 맵(map) 태스크의 정렬된(sort) 출력은 복사(copy)되어 단일 병합(merge) 단계를 거침.이후 하나의 리듀스(reduce) 태스크에 의해 처리됨.최종 출력 파일은 하나(part 0)이며 HDFS에 복제되어 저장됨.다중 리듀스 태스크(Multiple Reduce Tasks)맵 태스크의 출력은 키(key)에 따라 파티셔닝되어 여러 리듀서로 분산됨.각 리듀스 태스크는 자신에게 할당된 파티션의 데이터를 개별적으로 병합(merge)하여 처리함.리듀서 개수만큼 출력 파일(part 0, part 1 등)이 생성되며, HDFS에 복제됨.리듀스 태스크 없음 (Map-Only Job)맵 태스크가 출력을 HDFS에 직접 씀...

CLAUD COMPUTERING 2025.10.21

[클라우드 컴퓨터링] MapReduce 데이터 관리

MapReduce 데이터 지역성 최적화 (Data Locality Optimization)개념: 대용량 데이터를 계산이 필요한 곳으로 옮기는 대신, 계산 프로그램(코드)을 데이터가 저장된 곳으로 보내 처리하는 방식.목표: 상대적으로 부족한 자원인 네트워크 대역폭 사용을 최소화.스케줄링 우선순위: Master는 데이터의 위치를 고려하여 Map Task를 스케줄링함.1순위 (Data-Local): 데이터 블록이 위치한 노드(Node)와 동일한 노드에서 Map Task를 실행.2순위 (Rack-Local): 1순위가 불가능할 경우, 데이터 블록과 동일한 랙(Rack)에 있는 다른 노드에서 Task를 실행.3순위 (Off-Rack): 1, 2순위가 모두 불가능하면, 데이터 블록과 다른 랙에 있는 노드에서 Tas..

CLAUD COMPUTERING 2025.10.16

[클라우드 컴퓨터링] Haddop의 데이터 처리를 위한 MapReduce

1. Hadoop의 개념과 구조Hadoop = 대규모 데이터를 저장(HDFS) + 처리(MapReduce) 하는 오픈소스 프레임워크HDFS(Hadoop Distributed File System): 데이터를 여러 컴퓨터에 분산 저장MapReduce: 분산된 데이터를 병렬로 계산·분석여러 대의 일반적인 하드웨어(commodity hardware) 를 묶어 거대한 데이터 처리 시스템처럼 동작“Store once, process anywhere” 개념 — 데이터를 여러 서버에 저장 후, 계산 작업을 데이터가 있는 곳으로 전송2. MapReduce의 등장 배경Google은 과거 수백 개의 맞춤형 분산 계산 프로그램을 사용예: 검색 인덱스 생성, 웹 그래프 구조 분석, 인기 쿼리 요약 등각 프로그램의 특징연산 자..

CLAUD COMPUTERING 2025.10.14

[클라우드 컴퓨터링] 가상화 기술(Virtualization)이란?

1. 가상화(Virtualization)란 무엇일까?물리적인 컴퓨터 자원(하드웨어)을 논리적인 객체로 추상화하는 기술쉽게 말해, 한 대의 강력한 서버를 여러 대의 작은 서버처럼 나누어 사용하거나(Partitioning) , 여러 대의 서버를 하나로 묶어(Aggregation) 사용하는 것을 가능하게 해줌이 기술이 중요한 이유는 자원 효율성에 있음대부분의 서버는 평소에 전체 용량의 10~15% 정도만 사용하는데, 이는 상당한 자원 낭비가상화를 이용하면 놀고 있는 자원을 필요한 곳에 동적으로 할당하여 서버 사용률을 70% 이상으로 끌어올릴 수 있음1960년대 IBM 메인프레임에서 처음 시작되었고, 2001년 VMware가 x86서버용 상용 솔루션을 내놓으며 본격적으로 알려지기 시작2. 하이퍼바이저(Hyper..

CLAUD COMPUTERING 2025.09.18

[클라우드 컴퓨터링] 머신러닝, 딥러닝과 빅데이터

AI, 머신러닝, 딥러닝의 관계- 세 가지 용어는 종종 혼용되지만, 명확한 포함 관계를 가지고 있음- if-else 규칙에 따라 기계가 특정 방식으로 행동하는 것도 AI의 한 종류로 볼 수 있음인공지능 (Artificial Intelligence, AI): - 가장 넓은 개념으로, 기계가 학습이나 문제 해결과 같은 인간의 인지 능력을 모방하는 모든 경우를 의미- 간단하게는 미리 프로그래밍됨머신러닝 (Machine Learning, ML): - 인공지능의 한 분야로, 알고리즘이 데이터를 학습하며 시간이 지남에 따라 성능을 향상시키는 기술- 머신러닝 모델은 예측과 실제 값 사이의 오류(손실 함수)를 최소화하는 최적화 알고리즘이라고 할 수 있음딥러닝 (Deep Learning, DL): - 방대한 양의 데이터..

CLAUD COMPUTERING 2025.09.11

[클라우드 컴퓨터링] 클라우드와 빅데이터, 그리고 하둡

1. 클라우드와 빅데이터: 문제와 해결책의 공존클라우드 컴퓨팅과 빅데이터는 서로를 필요로 하는 공생 관계에 있음빅데이터의 생성원: - 소셜 미디어 플랫폼부터 사물 인터넷(IoT) 기기까지, 수많은 클라우드 기반 서비스들은 끊임없이 방대한 양의 데이터를 생성빅데이터의 해결책: - 동시에 클라우드는 빅데이터를 저장하고, 필요에 따라 분석 클러스터를 유연하게 생성하여 처리- 이를 통해 과거 대기업만 가능했던 고급 분석 기술의 '상용화'와 '민주화'가 이루어짐- 초기 클라우드는 중소기업을 중심으로 성장- 지난 몇 년간 보안과 규정 준수에 집중 투자하며 대기업도 신뢰하고 사용할 수 있는 "엔터프라이즈 레디(Enterprise Ready)" 환경으로 발전 클라우드 비용의 역설 (A Trillion Dollar Pa..

CLAUD COMPUTERING 2025.09.09