데브코스 TIL 152

End-to-end 데이터 파이프라인 구성하기

주제 구글 트렌드와 네이버 데이터랩을 이용하여 네이버 실시간 검색어 복원하기 구조 데이터 인프라 형성 구글 트렌드의 키워드 추출 네이버 데이터랩을 통해 검색어 순위 및 백분위 횟수 추출 이슈 구글 트렌드 공용 API 존재하지 않음 네이버 데이터랩 금일 데이터 존재하지 않음 키워드 입력 개수 5개 제한 네이버 데이터랩 ID, PASSWORD Variables 설정 전체 및 성별별 데이터 적재 프로젝트 코드 API RAW_CODE.py import os import sys import pandas as pd from pandas import Timestamp from datetime import datetime import urllib.request import json client_id = "id" cli..

데이터 카탈로그

강의 데이터 카탈로그 "데이터 카탈로그"는 데이터 자산을 효율적으로 관리하는 데이터 자산 메타 정보 중앙 저장 프레임워크 입니다. 반자동화된 메타 데이터 수집 데이터 보안 용이 데이터 오너 : Business 혹은 Technical 표준화된 문서 템플릿 데이터 자산 종류 테이블 대시보드 문서/메세지 (슬랙, JIRA, Github) ML 피쳐 데이터 파이프라인 사용자 (HR 시스템) 주요 기능 주요 데이터 플랫폼 지원 비지니스 용어집 주석/문서/태그 협업 기능 데이터 리니지 데이터 모니터링, 감사, 트레이싱 데이터 추천 기능 데이터 유저 퍼소나

데브코스 TIL 2024.01.05

dbt 기능

강의 Seeds "Seeds"는 다수의 Dimension 테이블을 파일 형태로 데이터웨어하우스에 로드하는 기능 입니다. dbt seed Sources "Sources"는 입력 데이터를 추상화하여 변경처리를 용이하게 하는 기능 입니다. 입력 테이블 별칭 지정 (alias) 최신 레코드 체크 기능 제공 (Freshness) vi sources.yml cd src dbt source freshness Snapshot "Snapshot"은 테이블의 변화를 지속적으로 기록하여 과거 시점으로 돌아가서 테이블을 확인할 수 있는 기능 입니다. Snapshot 처리 방법 snapshot 폴더 환경설정 데이터 소스 조건 만족 확인 : Primary Key 및 Timestamp 존재 여부 변경 감지 기준 설정 dbt sna..

dbt Model

강의 Model "Model"은 ELT 테이블의 기본이 되는 빌딩 블록 입니다. 테이블의 뷰나 CTE의 형태로 존재합니다. Input 입력(raw) 데이터 정의 : CTE 중간(staging, src) 데이터 정의 : View Output 최종(core) 데이터 정의 : Table # model 빌딩 dbt compile dbt run Materialization "Materialization"은 입력 데이터를 연결하여 새로운 데이터를 생성하는 것을 말합니다. Materialization 종류 View : 데이터를 자주 사용하지 않는 경우 Table : 데이터를 반복해서 자주 사용하는 경우 Incremental : Fact 테이블 혹은 과거 레코드를 수정할 필요가 없는 경우 Ephemeral (CTE) ..

dbt 소개 및 설치

강의 dbt "DBT"(Data Build Tool)은 ELT용 오픈소스 입니다. 데이터 웨어하우스 지원 : Redshift, Snowflake, Bigquery, Spark 클라우드 버전 존재 : dbt Cloud dbt 구성 컴포넌트 models 테이블을 티어로 관리 : CTAS, Lineage 트래킹 Table, View, CTE tests snapshots "Fact 테이블"은 분석의 초점이 되는 양적 정보를 포함하는 중앙 테이블 입니다. "Dimension 테이블"은 Fact 테이블에 대한 상세 정보를 제공하는 테이블 입니다. 사용 목적 데이터 변경 사항 이해 및 롤백 가능 데이터간 리니지 확인 가능 데이터 품질 테스트 및 에러 보고 Fact 테이블 증분 로드 (Incremental Update..