본문 바로가기
반응형

전체 글188

[3주차] Airflow 소개 Airflow는 파이썬으로 작성된 데이터 파이프라인 (ETL) 프레임워크 - Airbnb에서 시작한 아파치 오픈소스 프로젝트 - 가장 많이 사용되는 데이터 파이프라인 관리/작성 프레임웍 - 데이터 파이프라인 스케줄링 지원 - 정해진 시간에 ETL 실행 혹은 한 ETL의 실행이 끝나면 다음 ETL 실행 - 웹 UI를 제공하기도 함 - 데이터 파이프라인(ETL)을 쉽게 만들 수 있도록 해줌 - 다양한 데이터 소스와 데이터 웨어하우스를 쉽게 통합해주는 모듈 제공 https://airflow.apache.org/docs/ - 데이터 파이프라인 관리 관련 다양한 기능을 제공해줌: 특히 Backfill - Airflow에서는 데이터 파이프라인을 DAG(Directed Acyclic Graph)라고 부름 - 하나의 .. 2023. 6. 18.
[3주차] 데이터 파이프라인 정의와 종류 ETL: Extract, Transform and Load 크게보면 elt도 파이프라인이다 비슷한 말들로는 Data Pipeline, ETL, Data Workflow, DAG가 있다 ※ ETL: 데이터를 데이터 웨어하우스 외부에서 내부로 가져오는 프로세스 ※ ELT : 데이터 웨어하우스 내부 데이터를 조작해서 (보통은 좀더 추상화되고 요약된) 새로운 데이터를 만드는 프로세스 Data Lake vs. Data Warehouse의 차이 데이터 크기의 따라 구분할 수 있다 1. 데이터 레이크 (Data Lake) = 스토리지 - 크기가 크고 싸다 - 구조화 데이터 + 비구조화 데이터 - 보존 기한이 없는 모든 데이터를 원래 형태대로 보존하는 스토리지에 가까움 - 보통은 데이터 웨어하우스보다 몇배는 더 큰 스.. 2023. 6. 18.
[2주차] SQL JOIN & 고급문법 JOIN 기본 문법 SELECT A.*, B.* FROM raw_data.table1 A ____ JOIN raw_data.table2 B --(INNER, FULL, LEFT, RIGHT, CROSS) ON A.key1 = B.key1 and A.key2 = B.key2 default: inner join INNER JOIN - 양쪽 테이블에서 매치가 되는 레코드들만 리턴함 - 양쪽 테이블의 필드가 모두 채워진 상태로 리턴됨 FULL JOIN - 왼쪽 테이블과 오른쪽 테이블의 모든 레코드들을 리턴함 - 매칭되는 경우에만 양쪽 테이블들의 모든 필드들이 채워진 상태로 리턴됨 LEFT JOIN - 왼쪽 테이블(Base)의 모든 레코드들을 리턴함 2. 오른쪽 테이블의 필드는 왼쪽 레코드와 매칭되는 경우에만 채.. 2023. 6. 12.
[2주차] SQL 장단점 & 기본 문법 SQL 장점 - 빅데이터를 처리하기 좋다 -구조화된 데이터를 처리하는데 적합하다 -어떤 작업을 하는건지 파악하기쉽다 단점 -비구조화된 데이터 처리에는 좋지 않다 기억해야할 점 현업에서 깨끗한 데이터란 존재하지 않음 ●항상 데이터를 믿을 수 있는지 의심하기 ●실제로 레코드를 몇 개 살펴보는 것이 중요 데이터 일을 한다면 항상 데이터의 품질을 의심하고 체크 ● 중복된 레코드 체크 ● 최근 데이터의 존재 여부 체크 ● Primary key uniqueness가 지켜지는지 체크하기 ● 값이 비어있는 컬럼들이 있는지 테크 ● 위의 체크는 코딩의 단위 테스트로 만들어 쉽게 체크할 수 있다 기본 문법 다수의 SQL 문을 실행한다면 세미콜론으로 분리 필요 ex) SQL문1; SQL문2; SQL문3 주석 -- : 인라인.. 2023. 6. 12.
[프로그래머스] 파이썬 문제풀이 - 두 큐 합 같게 만들기 https://school.programmers.co.kr/learn/courses/30/lessons/118667# 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 내 풀이 1. 먼저 두 큐의 합이 홀수인 경우를 걸러준다 2. 두 큐의 합을 같게 만들기 위해서는 큰 큐에서 작은 큐로 하나씩 넘겨주는것이다. 3. 2번과정을 반복하면 두 큐의 합이 같아지는 순간이 온다 4. 두 큐의 합이 절대 같아질 수 없는 경우가 존재하는데 큐에서 숫자를 넘겨줄때마다 연산회수를 세고 기준점을 넘어가면 -1을 리턴한다 5. 기준점의 경우 두 큐의 길이의 합으로 설정하게 되면.. 2023. 6. 9.
AWS AWSOME DAY AWS 소개 클라우드란 무엇인가 기존의 온프레미스 환경에서는 데이터센터를 직접 구축하고 서버 스토리지 데이터베이스 애플리케이션 네트워크시스템을 소유하고 관리하였다 반면 클라우드는 인터넷을 통해서 it자원을 필요시에 사용하고 사용한만틈만 비용을 지불하고 사용하는 서비스이다 장점 민텁성: 온디맨드 셀프 서비스 탄력성: 빠른 규모 조정으로 수요에 대응 비용절감: 사용한 it에 대해서만 지불 전세계에 배포: 광범위한 네트워크 액세스 선행 비용을 가변비용으로 대체 클라우드 용어 클라우드 컴퓨팅 컴퓨팅 스토리지 애플리케이션 데이터베이스, 분석 및 기타 it 리소스를 종량제 과금 모델에 따라 엔터넷을 통해 어디서나 편리하게 온디맨드 방식으로 사용할수있도록 제공 클라우드 서비스 공급자 클라우드 컴퓨팅 서비스를 paas.. 2023. 6. 8.
[1주차]AWS가 제공하는 데이터 웨어하우스 Redshift에 대해 알아보자 Redshift에 대해 알아보자 - 최대 2PB까지 처리 - OLAP, 응답 시간은 1초 미만이 아니라 고객 대면서비스에서 사용하면 안됨 - 대용량 업데이트 지원 - redshift serverless 가변비용방식도 출시 - 모든 데이터웨어하우스는 데이터의 크기, 속도 때문에 모든 PRIMARY키를 보장하지 않는다 - Postgresql 8.x 호환 Redshift 요금제 2023. 6. 7.
[1주차] 데이터 엔지니어링, 데이터 웨어하우스란? 데이터 엔지니어링은 무엇인가 1. 데이터 웨어하우스 관리 2. 데이터 파이프라인(ETL=dag=data job) 관리 데이터 파이프라인 형식: batch vs realtime() ※ ETL(extract, transform, load)은 데이터웨어하우스 밖에 있는 데이터를 안으로 가져오는거 ※ ELT: 안에 있는걸 조합해서 새로운 데이터 만드는 것 데이터 엔지니어가 알아야 하는 기술 SQL: Hive, SQL, ... Programming Lanuage: Python, Scala, Java ETL/ELT Scheduler: Airflow, ... Cloud Computing: AWS Container Technology: K8S, Docker 데이터 웨어하우스란 무엇인가? 데이터 분석용 전용 데이터베이스.. 2023. 6. 7.
[1주차] 데이터 팀의 비전과 가치를 만들어내는 방법 데이터 팀의 비전과 가치를 만들어내는 방법 Data warehouse: 데이터 분석을 위한 데이터베이스 ETL: 파이프라인, 내외부 데이터를 수집해 적재 데이터 파이프라인이 많아지면 airflow를 통해 관리하게 된다. 이런 일들을 하는 사람이 데이터 엔지니어다. 데이터 팀의 가치 1. 의사결정을 데이터 기반으로 객관적, 과학적 2. 데이터 과학자들이 데이터 속에서 패턴을 찾아서 서비스 개선 , 사용자들의 경험을 개인화를 통해 서비스 개선, 운영비용감소 데이터 팀의 비전 에어비앤비의 비전: build leverage for the company through trustworthy data, 신뢰할수 있는 데이터를 가지고 회사의 부가가치를 만든다 데이터 팀이 할수있는것은 회사의 가치를 높여주는것이다. 기여.. 2023. 6. 6.
728x90