제이로그
close
프로필 배경
프로필 로고

제이로그

  • 분류 전체보기 (81)
    • 제이로그 (13)
      • 회고 (4)
      • 생각정리 (3)
      • 면접후기 (6)
    • 데이터 엔지니어링 (15)
      • 개념정리 (1)
      • Airflow (8)
      • Spark (0)
      • Kafka (3)
      • dbt (3)
    • 데이터 분석 (3)
      • Redash (2)
      • Grafana (0)
      • Superset (1)
    • AI (16)
      • 개념정리 (2)
      • Tools (0)
      • RAG (14)
    • MLOps (0)
      • MLflow (0)
    • DevOps (5)
      • Docker (2)
      • Kubernetes (3)
    • Google Cloud (4)
      • BigQuery (3)
      • Cloud Storage (1)
    • 프로그래밍 (11)
      • 개발 환경 (4)
      • Python (3)
      • FastAPI (4)
    • 인프라 (3)
      • 리눅스 (3)
    • 데이터베이스 (3)
      • PostgreSQL (3)
    • 버전관리 (2)
      • Github (2)
    • 협업툴 (2)
      • Slack (1)
      • Notion (1)
    • 알고리즘 (3)
      • 개념정리 (0)
      • 백준 (0)
      • 프로그래머스 (3)
    • 블로그 (1)
  • 홈
  • 방명록
  • 태그
  • Github
  • Linkedin

BigQuery 스토리지 청구 모델 이해하기 (PHYSICAL vs LOGICAL)

빅쿼리를 장기적으로 운영하다보면 많은 데이터가 쌓이고 결국 비용 최적화를 진행하게 된다.이 때, 두 가지 관점에서 비용 최적화를 진행할 수 있다. 빅쿼리 비용 최적화 비교쿼리 관점 비용 최적화첫 번째는 쿼리 관점에서 비용 최적화를 진행할 수 있다.빅쿼리는 컬럼 기반 스토리지를 사용하기 때문에 컬럼의 수에 따라서 비용이 달라진다. 불필요한 컬럼은 제거하고 필요한 컬럼만 가져와서 사용하도록 최적화를 진행해준다. 그리고 파티셔닝과 클러스터링을 통해 데이터를 조회하는 비용을 줄이게 된다. 아래의 이미지를 통해서 더 쉽게 이해할 수 있다. 스토리지 관점 비용 최적화두 번째는 스토리지 관점에서 비용 최적화를 진행할 수 있다.빅쿼리에서 데이터 세트를 생성할 때 고급 옵션을 보면 스토리지 청구 모델을 설정할 수 있다...

  • format_list_bulleted Google Cloud/BigQuery
  • · 2026. 4. 17.
  • textsms

데이터 엔지니어링에서 AI 를 어떻게 활용해야할까

요즘 정말 개발에 대한 내용을 보면 바이브 코딩이며, 코딩 에이전트만 있으면 개발은 아무나 다 할 수 있다는 글이 정말 많이 보인다. 확실히 구글링하던 예전과는 다르게 AI 에게 질문하거나 코드에 대해서 물어보고 개선해달라고 하면 너무 잘해주기 때문에 편한 건 사실이다. 나는 데이터 엔지니어 직무로 일을 하고 있기 때문에 다양한 분야에서 AI 를 활용하고 있는 추세에 그럼 데이터 엔지니어링에서는 어떻게 AI 를 활용하면 좋을까... 내 업무에 있어서 어떤 부분을 더 편하게 만들 수 있을까? 에 대한 고민을 자주하게 되는 것 같다. 내가 하는 업무를 보면 데이터 구조를 설계하고 파이프라인을 설계하고 구축하고 유지보수하고 그리고 여러 데이터 정합성 검증이나 쿼리 최적화 등을 하고 있는 것 같다. 여기서 누군..

  • format_list_bulleted 제이로그/생각정리
  • · 2026. 3. 30.
  • textsms

Airflow ExternalTaskSensor 사용할 때 유의할 점

