본문 바로가기

728x90
반응형

전체 글

(98)
[Spark] chapter 2 스파크 간단히 살펴보기 Chapter 2. 스파크 간단히 살펴보기 스파크 기본 아키텍처 '컴퓨터' 라고 하면, 집이나 직장 책상 위에 놓인 장비 한대를 떠올림, 이 컴퓨터는 영화를 보거나 문서작업을 하기 아주 적합함. 한 대의 컴퓨터로 수행하기 힘든 작업이 존재, 특히 대용량 데이터(빅데이터)를 처리하는 경우 한 대의 컴퓨터는 대규모 정보를 연산할 만한 자원이나 성능을 갖지 못함, 연산이 가능하더라도 많은 시간이 소요 컴퓨터 클러스터는 여러 컴퓨터의 자원을 모아 하나의 컴퓨터처럼 사용할 수 있게 만듦. 클러스터 구성하는 것만으로는 부족, 작업을 조율할 수 있는 프레임워크가 필요(스파크) 스파크 어플리케이션 드라이버 프로세스와 익스큐터 프로세스로 구성 드라이버 프로세스(필수 프로세스) 클러스터 노드 중 하나에서 실행 main()..
[Spark] chapter 1 아파치 스파크란? Chapter 1. 아파치 스파크(Apache Spark)란? 가장 활발하게 개발되고 있는 병렬 처리 오픈소스 엔진, 통합 컴퓨팅 엔진이며 클러스터 환경에서 데이터를 병렬로 처리하는 라이브러리 집합 단일 노트북 환경에서부터 수 천대의 서버로 구성된 클러스터까지 다양한 환경에서 실행 가능 1.1 스파크 등장 배경 새로운 처리 엔진과 프로그래밍 모델이 필요한 이유? 컴퓨터 어플리케이션과 하드웨어의 바탕을 이루는 경제적 요인의 변화 프로세서의 성능 향상이 해마다 빨리지고 있으며, 어플리케이션은 코드를 수정하지 않아도 자연스럽게 빨라지고 있음. 대규모 어플리케이션은 이런 경향에 맞춰 만들어져, 대부분 단일 프로세서에서만 실행 되도록 설계 대규모 데이터 처리를 프로세서의 성능 향상에 맡겼던 것 하드웨어 성능의 성..
[Numpy] random -. seed : 랜덤값을 설정값 -. rand : 균등분포로 난수를 발생 -. randn : 정규분포로 난수를 발생 -. randint : 균등분포로 정수값을 발생 -. suffle : 행렬 데이터를 섞어 줌. -. choice : 특정 확률로 데이터를 선택 1. seed np.random.seed(1) result1 = np.random.randint(10, 100, 10) np.random.seed(1) result2 = np.random.randint(10, 100, 10) np.random.seed(2) result3 = np.random.randint(10, 100, 10) print(result1) print(result2) print(result3) ######################..
[Numpy] linspace, logspace 함수 linspace : 설정한 범위에서 선형적으로 분할한 위치의 값을 출력 logspace : 설정한 범위에서 로그로 분할한 위치의 값을 출력 print(np.linspace(0,100,5)) print() print(np.logspace(2,4,3)) ######################################### [ 0. 25. 50. 75. 100.] [ 100. 1000. 10000.] 예를 들어서, 30세에 연봉이 $100,000 이고, 60세에 $1,000,000 일때, 연봉이 선형으로 증가, 지수함수로 증가하는 두 경우에서의 40세, 50세 연봉을 출력하는 경우 아래와 같이 활용할 수 있다. age_30 = 100000 age_60 = 1000000 print(np.linspace(a..
[Numpy] 행렬 데이터의 결합 na1 = np.random.randint(10, size=(2,3)) na2 = np.random.randint(10, size=(3,2)) na3 = np.random.randint(10, size=(3,3)) print(na1) print() print(na2) print() print(na3) print() print(np.concatenate((na1, na3))) print() print(np.concatenate((na2, na3), axis=1)) print() print(np.c_[np.array([1,2,3]), np.array([4,5,6])]) print() print(np.r_[np.array([1,2,3]), np.array([4,5,6])]) [[9 6 5] [7 4 8]] [..
[Numpy] Numpy 행렬값 치환하기 [ 문 제 1 ] 1. 100 ~ 130 까지 랜덤한 숫자를 가지는 8*8 행렬을 만들고, 2. 3의 배수는 fiz, 5의 배수는 buz, 3과 5의 배수는 fbz 문자열로 치환 1. 100 ~ 130 까지 랜덤한 숫자를 가지는 8*8 행렬 만들기 import numpy as np # random.randint(low, high=None, size=None, dtype=int) datas = np.random.randint(100, 130, size=(8,8)) print(datas) [[108 125 103 100 102 103 108 110] [118 110 105 106 109 121 112 106] [101 123 127 127 123 129 107 118] [114 113 129 108 127 ..
[스마트팜] 클라우드 기반의 스마트팜 기술 얼마만큼 사용자가 관리하고 얼마만큼 클라우드에서 제공받는가에 따라 다음과 같이 네 가지로 나누어 볼 수 있다. Packaged Software : 그림에서 보이는 것과 같이 직접 인프라와 플랫폼, 어플리케이션까지 모두 구성하여 관리하는 모델을 의미합니다. IaaS : Infrastructure 레벨을 제공하는 서비스를 의미합니다. 위에 보이는 것과 같이 사용자는 OS를 직접 올리고 그 상위 계층만 구성하면 되는 모델입니다. è AWS EC2 PaaS : 개발자가 응용 프로그램을 작성할 수 있도록 플랫폼 및 환경을 제공하는 모델입니다. è 제공업체 : Google App Engine, IBM Bluemix, Openshift, SalesForce SaaS : 설치할 필요도 없이 클라우드를 통해 제공되는 S..
[Numpy] Numpy 개요 및 행렬 데이터 만들기 Numpy는 C로 구현된 파이썬 라이브러리로써, 고성능의 수치계산을 위해 제작되었다. Numerical Python의 줄임말이기도 한 Numpy는 벡터 및 행렬 연산에 있어서 매우 편리한 기능을 제공한다. 또한 이는 데이터분석을 할 때 사용되는 라이브러리인 pandas와 matplotlib의 기반으로 사용한다. (참고로, pandas는 numpy를 기반으로 만들어진 라이브러리라고 한다.) numpy에서는 기본적으로 array라는 단위로 데이터를 관리하며 이에 대해 연산을 수행한다. Numpy 데이터는 행열로 표현 행열 데이터 빠르게 계산을 해야함 행열 데이터 생성, 수정, 계산 등을 빠르게 처리해주는 패키지 특징 C, C++, 포트란로 작성 선형대수학을 빠르게 연산 스칼라, 벡터, 매트릭스 [ 목차 ] ..

728x90
반응형