Immersion In Data

전체 글 199

AWS기반 데이터 분석 파이프라인 구축[3]

실습과정S3에 저장된 데이터를 크롤러의 도움을 받아 글루 데이터 카탈로그에 등록  Amazon Glue : 원본 데이터에서 크롤러를 정의하여 테이블 형태로 AWS Glue data catalog를 채운다. (데이터 카탈로그 : S3의 데이터를 테이블처럼 만드는 것을 카탈로그를 만든다고 함. 데이터를 글루 데이터 카탈로그에 등록시켜 놓으면 AWS의 다른 분석 서비스에서 활용할 수 있음)Amazon Athena : AWS 대화형 쿼리 서비스  1. IAM 역할 생성AWS Glue 서비스를 사용하기 전 IAM 콘솔로 이동하여 권한을 정의함.     역할 만들기 - AWS서비스, Glue 서비스 선택AmazonS3FullAccess 권한 부여AWSGlueServiceRole : Glue 관련 접근 권한역할 이름..

AWS 2022.10.04

AWS기반 데이터 분석 파이프라인 구축[2]

전제조건 AWS 계정에서 AdminstratorAccess에 대한 액세스 권한이 있어야 한다.us-east-1 리전에서 실행되어야 한다. 가이드의 링크에 따라 새 탭에서 여는 것이 가장 좋다. 최신 브라우저에서 실습을 진행한다.  실습과정Raw 데이터 추출, 변환, 적재 Amazon Kinesis Data Firehose : 스트리밍 데이터를 안정적으로 캡처하고, 변환하여 데이터 레이크에 전달하는 추출, 변환, 로드 서비스 (스트리밍 데이터 : 고객, 애플리케이션, 시스템에서 실시간으로 생성되는 데이터)Amazon S3 : 클라우드 객체 스토리지 서비스 1. S3 버킷 생성데이터를 적재하기 위한 저장소를 만들어 주기 위해 S3 버킷을 생성한다.   data폴더 안에 raw라는 폴더 추가 생성   버킷 :..

AWS 2022.09.30

AWS기반 데이터 분석 파이프라인 구축[1]

AWS기반 데이터 분석 파이프라인을 구축해보자. https://catalog.us-east-1.prod.workshops.aws/workshops/44c91c21-a6a4-4b56-bd95-56bd443aa449/ko-KR Workshop Studiocatalog.us-east-1.prod.workshops.awsAnalytics on AWS workshop Process사용 서비스 설명Amazon Kinesis : 스트리밍 데이터(실시간 데이터) 수집, 처리 서비스Amazon S3 : 클라우드 스토리지 서비스AWS Glue : 서버리스 데이터 통합 서비스Amazon Athena : S3에 저장된 데이터를 분석할 수 있는 대화식 쿼리 서비스Amazon EMR : 대규모 분산 데이터 처리 작업 클라우드 빅..

AWS 2022.09.30

VirtualBox에 Ubuntu Linux 설치

1. VirtualBox 설치 https://www.virtualbox.org/ Oracle VM VirtualBox Welcome to VirtualBox.org! News Flash New September 2nd, 2022VirtualBox 6.1.38 released! Oracle today released a 6.1 maintenance release which improves stability and fixes regressions. See the Changelog for details. Important August 30th, 2022We're hiring! www.virtualbox.org 1) 위 링크로 들어가면 아래 화면이 나오게 된다. 해당하는 운영체제에 맞게 설치파일을 다운 받아 설..

Linux 2022.09.23

맵리듀스(MapReduce)

맵리듀스(MapReduce) 대용량 데이터 처리를 위한 분산 프로그래밍 모델 맵리듀스 프레임워크를 이용하면 대규모 분산 컴퓨팅 환경에서 대량의 데이터를 병렬로 분석 가능하다. 프로그래머가 직접 작성하는 맵과 리듀스라는 두 개의 메소드로 구성된다. 흩어져 있는 데이터를 수직화하여, 그 데이터를 각각의 종류별로 모으고(Map) → 필터링과 sorting을 거쳐 데이터를 뽑아내는(Reduce) 분산처리 기술과 관련 프레임워크를 의미한다. 맵(Map) 흩어져 있는 데이터를 연관성 있는 데이터들로 분류하는 작업(key, value의 형태) 리듀스(Reduce) Map에서 출력된 데이터에서 중복 데이터를 제거하고 원하는 데이터를 추출하는 작업 맵리듀스 잡(MapReduce Job) : Client 수행 작업 단위 ..

Hadoop 2022.09.21

하둡 분산형 파일 시스템(Hadoop Distributed File System, HDFS)

