일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
- 취준
- 데이터베이스
- Service
- 관계형데이터베이스
- Django
- WEB
- airflow
- SQL
- 기술면접
- 데이터엔지니어링
- CS
- 프로그래머스
- DataWarehouse
- AWS
- 데이터엔지니어
- Amazon
- 운영체제
- 웹크롤링
- 웹스크래핑
- 클라우드
- 데이터웨어하우스
- 개발
- 파이썬
- 개념정리
- 알고리즘
- 에어플로우
- 웹자동화
- 자료구조
- 데브코스
- 부트캠프
- Today
- Total
목록개발 (60)
사진과 음악을 좋아하는 개발자 지망생의 블로그
flush() - 이 메서드를 호출하면 버퍼에 있는 모든 레코드가 즉시 전송 가능 상태가 되며(linger_ms가 0보다 크더라도), 이러한 레코드와 관련된 요청이 완료될 때까지 블로킹됨. - flush()는 이전에 전송된 레코드의 처리가 완료될 경우 실행된다(예: Future.is_done() == True). - 요청은 성공 여부와 상관 없이 Producer의 'acks' 구성에 따른 전송 결과가 반환되면 완료된 것으로 간주됨. - 한 스레드가 flush 호출이 완료될 때까지 블로킹되는 동안 다른 스레드는 메시지를 계속해서 전송할 수 있지만, flush 호출이 시작된 이후에 전송된 메시지의 완료에 대해서는 보장할 수 없음 매개변수: timeout (float, 선택 사항) – 완료를 기다리기 위해 제..
에러에 따른 시스템 동작에 의해 메세지가 한번에 하나씩 처리되지 않을수있으며, 유실될수도 있고 중복될수도있다. 그리고 에러상황은 다음과 같다 1. Producer failure - 생산자 장애는 생산자가 메시지를 전송하는 도중에 발생하는 상황을 의미함. - 예를 들어, 생산자가 네트워크 오류나 시스템 장애 등으로 인해 메시지를 정상적으로 전송하지 못하는 경우임. → 이러한 경우에는 메시지가 손실될 수 있으며, 장애가 복구되더라도 해당 메시지를 다시 전송해야 할 수 있음. 2. Consumer publish remote call failure - 소비자의 원격 호출 실패는 소비자가 원격 시스템에 대한 호출을 수행하는 중에 발생하는 오류를 의미함. - 예를 들어, 소비자가 데이터를 처리한 후 외부 시스템으로..
kafka란? - 다양한 데이터 소스에서 실시간으로 흐르는 데이터를 처리하는 오픈소스 분산 스트리밍 플랫폼(소프트웨어) - 규모 가변성(scalability)와 내결함성(Fault Tolerance)를 제공하는 Publish-Subscription 메시징 시스템(데이터 처리 시스템) - hight Throughput(많이)과 Low Latency(빨리) 실시간으로 데이터를 처리할 수 있도록 구현됨 - 서버(Broker) 추가를 통해 Scalability 달성 - 정해진 보유기한(retention period) 동안 메시지(데이터)를 저장 기존 메시징 시스템 및 데이터베이스와의 비교 - 기존 메시징 시스템과 달리, 카프카는 메시지 보유 기간 동안 저장(기본 보유 기간은 일주일) - 브로커를 통해 메시지를 ..
필요한 패키지 설치를 위한 dockerfile 작성 FROM ubuntu:latest # 필요한 패키지 설치 RUN apt-get update && apt-get install -y curl gnupg # Google Chrome 설치 RUN curl -sSL https://dl.google.com/linux/linux_signing_key.pub | apt-key add - RUN echo "deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main" >> /etc/apt/sources.list.d/google-chrome.list RUN apt-get update && apt-get install -y google-chrome-stable..
공공데이터 api 관련해서 프로젝트를 진행하던 중 궁금증이 생겼다 요청변수가 pageNo, numOfRows 인 공공데이터 api가 있다 pageNo는 가져올 page수이고, numOfRows 가져올 열(데이터)의 갯수이다. 예를들어, 내가 구직공고 데이터 100개를 가져오고 싶을때 pageNo = 1, numOfRows = 100 으로 가져올수도 있고, pageNo = 1 ~ 10, numOfRows = 10 으로 가져올수도 있다. 그리고, pageNo = 10, numOfRows = 10에 경우 모든 정보를 보려면 api 호출 시 pageNo를 1부터 10까지 바꿔서 호출해야한다. 즉, 10번 호출해야한다. 그런데, 공공데이터 api는 느리다. 따라서, 공공데이터 api를 통해 데이터를 가져오려면 최..
상황 docker-compose up -d를 실행한 후 airflow 로컬 UI에 들어갔으나 에러가 발생하여, 확인해보니 다음과 같은 에러가 발생하였다 [2023-06-20 06:52:51,575] {triggerer_job.py:348} ERROR - Triggerer's async thread was blocked for 0.52 seconds, likely by a badly-written trigger. Set PYTHONASYNCIODEBUG=1 to get more information on overrunning coroutines. Airflow에서 트리거 문제의 원인으로 여러가지(트리거의 작업 차단, 너무 많은 트리거, 콜백 실행 중 Airflow 작업자 비정상 종료, 트리거의 무한 루프,..
정확히는 다음과 같이 에러가 발생했 airflow-scheduler_1 | airflow-worker_1 | .................... airflow-worker_1 | ERROR! Maximum number of retries (20) reached. airflow-worker_1 | airflow-worker_1 | Last check result: airflow-worker_1 | $ airflow db check airflow-worker_1 | Unable to load the config, contains a configuration error. airflow-worker_1 | Traceback (most recent call last): airflow-worker_1 | File..

1. 데이터 파이프라인이란? 1) ETL vs ELT 1. ETL ETL은 데이터를 외부 소스에서 추출하고, 필요한 형식으로 변환한 후, 데이터 웨어하우스에 로드하는 과정을 말합니다. 데이터 웨어하우스 외부에서 데이터를 가져와서 변환한 후에 로드하는 방식으로 동작합니다. 데이터 파이프라인, ETL, 데이터 워크플로우, DAG(Directed Acyclic Graph) 등의 용어로 설명될 수 있습니다. 2. ELT ELT는 데이터 웨어하우스 내부에 데이터를 로드한 후, 데이터를 조작하여 새로운 데이터를 생성하는 프로세스를 의미합니다. ELT는 주로 데이터 분석가들이 수행하는 작업으로, 데이터 레이크(데이터 웨어하우스 이전 단계에서 데이터를 저장하는 곳) 위에서 이러한 작업들이 발생하기도 합니다. 데이터 웨..