반응형

Book 29

챕터 6.1 API 는 어디서 찾을까

1) dataframe( dataset ) 메서드 데이터 셋의 하위모듈은 다양한 메서드를 제공 메서드를 사용해 여러 가지 문제를 해결 가능 Column 메서드 alias 나 contains 같이 컬럼과 관련된 여러가지 매서드를 제공 데이터 타입과 관련된 다양한 함수를 제공 val df = spark.read.format(”csv”). option( ). df.printSchema( ) —> 스키마 정보 출력 df.createOrReplaceTempView( “짓고자 하는 테이블 이름”) —> 데이터 프레임 바탕으로 임시 테이블 생성 —> 테이블을 보려면 spark.sql( “쿼리문”) 을 작성해야함 6.2 스파크 데이터 타입으로 변환하기 반드시 알아두어야 하는 방법 데이터 타입 변환은 lit 함수를 사용..

챕터 4. 구조적 API 개요

스파크 구조적 API 에는 다음과 같은 세가지 분산 컬렉션 API 가 존재 DataSet DataFrame SQL 데이터 뷰 구조적 API 는 데이터 흐름을 정의하는 기본 추상화 개념이며, 기본 3가지 개념이 중요하다 타입형 / 비타입형 API 의 개념과 차이점 핵심 용어 스파크가 구조적 API 의 데이터 흐름을 해석하고 클러스터에서 실행하는 방식 DataFrame 과 Dataset 스파크는 DataFrame 과 Dataset 이라는 구조화된 컬렉션을 가지고 있음 잘 정의된 로우와 컬럼을 가지는 분산 테이블 형태의 컬렉션 불변성을 가진다. 스키마 스키마는 데이터프레임의 컬럼명과 데이터 타입을 정의함 데이터 소스에서 얻거나 직접 정의할 수 있음 스파크의 구조적 데이터 타입 개요 실행 계획 수립과 처리에 사..

[하둡 완벽 가이드] 2. 맵리듀스

맵리듀스는 병생성을 고려하여 설계 충분한 장비만 있다면 대규모 데이터 분석이 가능 대용량 데이터셋에서 그 진가가 드러남 하둡은 소수의 큰파일을 쉽고 효율적으로 처리한다 2.3 하둡으로 데이터 분석하기 1) 맵과 리듀스 맵리듀스 작업은 크게 맵 단계와 리듀스 단계로 구분 각 단계는 입력과 출력으로 키-값 의 쌍을 가지며, 그 타입은 프로그래머가 선택 맵 함수의 출력이 리듀스 함수의 입력으로 보내지는 과정은 맵리듀스의 프레임워크에 의해 처리(이 과정에서 키-값 쌍은 키를 기준으로 정렬) A. 맵단계 - 데이터의 준비 단계 - 리듀스 함수를 위해 데이터를 제공 - 잘못된 레코드를 걸러주는 작업을 함 - 문제가 있는 레코드를 제거하는 작업 - 각 행은 키-값 쌍으로 변환되어 맵 함수의 입력이 됨 B. 리듀스 단..

[하둡 완벽 가이드] 1. 하둡과의 만남

1-1. 빅데이터! 미래의 성공은 다른 조직의 데이터에서 가치를 추출하는 능력에 달려 있음 다양한 출처의 정보를 융합할 수 있으면 지금까지 예상하거나 상상할 수 없었던 새로운 프로그램도 만들 수 있음 하지만 수많은 데이터를 저장하고 분석하는 일은 매우 어려움 1-2. 데이터 저장소와 분석 데이터를 읽는 속도는 증가하지 않았음(발전하지 않음) 이에 대한 대안은 여러개의 디스크에서 동시에 데이터를 읽는 것임 1-3. 전체 데이터에 질의하기 한번의 쿼리로 젠처네 상당한 규모의 데이터셋을 처리하는 것이 맵리듀스의 장점 맵리듀스는 일괄 질의 처리기 전체 데이터 셋을 대상으로 비정형 쿼리를 수행하고 합리적인 시간 내에 그 결과를 보여주는 능력이 있음 1-4. 일괄 처리를 넘어서 맵리듀스는 일괄 처리 시스템이기 때문..

[스파크] 2. 스파크 함수

