Airflow MongoDB Provider의 replace_many
Airflow에서 MongoDB에 연결하기 위해 사용하는 MongoDB Provider에는 PyMongo에 없는 replace_many 함수가 있습니다. PyMongo에서 지원되는 관련 함수 목록은 아래와 같습니다.
Airflow에서 MongoDB에 연결하기 위해 사용하는 MongoDB Provider에는 PyMongo에 없는 replace_many 함수가 있습니다. PyMongo에서 지원되는 관련 함수 목록은 아래와 같습니다.
외부 데이터를 그대로 저장하다보니 timestamp를 string type 그대로 저장하는 경우가 발생했습니다. 이때 integer type으로 변경하지 않아도 아래와 같이 조회가 가능합니다.
Ingress를 적용할 때 path만 설정할 경우, 외부에서 서비스로 접근하는 URI와 내부에서 실제 서비스로 요청하는 URI가 달라지면서 오류가 발생하는 경우를 볼 수 있습니다. 여기서 아래와 같이 설정하면 위 두 URI를 일치시킬 수 있습니다.
DCGM-Exporter에서 기본적으로 제공되는 metric으로는 수집할 수 없는 항목들이 있습니다. (버전마다 metric 수집 항목의 차이가 있습니다.) 저는 2.4.0 버전을 사용중인데, DCGM_FI_DEV_GPU_UTIL(GPU utilization(%))과 DCGM_FI...
Deployment에 NodeSelector 혹은 NodeAffinity를 설정하면 Pod를 배포할 때 특정 Node에 할당시킬 수 있습니다. NodeSelector는 반드시 특정 노드에만 할당시킬 때, NodeAffinity는 조건에 따라 특정 노드에 할당시킬 때 사용됩니다. 아...
Kubernetes에서 사용중인 자원 사용량을 Lens를 사용하면 클릭만으로 쉽게 볼 수 있습니다. Lens는 Kubernetes 전용 관리도구로, 관리에 필요한 기능과 다양한 플러그인을 함께 지원합니다.
MLflow를 사용하다 반복되는 실험으로 S3에 artifact가 쌓이고있어 삭제 방법을 찾게 되었습니다. Tracking Server의 Web UI에서는 delete가 hide로 동작하기 때문에 S3에 쌓인 artifact와 PostgreSQL에 쌓인 metadata를 지우기 위...
Helm으로 설치한 Airflow에 MongoDB connection을 추가하려했는데 MongoDB는 없었습니다. 공식 문서(링크)를 찾아보면 pip로 추가하라고 되어있지만 Helm으로 설치한 Airflow에 추가하려면 image를 새로 build해야합니다. 아래는 그 과정과 Mo...
7월 19일 MongoDB 6.0 버전이 release 되었습니다. 기존엔 MongoDB가 설치되면 mongo로 테스트를 했었는데 6.0이 되면서부터 mongo 대신 mongosh를 사용해야해서 여기에 정리합니다.
```python import pandas as pd
모델 성능 실험 script를 작성하면서 코드의 특정 값을 반복적으로 치환해야할 경우가 생겼습니다. python을 사용하면 command line arguments로 주입할수도 있지만 여기서는 grep과 sed로 특정 값을 치환하는 방법을 설명하겠습니다.
모델 성능 실험을 하게되면서 반복적인 실험을 할 일이 많아졌습니다. 수동으로 하다보니 실수도 잦고 시간도 많이뺏겨 script를 작성하게 되었습니다.
딥러닝 성능을 올리기 위해서는 성능 재현 및 실험이 필수입니다. PyTorch는 다른 프레임워크에 비해 비교적 쉽게 seed 고정이 가능했습니다.
Kubernetes MLflow ingress 적용을 위해 일반적으로 나와있는 방법을 사용하면 UI는 사용 가능하지만 API 사용이 불가능합니다. API 호출 경로가 ingress path와 상관없이 서비스 상대경로로 적용되기 때문입니다. 따라서 서비스에서 ingress path를...