공부
-
[PostgreSQL] PERCENTILE_CONT 함수를 이용한 중앙값 계산공부/Database 2025. 5. 6. 22:53
업무를 하다 보면 여러 가지 값이 필요로 하는 상황이 생기게 됩니다. 그중에서 통계적으로 중앙값을 필요로 하는 부분이 있습니다.중앙값을 구할 때 다양한 방법이 있을 수 있지만 PostgreSQL을 사용하고 있다면 Percentile_cont라는 함수를 이용하는 방법을 말씀드리도록 하겠습니다.중앙값의 정의를 어떻게 하느냐에 따라 다를 거 같습니다.ex. A라는 배열에 정렬된 숫자가 있다고 가정하도록 하겠습니다.1. A[0] + A [A.length-1] / 2 = (최소 + 최대/2)2. 정렬된 숫자의 길이/2 = (A의 중간값)조건들이 있을 수 있지만 Percentile_cont는 위 조건과는 다르게 계산됩니다. Percentile_cont정렬된 값들 사이를 선형 보간(linear interpolat..
-
AWS Systems Manager - Parameter Store (with NestJs)공부/AWS 2025. 4. 23. 23:16
개발을 하면서 환경변수 관리를 어떻게 해야 할지 고민이 많이 될 것이라고 생각합니다. 저도 EC2에서 서버를 실행할 때 env 파일을 어떤 식으로 관리해야 할지 고민하였습니다. 파일을 직접 생성하여 관리하는 쪽으로 선택하였습니다. 이전에는 잘못된 방식이지만 깃에 직접 올렸던 적도 있었습니다. 다른 방식보다 AWS에서 실행 중인 서비스가 있으시다면 AWS Systems Manager를 사용해 보는 것을 추천드립니다. 제가 생각하는 환경변수 관리는 직접관리, AWS Systems Manager(=ssm), Secret Manager 가 존재합니다. 1. 직접관리는 기존에 했던 방식이며, 유실의 위험이 존재하고 관리가 한 곳이 아닌 다른 곳에서 된다는 점이 불편하게 느껴졌습니다.2. Secret Manage..
-
회사에서 일하는 방식 4 - 워크쓰루, 플래닝, 데일리 스크럼공부/agile 2025. 4. 6. 17:06
이전에 작성했던 회사에서 일하는 방식 3 스프린트에 포함된 워크쓰루와 플래닝을 말씀드리도록 하겠습니다.워크쓰루( Walkthrough )소프트웨어 개발 과정에서 산출물의 품질을 높이기 위해 진행하는 검토(리뷰) 활동입니다. - gpt일반적으로 워크쓰루는 애자일 하게 일하는 팀에서는 사용하지 않는 방식입니다.하지만 현재 제가 속한 팀에서는 워크쓰루를 진행하여 기획자가 전달한 문서를 리뷰하는 형식으로 진행하고 있습니다. 워크쓰루를 진행하게 된 이유- 기획 문서에 존재하지 않던 코너케이스- 스프린트 진행 중 기획문서의 수정- 기획 문서 수정으로 담당자들의 소통 오류 위의 3가지 문제 이외에도 여러 가지가 있었지만, 대표적으로 3가지가 존재하였습니다.스프린트를 같이 하는 팀은 실제 팀은 다르지만 목적 조직으로 ..
-
ECR에 이미지 업로드공부/AWS 2025. 3. 29. 19:44
EC2에서 실행하던 서버를 ECS로 바꾸는 과정에서 ECR에 이미지 업로드 과정을 작성하려고 합니다. ECR은 Elastic Container Registry의 약자입니다. ECR은 도커 허브와 같은 역할이라고 생각하시면 좋을 거 같습니다.1. ECR 생성 권한이 있는지 확인합니다.- 권한이 없는 경우 권한을 부여해야 합니다.- AmazonEC2ContainerRegistryFullAccess 권한을 부여합니다.- IAM에서 사용하시는 사용자의 권한을 부여해야 합니다.2. Private ECR 생성- 프라이빗 리포지토리 탭에서 우측 상단에 리포지토리 생성 클릭- 리포지토리 이름을 작성합니다.- 이미지 태그 변경 가능성, 암호화는 초기 지정된 값으로 유지합니다.- 리포지토리를 생성하면 지정한 이름으로 리포..
-
회사에서 일하는 방식 3 - 스프린트공부/agile 2025. 3. 21. 00:30
업무의 방식에는 여러 방식이 있다고 생각합니다. 워터폴, 애자일, 스크럼 등 이 있을 것이라고 생각합니다. (스크럼은 이후에 블로그에 기재하도록 하겠습니다.) 현재 회사에서는 스프린트 방식으로 업무를 하고 있습니다.스프린트 란?아틀라시안에서 설명하는 스프린트간략하게 말하면 스프린트는 프로젝트의 단위라고 보는 게 좋을 거 같습니다. 여기서 단위란 특정 기능이나 요구사항을 실행하는 기간이라고 보는 게 좋을 거 같습니다. 현재 제가 재직하고 있는 회사에서는 워터폴 방식에서 스프린트 방식으로 변화를 가져왔고, 스프린트는 애자일 방식으로 기능구현하려고 노력하고 있습니다.이는 단순 기능을 여러 개 구현하는 게 아닌 유저의 경험을 기반으로 수정, 개선 및 고도화하는 작업을 진행하다고 보면 좋을 거 같습니다. 스프린트..
-
NestJS + Bitbucket pipelines + EC2 + CodeDeploy (CI/CD) - 2공부/AWS 2025. 1. 20. 00:21
지난번에 작성했던 부분을 이어서 작성하도록 하겠습니다. 혹시라도 전 부분을 확인 안 하셨다면 읽으신 다음에 동일하게 진행 부탁드리겠습니다.https://baam.tistory.com/413 NestJS + Bitbucket pipelines + EC2 + CodeDeploy (CI/CD) - 1Nestjs로 CI/CD를 구축하면서 여러 가지를 시도해 보고 해결을 했던 부분을 기록하려고 합니다.제가 성공했던 방법은 총 2가지 입니다. 1. NestJS + Bitbucket Pipelines 만을 이용하여 CI/CD2. NestJS(PM2로 실행baam.tistory.com 1. Bitbucket Pipelines 작성image: node:18definitions: // 공통된 부분은 definitions..
-
Bitbucket Pipelines + EC2 + NestJS공부/AWS 2025. 1. 19. 23:30
작성하는 글은 codedeploy를 사용하지 않고 EC2에 바로 bitbucket pipelines가 배포할 수 있도록 하는 방법입니다.하지만, 이 방법은 그리 추천하지 않습니다. 이유는 .pem 키로 접속하는 것을 할 수 없도록 하기 때문입니다.초기설정Session Manager를 이용할 수 있도록 등록이 필요합니다. 제가 작성한 블로그 글을 통해서 등록하시기 바라겠습니다.( 링크 ) 1. Bitbucket에서 내 Repository에 Repository Settings를 선택 후 pipelines 탭에서 SSH Keys 선택- Generate keys를 클릭하여 키를 생성합니다. 2. 생성된 키를 Copy합니다. 3. 해당 키를 EC2에 등록합니다.(키를 등록하기 전에 기존에 있던 키를 복사해 두세요..
-
NestJS + Bitbucket pipelines + EC2 + CodeDeploy (CI/CD) - 1공부/AWS 2025. 1. 14. 00:36
Nestjs로 CI/CD를 구축하면서 여러 가지를 시도해 보고 해결을 했던 부분을 기록하려고 합니다.제가 성공했던 방법은 총 2가지 입니다. 1. NestJS + Bitbucket Pipelines 만을 이용하여 CI/CD2. NestJS(PM2로 실행) + Bitbucket Pipelines + S3 + CodeDeploy + EC2모두 가능하지만, 1번의 경우는 뭔가 아니라는 생각이 들었습니다.(그 이유는 추가적으로 설명드리도록 하겠습니다.)2가지 모두 이번 글에서 작성하도록 하겠습니다.다만, 개인적인 생각에 다른 분들이 작성한 글과 내용을 기반으로 했을 때, 2번이 더 안정적인 방법이라고 생각이 들었습니다.방법 1. NestJS(PM2로 실행) + Bitbucket Pipelines + S3 + C..