Airflow 에서 특정 DAG 가 정상적으로 종료되었는지 아니면 실패했는지를 확인하기 위해서 ExternalTaskSensor 를 사용하곤 한다.하지만, ExternalTaskSensor 를 사용하다가 내가 지정한 DAG 를 감지하지 못하고 그냥 종료되어버리는 경우가 발생했다. 센서가 왜 DAG 를 감지하지 못했는지 확인해보았는데 내가 지정한 DAG 를 감지하기 위해서는 DAG 가 실행되는 정확한 스케줄 시간을 지정해주어야 한다. 예를 들어, 오전 9시에 실행되는 DAG 라고 하면 오전 9시에 실행되는 DAG 라고 해주어야 정확하게 센서가 감지하고 작업을 수행하게 된다. 이렇게 설명만 하면 이해하기 어렵기 때문에 직업 DAG 를 만들어서 확인해보았다. 센서에 연결하기 위한 DAG먼저, 정말 단순한 Ta..

  • format_list_bulleted 데이터 엔지니어링/Airflow
  • · 2026. 3. 30.
  • textsms

Google Cloud Storage 라이브러리 3.0 이후 업데이트 이슈

원인 분석google cloud storage 라이브러리를 사용하다가 버전을 업데이트했는데 업로드하는 과정에서 문제가 발생했다.TypeError: a bytes-like object is required, not 'str' 보는 것과 같이 타입 에러가 발생했는데 String 타입이 아니라 bytes-like object 를 요구하고 있다. 그래서 왜 그런지 확인해보니 기존에는 google-cloud-storage 라이브러리 버전을 2.19를 사용하고 있었는데 3.9로 업데이트 되었고버전이 업데이트 되면서 google-cloud-storage 에서 checksum 이 None 에서 auto 로 변경이 되었다고 한다. 아래의 문서를 참고하면 좋을 것 같다.https://pypi.org/project/goog..

  • format_list_bulleted Google Cloud/Cloud Storage
  • · 2026. 2. 14.
  • textsms

Airflow 3 버전 SQLAlchemy 2.0 호환성 이슈

에러 내용Airflow 를 빌드하는데 다음과 같이 에러가 발생했다.TypeError: Invalid argument(s) 'executemany_values_page_size','encoding' sent to create_engine(), using configuration PGDialect_psycopg2/QueuePool/Engine. Please check that the keyword arguments are appropriate for this combination of components. 원인 분석이 에러가 발생한 원인에 대해서 찾아보니 다음과 같았다. Airflow 3 버전과 sqlalchemy 2.0 사이의 호환성 문제라고 한다.호환성 문제가 발생하는 이유는 제거된 파라미터를 사용해서..

  • format_list_bulleted 데이터 엔지니어링/Airflow
  • · 2026. 2. 2.
  • textsms

Notion 버튼을 누르면 버튼을 클릭한 사람이 지정되도록 만들기

노션에서 버튼을 누르면 버튼을 클릭한 사람이 자동으로 맨션이 되면서 블럭을 생성하는 방법이다.매우 간단하기 때문에 노션을 통해 업무 보고를 구분해서 적는다거나 회의록을 적는다거나 아니면 주기적으로 팀원마다 무언가를 작성해야할 때 사용하면 좋다. 1. 버튼 만들기/ 를 통해 버튼을 검색하면 아래와 같이 버튼을 만들 수 있다.버튼을 만들게 되면 버튼을 클릭할 때 어떤 작업을 할지 설정할 수 있다.2. 버튼 안에 작업 만들기다음으로 버튼 안에 작업을 만들어주어야 하는데 먼저 아이콘과 새 버튼이라고 되어있는 곳은 버튼에 표시되는 내용이라 "작성하기" 라고 간단하게 적어주었다. 그리고 버튼을 클릭했을 때 어떤 동작을 할지 골라야 하는데 + 새 작업 버튼을 누르게 되면 여러 작업이 나오게 된다.나는 여기에서 블록 ..

  • format_list_bulleted 협업툴/Notion
  • · 2026. 1. 30.
  • textsms

Airflow 3 버전 API 변경사항 알아보기

Airflow 2버전에서 3버전으로 마이그레이션을 진행해서 사용하고 있는데 사용하고 있던 API 가 되지 않았다.그래서 찾아보니 Airflow 가 3버전으로 버전이 업그레이드 되면서 API 를 호출하는 방식이 변경되었다고 한다. 그래서 어떻게 변경되었고 어떻게 사용해야하는지 확인해봤다. API 인증 방식 변경기존 Airflow 2 버전에서는 FAB 인증 방식을 사용했었는데 Airflow 3 버전에서는 JWT(Json Web Token) 기반 인증으로 변경되었다.Airflow 2 버전 API 인증 방식Airflow 2 버전에서는 FAB 인증방식을 통해 API 인증을 진행한다. FAB 인증 방식에 대해서 더 찾아보았는데 Flask-AppBuilder 가 제공하는 보안 및 사용자 관리 시스템을 Airflow ..

  • format_list_bulleted 데이터 엔지니어링/Airflow
  • · 2026. 1. 30.
  • textsms

