2023/07 9

뉴올리언스 여행 /뉴올리언스 Q&C 호텔

2022년 10월에 뉴올리언스를 Coalesce2022를 참가하기 위해서 출장으로 다녀왔다. 10월 14일에 입국해서 10월 22일에 출국하는 일정으로 주말이 3일 정도 있어서 틈틈히 여행을 했다. 다녀온 것을 잊기 전에 블로그에 포스팅할 예정이다. Let's go! 아침 9시 20분 비행기여서 늦을 것 같아서 밤새려고 밤 10시에 공항을 갔다. 도착해서 밥 먹고 공항코딩을 했다. 이상하게 공항에서 코딩하면 집중이 잘 되고 재밌다.. 그냥 공항가고 싶어서 그런건가.. 갈 것 같지 않은 새벽이 지나고 피곤한 몸을 이끌고 비행기 타러 갔다. 비행기는 대한항공을 타고 Atlanta에서 환승해서 루이 암스트롱 뉴올리언스 국제공항에 도착했다. 비행기에서 스토브리그를 봤는데 꽤 재밌게 봤다 ㅎㅎ 생각보다 몇시간 안..

Traveling/미국 2023.07.23

Jordan

소개 안녕하세요. 스타트업에서 개발하고 있는 평범한 개발자입니다. 대학 졸업 후 LG에서 회로설계로 커리어를 시작한 후 소프트웨어 엔지니어로 전향했습니다. 전향 후에는 Ateamvenutres, Sendbird, Chai, Quotabook등 다양한 크고 작은 스타트업에서 서버엔지니어, 데이터 인프라 엔지니어, 데이터 엔지니어로 일했습니다. 다양한 직무를 경험하면서 분야에 경계 없이 비즈니스 및 기술 문제를 해결하고 있습니다. 시간을 내서 종종 오픈소스에도 기여하려고 노력 중입니다. 최근에는 좋은 데이터 플랫폼을 만드는 데 관심이 많습니다. 블로그에는 제가 공부한 내용과 저의 일상이나 여행기가 주로 포스팅됩니다. 블로그에 붙어있는 광고는 받게 되면 곧장기부라는 서비스를 이용해서 $100이 쌓을 때마다 기..

About/Me 2023.07.23

Airflow KubernetesPodOperator 예제 코드 및 설명