1. mean - 객체의 평균값 계산 intIds.mean 2. sum - 객체의 합 계산 intIds.sum 3. stats - 단 한번의 호출로 RDD 요소의 전체 개수, 합계, 평균, 최댓값, 최솟값, 부산, 표준편차를 한꺼번에 계산 intIds.stat 4. histogram - 데이터를 시각화하는데 주로 사용, - x 축에는 데이터 값의 구간(interval) 을 그리고 - y 축에는 각 구간에 해당하는 데이터 밀도나 요소 개수를 그림 - 히스토그램이 제공하는 데이터 분포로 표준편차나 평균값에서 볼수 없는 인사이트 얻을 수 잇음 // 첫번째 버전 // - 구간 경계를 표혀하는 double 값의 배열을 받고, 각 구간에 속한 요소 개수를 담은 Array 객체를 반환 intIds.histogram(..

[스파크] 1. RDD 의 기본 행동 연산자 및 변환 연산자

RDD 는 크게 변환 과 행동 이라는 두 유형으로 나뉨 변환 연산자 : RDD 의 데이터를 조작해 새로운 RDD 를 생성 ( filter, map 함수) 행동 연산자 : 연산자를 호출한 프로그램으로 계산결과를 반환하거나 RDD 요소에 특정 작업을 수행하려고 실제 계산을 시작하는 역할을 함 ( count, foreach 함수) 지연 실행 - 매우 중요한 개념 - 행동 연산자를 호풀하기 전까지는 변환 연산자의 계산을 실행하지 않는 것을 의미 - 행동 연산자를 호출했을 때 무슨 연산이 어떤 순서로 실행되어야 할지 알려주는 일종의 설계도 1. map 변환 연산자 원본 RDD 의 각 요소를 변환한 후 변환된 요소로 새로운 RDD 를 생성하는 연산자 RDD 의 모든 요소에 임의의 함수를 적용할 수 있는 변환 연산자..

3. 검색 알고리즘

1. 검색 알고리즘이란? 검색 문제를 해결하는 어떠한 알고리즘을 의미한다. 연속 변수 또는 이산 변수를 사용하여, 일부 데이터 구조 안에 저장된 정보를 검색하거나 문제 도메인의 검색 공간에서 계산을 하기위해 사용한다. 검색 알고리즘은 배열검색, 연결 리스트 검색, 이진 검색 트리 검색 이 존재하나 이번 3번째 장에서는 배열 검색의 주요 알고리즘인 선형 검색, 이진 검색, 해시법에 대해 기록할 예정이다. 검색 알고리즘 선택시, 검색만을 중점적으로 놓고 본다면 계산 시간이 가장 짧은 검색 알고리즘을 선택하면 되지만, 데이터 추가, 삭제 등 기능을 자주 수행해야 된다면 검색 이외의 작업에 들어가는 비용을 종합 평가하여 알고리즘을 선택해야 한다. 선택할 수 있는 알고리즘이 다양한 경우에는 용도, 목적, 실행 속..

드모르간의 법칙 간략 정리

1. 정의 논리곱(합)의 부정은 각각 부정의 논리합(곱)과 같다는 법칙. 논리학과 동이하게 , 집합론, 전자회로 등에서도 사용 not (A or B) = (not A) and (not B) not (A and B) = (not A) or (not B) 2. 벤다이어그램으로 파악 3. 참고 링크 ko.wikipedia.org/wiki/%EB%93%9C_%EB%AA%A8%EB%A5%B4%EA%B0%84%EC%9D%98_%EB%B2%95%EC%B9%99 드 모르간의 법칙 - 위키백과, 우리 모두의 백과사전 위키백과, 우리 모두의 백과사전. 드 모르간의 법칙(영어: De Morgan's laws)은 수리 논리학이나 집합론에서 논리곱(집합의 공통 부분), 논리합(집합의 모든 부분), 부정(여집합) 연산간의 관계(..

1-2. 반복하는 알고리즘

어떤 조건이 성립하는 동안 반복해서 처리하는 것을 반복구조라고 한다. 1. while 문 while 은 실행 전에 반복을 계속할 것인지 판단 이런 구조를 사전 판단 반복 구조 라고한다. print('1 부터 n 까지 정수의 합을 구합니다') n = int(input('n 값을 입력하세요 : ')) sum = 0 i = 1 while i b: a, b = b, a # --> 특정 조건을 가지고 값을 정렬한다 sum = 0 for i in range(a, b+1): sum += i print(f'{a}부터 {b} 까지 정수의 합은 {sum} 입니다') 3-1. 두 값 교환하기 a와 b를 교환할 때 사용한 단일 대입문 a, b = b, a 의 방법이 1차적으로 존재한다. a, b = b, a

반응형