Chain-of-Thought(CoT) 프롬프트 이해하기

어떻게 질문해야 LLM 이 더 잘 이해하고 내가 원하는 답변을 만들어줄까? 라는 고민을 하면서 프롬프트를 어떻게 작성할까? 하는 질문을 하게 된다. 프롬프트를 입력해 LLM 에게 전달해 답변을 생성하게 되는데 이 프롬프트를 어떻게 작성하느냐에 따라서 답변의 질이 달라진다고 할 수 있다. 그래서 프롬프트 기법의 하나인 CoT(Chain-of-Thought) 에 대해서 이해하고 정리해보려고 한다. 참고로 아래의 문서를 보면 여러 프롬프트 기법에 대해서 잘 설명이 되어있어 참고하면 좋을 것 같다. Chain-of-Thought Prompting – NextraA Comprehensive Overview of Prompt Engineeringwww.promptingguide.ai CoT (Chain-of-Th..

  • format_list_bulleted AI/개념정리
  • · 2026. 1. 21.
  • textsms

LangChain 에서의 Agent 와 Chain 의 개념 이해하기

LangChain 을 사용해서 LLM Agent 를 개발하면서 Agent 와 Chain 의 개념에 대해서 제대로 정확하게 알고 있지 않은 것 같다는 생각이 들었다. Agent 는 자율적으로 스스로 선택해서 동작하는 것으로 알고 있었고 Chain 은 LLM 과 프롬프트 그리고 출력을 하나로 묶는 것을 Chain 으로 알고 있었는데 내가 제대로 알고 있는 게 맞는 건지 다시 정리해보려고 한다. 체인 (Chain)먼저 체인에 대해서 알아보려고 한다. 체인에 대한 정의는 다음과 같이 하고 있다. 미리 정의된 순서로 여러 단계를 연결한 하나의 파이프라인 이렇게만 보면 결국에는 프롬프트를 입력받아 LLM 에게 보내고 LLM 으로부터 생성된 결과를 연결하는 것을 하나의 체인으로 봐도 될 것 같다. 예를 들어, 블로그..

  • format_list_bulleted AI/개념정리
  • · 2026. 1. 17.
  • textsms

Python UV 설치해서 사용해보기

지금까지 나는 conda 또는 venv 를 사용해서 파이썬 가상환경을 생성하고 그 안에 프로젝트별로 패키지를 설치해서 사용하고 있었다. 그러던 와중에 uv 라는 것을 알게 되어 사용해보려고 한다. homebrew 사용해서 UV 설치하기먼저 homebrew 를 사용해서 uv 를 설치한다.$ brew install uv✔︎ JSON API cask.jws.json ..

  • format_list_bulleted 프로그래밍/Python
  • · 2026. 1. 12.
  • textsms
  • navigate_before
  • 1
  • 2
  • 3
  • 4
  • ···
  • 9
  • navigate_next
전체 카테고리
  • 분류 전체보기 (81)
    • 제이로그 (13)
      • 회고 (4)
      • 생각정리 (3)
      • 면접후기 (6)
    • 데이터 엔지니어링 (15)
      • 개념정리 (1)
      • Airflow (8)
      • Spark (0)
      • Kafka (3)
      • dbt (3)
    • 데이터 분석 (3)
      • Redash (2)
      • Grafana (0)
      • Superset (1)
    • AI (16)
      • 개념정리 (2)
      • Tools (0)
      • RAG (14)
    • MLOps (0)
      • MLflow (0)
    • DevOps (5)
      • Docker (2)
      • Kubernetes (3)
    • Google Cloud (4)
      • BigQuery (3)
      • Cloud Storage (1)
    • 프로그래밍 (11)
      • 개발 환경 (4)
      • Python (3)
      • FastAPI (4)
    • 인프라 (3)
      • 리눅스 (3)
    • 데이터베이스 (3)
      • PostgreSQL (3)
    • 버전관리 (2)
      • Github (2)
    • 협업툴 (2)
      • Slack (1)
      • Notion (1)
    • 알고리즘 (3)
      • 개념정리 (0)
      • 백준 (0)
      • 프로그래머스 (3)
    • 블로그 (1)
공지사항
최근 글
인기 글
최근 댓글
전체 방문자
오늘
어제
전체
Copyright © 쭈미로운 생활 All rights reserved.
Designed by JJuum

티스토리툴바