KubernetesPodOperator는 Kuberntes cluster에서 Airflow가 실행중일 때 사용자가 원하는 docker image에서 task를 실행하는 task를 만드는 Operator입니다. Airflow는 여러 가지 서비스들을 Orchestration할 수 있다는 강점을 가지고 있습니다. 직접 데이터를 처리하는 서비스들을 여러 개 만들수도 있는데 이 때 각각의 서비스의 의존성이 다를 수 있는데 이 때 KubernetesPodOperator 를 사용하면 독립적인 컨테이너 환경에서 서비스를 실행할 수 있습니다. Install KubernetesPodOperator 를 위해 필요한 kubernetes provider 패키지 설치 pip install apache-airflow[cncf.ku..

차원 모델링이란 / Dimensional modeling

차원 모델링(Dimensional Modeling)은 매우 일반적인 데이터 모델링 기법으로, 데이터 웨어하우스에서 특히 널리 사용됩니다. 차원 모델링은 사업에 대한 이해를 도모하고, 데이터를 조직하고, 빠르게 정보를 검색하는 데 중점을 두고 설계됩니다. Dimension, Facts 테이블로 나눠서 모델링해서 조금 더 효율적이고 편하게 데이터를 분석이 가능해집니다. 1.차원(Dimensions) : 데이터의 특정 관점을 나타내며, 데이터를 분류하고 표시하는 데 사용됩니다. 예를 들어, 시간(날짜, 분기, 연도 등), 위치(도시, 국가 등), 제품(제품 ID, 제품 이름, 카테고리 등)과 같은 정보가 차원에 포함될 수 있습니다. 2.측정값(Facts): 관측된 사업적 성과를 나타내며, 일반적으로 수치적인 ..

파이썬 import time과 run time / 임포트 타임과 런타임 이해하기

파이썬에서 import time과 runtime은 코드가 실행되는 시점에 대한 개념입니다. import time은 파이썬 모듈이 import 될 때 실행되는 코드들을 의미하고, run time은 실제 해당 함수나 클래스가 호출됐을 때 실행되는 것을 의미합니다. 이 두 개념을 이해하는 것은 코드를 작성할 때 runtime에 결정되는 변수를 import time에 실행되는 코드에 포함하면 에러가 발생할 수 있는데 이를 이해하는데 도움이 되고, 마찬가지인 개념에서 circular import 문제를 이해하는데도 도움이 됩니다. import time (임포트 타임) import time에 실행되는 코드 임포트 타임(import time)은 해당 모듈을 임포트하는 동안에 실행되는 코드로, 주로 모듈 초기화 작업이..

초기 스타트업에서 Data Engineer는 어떤 일을 하나요?

이 글은 Medium 회사 블로그에 올린 글을 가져온 글 입니다! 안녕하세요. 저는 Verticah에서 Head of Data로 일하고 있는 Jordan입니다. 회사의 기술 블로그에 첫 번째 글로 초기 스타트업에서 데이터 엔지니어로 어떤 일을 하고 있는지를 소개해 보려고 합니다. 저희 팀은 현재 11명의 구성원으로 이루어진 Seed 투자를 받은 초기 스타트업으로 혁신 성장기업의 자금 조달 방식을 혁신하자는 비전 아래 Revenue Market이라는 미래의 매출을 판매할 수 있는 벤처 대출 플랫폼을 만들고 있습니다. Why an early-stage team needs a data guy 많은 회사들이 데이터 관련 직무를 회사가 어느 정도 성장한 후(A 시리즈 이후)에 채용합니다. 하지만, 데이터와 관련된..

Pandas DataFrame apply 성능 이슈 개선하기

Apply는 dataframe의 각 행이나 열에 User-defined function을 실행할 때 사용하는 흔한 옵션입니다. axis=1로 실행하게 되면 각 row에 대해서 연산을 수행하게 됩니다. 하지만, 데이터 사이즈가 큰 경우 메모리 접근 방식과 및 벡터화 되지 않은 연산으로 성능 문제가 발생하기 쉽습니다. 이 글에서는 성능 이슈가 발생하는 원인과 해결책을 간단하게 정리해봤습니다. apply 함수의 성능 이슈 원인 1. 메모리 접근 패턴 pandas DataFrame은 열(column)-기반의 데이터 저장 구조를 사용합니다. 따라서 열 단위로 데이터에 접근하는 것이 메모리에서 연속적이므로 빠릅니다. 그러나 apply를 사용하여 행(row) 단위로 함수를 적용할 때, 각 행의 데이터는 여러 열에서 ..

코타키나발루 키나발루 마운틴 등산

최근에 차박차박이라는 유투버의 린자니 등산 영상을 보고 예전에 코타키나발루의 키나발루 마운틴 등산을 다녀왔던 추억이 떠올랐다. 그리고 많이~~~ 늦었지만 그 여행을 정리해보고 싶다는 생각이 들어서 이 포스팅을 쓰고 있다. 때는 바야흐로... 2016년 8월.... 문제는 사진도 몇 장 남아있지 않다ㅠㅠ 사진이 다 어디로 갔을까... 당시에 이 사진을 보고 키나발루 마운틴에 가봐야 겠다고 생각을 했다. 그래서 갈 수 있는 방법을 찾아 보던 중에 관광객은 꼭 가이드와 함께 등반을 해야 한다고 해서 어메이징 보르네오 투어라는 회사를 통해 예약을 했다. 당시 가격으로 투어가격 : RM1980 (594,000원) / 1인 (솔로 트래커) 이었는데 무슨 돈이 있다고 신청했는지.... 기억에 남는건 새벽 3~4시에 ..

Pandas DataFrame 조인 및 병합 / pandas merge, join, concat,

Pandas는 Python에서 데이터 조작 및 분석을 위한 강력한 도구로, 특히 DataFrame 객체를 통해 테이블 형식의 데이터를 다루는 데 유용합니다. DataFrame을 조인하는 것은 데이터 분석 및 처리에서 핵심적인 작업 중 하나입니다. 이번 글에서는 Pandas의 DataFrame을 조인하는 다양한 방법과 그 활용법에 대해 정리해보려고 합니다. Concat 함수는 Pandas 라이브러리에서 제공되는 함수로, 여러 개의 DataFrame 또는 Series를 연결(concatenate)하는 데 사용됩니다. 주어진 axis에 따라 객체를 열 또는 인덱스를 기준으로 연결합니다. pd.concat( objs, axis=0, join="outer", ignore_index=False, keys=None,..

반응형