하둡 분산형 파일 시스템(Hadoop Distributed File System, HDFS) 하둡 네트워크에 연결된 기기에 데이터를 저장하는 분산형 파일 시스템 하둡 분산 파일 시스템은 하둡 프레임워크를 위해 자바 언어로 작성된 분산 확장 파일 시스템이다. HDFS는 여러 기계에 대용량 파일을 나눠서 저장한다. 데이터들을 여러 서버에 중복해서 저장하므로써 데이터 안정성을 얻는다. 특징 1. HDFS는 데이터를 저장하면, 다수의 노드에 복제 데이터도 함께 저장해서 데이터 유실을 방지 2. HDFS에 파일을 저장하거나, 저장된 파일을 조회하려면 스트리밍 방식으로 데이터에 접근 3. 한번 저장한 데이터는 수정할 수 없고, 읽기만 가능해서 데이터 무결성을 유지 4. 데이터 수정은 불가능하지만 파일 이동, 삭제,..

Hadoop 2022.09.21

하둡 에코시스템(Hadoop Ecosystem)

하둡 에코시스템(Hadoop Ecosystem) 하둡은 대용량 데이터를 분산 처리할 수 있는 자바 기반의 오픈소스 프레임워크이다. 간단한 프로그래밍 모델을 사용하여 여러대의 컴퓨터 클러스터에 대규모 데이터 세트를 분산 처리할 수 있게 해주는 프레임워크라고 할 수 있다. 일반적으로 HDFS와 MapReduce 프레임워크로 시작되었으나, 여러 데이터 저장, 실행 엔진, 프로그래밍 및 데이터 처리와 같은 하둡 생태계(Hadoop Ecosystem) 전반을 포함하는 의미로 확장되었다. 하둡 에코시스템은 그 프레임워크를 이루고 있는 다양한 서브 프로젝트들의 모임이다. - 하둡의 코어 프로젝트 : HDFS(분산 데이터 저장), MapReduce(분산 처리) - 하둡의 서브 프로젝트 : 나머지 프로젝트 → 워크플로우..

Hadoop 2022.09.21

CodeUp 100제 : #6001 ~ #6098

https://codeup.kr/problemsetsol.php 문제집 codeup.kr [기초-출력] / [기초-입출력] / [기초-값변환] #6001 [기초-출력] 출력하기 01 print("Hello") #6002 [기초-출력] 출력하기 02 print("Hello World") #6003 [기초-출력] 출력하기 03 print("Hello\nWorld") #6004 [기초-출력] 출력하기 04 print("'Hello'") #6005 [기초-출력] 출력하기 05 print('"Hello World"') #6006 [기초-출력] 출력하기 06 print("\"!@#$%^&*()'") #6007 [기초-출력] 출력하기 07 print("\"C:\\Download\\'hello'.py\"") #6008..

Python/CodeUp 2022.09.06

[AI] Association Mining

1. Association Mining 주어진 트랜잭션 집합으로부터, 어떤 아이템들이 나타날지를 다른 아이템들의 발생으로부터 예측하는 규칙을 찾는 작업이다. 위의 그림은 장바구니 분석의 예시인데, {Diaper} → {Beer}, {Milk, Bread} → {Eggs, Coke}, {Beer, Bread} → {Milk} 기저귀를 사는 사람이 맥주를 산다, 우유와 빵을 사는 사람이 계란과 콜라를 산다, 맥주와 빵을 사는 사람이 우유를 산다 처럼 분석하는 것이다. 1) 항목 집합(Itemset) - 한 개 이상의 항목(들)의 집합 ex. {Eggs}, {Milk, Bread, Diaper} - k-항목집합(k-itemset) : k개 항목을 가지는 항목 집합 2) 지지도 카운트(Support Count)..

AI 2022.09.01

[AI] Random Forest

1. Random Forest 의사결정나무(Decision Tree) 모델을 여러 개 훈련시켜 그 결과를 종합해 예측하는 앙상블(Ansible) 알고리즘이다. 각 의사결정나무 모델을 훈련시킬 때 배깅(Bagging) 방식을 사용한다. 배깅은 전체 Tranin dataset에서 중복을 허용해 샘플링한 Dataset으로 개별 의사결정나무 모델을 훈련하는 방식이다. 이렇게 여러 모델을 통해 예측한 값은 평균을 취하여 최정적인 예측 값을 산출한다. 이러한 배깅 방식은 예측 모델의 일반화 성능을 향상하는 데에 도움이 된다. - 랜덤 포레스트의 장점 1. 일반화 및 성능 우수 2. 파라미터 조정 용이 3. 데이터 scale 변환 불필요 4. Overfitting이 잘 되지 않음 - 랜덤 포레스트의 단점 1. 개별 ..

AI 2022.08.19