Python] Python 활용 분야


Python] Python 활용 분야

실무개발자를위한 실무교육 전문교육센터학원
www.oraclejava.co.kr에 오시면 보다 다양한 강좌를 보실 수 있습니다.
 



Python 활용 분야


* Python 활용 분야
  » 시스템 유틸리티 제작
  » GUI 프로그래밍
  » C/C++와 결합
  » 웹 프로그래밍
  » 수치 연산 프로그래밍
    - C로 작성된 수치 연산 모듈 지원
  » 데이터베이스 프로그래밍
  » 데이터 분석, 사물 인터넷

* Python 활용 제한 분야
  » 시스템과 밀접한 프로그래밍 영역
   - 빠른 속도를 요구하거나 하드웨어 접근 프로그래밍
  » 모바일 프로그래밍 

Python] Python?


Python] Python?



실무개발자를위한 실무교육 전문교육센터학원
www.oraclejava.co.kr에 오시면 보다 다양한 강좌를 보실 수 있습니다.


Python?


* 네덜란드의 National Research Institute for Mathematics and Computer  Science에서 Guido van Rossum 이 1980년대 후반부터 1990년대 초반에 개발한  언어
  » 파이썬 3.x는 2008년에 출시됨
  » 파이썬 2.7과 3.x는 호환성이 보장되지 않음

* GNU General Public License (GPL) 정책 채택

* 주요 특징
  » 런타임에 소스코드를 바로 실행하는 인터프리터 언어
  » 대화형 프로그래밍 지원
  » 객체 안에 코드를 캡슐화하는 객체지향 스타일 프로그래밍 지원
  » 간단한 텍스트 처리, 웹, 게임 등 다양한 분야의 애플리케이션 개발 지원

 

빅데이터 하둡 프로그래밍 교육과정] Spark

 

빅데이터 하둡 프로그래밍 교육과정] Spark

 

 

 

실무개발자를위한 실무교육 전문교육센터학원
www.oraclejava.co.kr에 오시면 보다 다양한 강좌를 보실 수 있습니다.


Spark

* 성능


* Fast


* Spark stack


* Interface
 - Scala
   : 매우 간결한 표현이 가능한 언어
   : REPL(aka Shell) 제공, interactive하게 데이터를 다루는 것이 가능
   : Functional Programming이 가능하므로 MapReduce와 같은functional한 개  념을 표현하기에 적합함

* 확장 프로젝트
 - Spark SQL
 - Spark Streaming
 - MLLib
 - GraphX
 - SparkR
 - Zeppelin
 - 등 …

* 장점
 - 시간과 비용을 아껴준다
 - 수십대의 Hadoop Cluster를 10대 이하의 Cluster로 대체할  수 있다
 - 수십분 기다려야 하던 작업이 1분만에 완료된다
 - 작업 능률 향상
 - MR 작업 코드 만들고, 패키징하고, submit하고 하던 복잡한  과정이,shell에서 코드 한줄 치는것으로 대체된다
 - 처음 접하는 사람도 배우기 쉽다
 - 다양한 제품을 조합해야 했던 작업이 Spark으로 다 가능하다 









 

 

 

 

 

 

 

빅데이터 하둡 프로그래밍 교육과정] RDD

 

빅데이터 하둡 프로그래밍 교육과정] RDD

 

 

실무개발자를위한 실무교육 전문교육센터학원
www.oraclejava.co.kr에 오시면 보다 다양한 강좌를 보실 수 있습니다.



RDD
Resilient Distributed Dataset
탄력적으로 분산된 데이터셋
클러스터에 분산된 메모리를 활용하여 계산되는 List
데이터를 어떻게 구해낼지를 표현하는 Transformation 을 기술한  Lineage(계보)를 interactive하게 만들어 낸 후, Action을 통해 lazy하게 값을  구해냄
클러스터 중 일부의 고장 등으로 작업이 중간에 실패하더라도, Lineage를 통  해 데이터를 복구

빅데이터 하둡 프로그래밍 교육과정] MapReduce / Hive

 

빅데이터 하둡 프로그래밍 교육과정] MapReduce / Hive

 

실무개발자를위한 실무교육 전문교육센터학원
www.oraclejava.co.kr에 오시면 보다 다양한 강좌를 보실 수 있습니다.


MapReduce / Hive

 * MapReduce / Hive 장단점
  - 장점
  : 빅데이터 시대를 열어준 선구적인 기술
  : 거대한 데이터를 안정적으로 처리
  : 많은 사람들이 사용 중
 - 단점
  : 오래된 기술이다 보니, 발전이 느리다
  : 불편한점이 많다

* MapReduce의 문제점
  - MapReduce는 Map의 입출력 및 Reduce의 입출력을  매번 HDFS에 쓰고, 읽는다
  - MapReduce코드는 작성하기 불편하다 

빅데이터 하둡 프로그래밍 교육과정] 빅데이터분석의 시초

 

빅데이터 하둡 프로그래밍 교육과정] 빅데이터분석의 시초

 

 

실무개발자를위한 실무교육 전문교육센터학원
www.oraclejava.co.kr에 오시면 보다 다양한 강좌를 보실 수 있습니다.


빅데이터분석의 시초

 - GFS(Google File System) 논문 (2003)
  : 여러 컴퓨터를 연결하여 저장용량과 I/O성능을 scale
  : 이를 구현한 오픈소스 프로젝트인 Hadoop HDFS

 - MapReduce논문 (2004)
  : Map과 Reduce연산을 조합하여 클러스터에서 실행, 큰  테이터를 처리
​  : 이를 구현한 오픈소스 프로젝트인 Hadoop MapReduce

 - Hive
  : MapReduce 코드를 짜는건 괴롭다
  : 쿼리로 MapReduce의 거의 모든 기능을 표현할 수 있다!
  : HDFS등에 있는 파일을 읽어들여 쿼리로 분석 수행
  : HiveQL 을 작성하면 MapReduce 코드로 변환되어 실행


빅데이터 하둡 프로그래밍 교육과정] sqoop

 

빅데이터 하둡 프로그래밍 교육과정] sqoop

 

실무개발자를위한 실무교육 전문교육센터학원
www.oraclejava.co.kr에 오시면 보다 다양한 강좌를 보실 수 있습니다.



sqoop

 - Sql to Hadoop
 - RDBMS로 부터 수집/저장
    : 별도의 로그 수집 시스템 및 데이터 저장소가 마련되  지 않아 Oracle, MySQL 등의 RDBMS에 로그를 저장  하는 경우.
    : 로그 뿐 아니라, 메타성 데이터는 대부분 RDBMS에  저장되어 있는데, 이 RDBMS의 메타 데이터를  Hadoop, Hive 등으로 옮겨야 하는 경우
    : 분산 환경의 Hadoop, Hive 등에서 분석된 결과를 API  형태가 아닌 원격의 RDBMS로 전송할 경우

 - Sqoop 1 / Sqoop 2


 - import


 - Export 





 

 

 

 

빅데이터 하둡 프로그래밍 교육과정] Flume 활용

 

빅데이터 하둡 프로그래밍 교육과정] Flume 활용

 

 

실무개발자를위한 실무교육 전문교육센터학원

www.oraclejava.co.kr에 오시면 보다 다양한 강좌를 보실 수 있습니다.



Flume 활용


하둡 클러스터 내 노드들의 로그 수집
웹 서버, 메일 서버 같은 기존 시스템들의 로그 수집
광고 네트워크 애플리케이션들의 노출 정보 수집
시스템들의 성능 정보 수집
기본적인 온라인 스트리밍 분석
 

+ Recent posts