profile
Data Engineer
post-thumbnail

[Spring] GitHub Actions을 통한 CI/CD 자동화

EC2 + Docker Compose 기반 GitHub Actions CI/CD 자동배포 플로우 이번 프로젝트에서의 배포 자동화는 develop 브랜치에 PR 시 GitHub Actions가 Docker 이미지를 새로 빌드하고, Docker Hub에 push한 뒤,

1일 전
·
0개의 댓글
·
post-thumbnail

[Spring] 배포환경에서 소셜로그인 구현 (Kakao/Google/Naver)

배포 환경에서의 소셜 로그인 로컬에서는 localhost 기준으로 Redirect URI를 등록하면 소셜 로그인을 테스트할 수 있다. 하지만 실제 배포 환경 소셜로그인을 사용하기 위해서 각 플랫폼마다 요구하는 조건이 있다. 이번 프로젝트에서는 네이버, 카카오, 구글

2026년 4월 27일
·
0개의 댓글
·
post-thumbnail

[Spring] AWS S3 Presigned URL로 이미지 업로드 구현

뮤지션이 자신의 음악과 콘텐츠를 효과적으로 홍보할 수 있도록 돕는 팀 프로젝트를 진행 중이다.홍보 페이지에는 활동명, 곡 제목, 발매일, 스트리밍 링크, 소개 문구뿐 아니라 대표 이미지도 함께 노출되어야 했다.사용자가 직접 이미지를 업로드하고, 이를 안정적으로 저장한

2026년 4월 27일
·
0개의 댓글
·
post-thumbnail

[Kt x Goorm] 해커톤 후기

본 콘텐츠는 구름 서포터즈 활동으로 지원을 받아 작성된 교육생의 실제 경험 후기입니다. > KT x Goorm 백엔드 부트캠프 ☁️ 해커톤 참여 이번 4월 4일부터 4월 5일까지 강남 구름스퀘어에서 진행된 해커톤에 참여했다. 짧은 시간 안에 아이디어를 실제 서비스

2026년 4월 19일
·
0개의 댓글
·
post-thumbnail

[Spring] 카카오 API로 지도 구현하기

2차 팀 프로젝트에서 스크럼을 통해 지도를 추가하자고 했다.네이버는 유료여서 카카오 지도 API를 선택했고 그 과정을 적어보려 한다.국내 사용자 기준 접근성과 구현 효율이 가장 좋다고 판단했다.또한 공연장 위치를 직관적으로 제공하기에 적합했고 프론트엔드와 연동이 매우

2026년 4월 2일
·
0개의 댓글
·
post-thumbnail

[Spring] Toss Payments API로 결제 시스템 구현하기

✅ 개요 2차 팀 프로젝트에서 결제 기능 개발을 맡게 되었다. 스크럼을 통해 토스페이먼츠 api로 구현하기로 결정했고 그 과정을 적어보려 한다. [Toss Payments API 가이드 ](https://docs.tosspayments.com/guides/v2/pay

2026년 4월 1일
·
0개의 댓글
·
post-thumbnail

[KT x Goorm] 해커톤 준비

본 콘텐츠는 구름 서포터즈 활동으로 지원을 받아 작성된 교육생의 실제 경험 후기입니다. > KT x Goorm 백엔드 부트캠프 ☁️ 해커톤 참여 동기 먼저 이번 3월부터 프로젝트 시작이라 바쁜와중에 해커톤까지 병행하는 것에 참여에 대해 고민을 많이 했다. 아직 해커

2026년 3월 26일
·
0개의 댓글
·

🚨 긴급정리

🚨 SQL 긴급 정리 Undo Retention 트랜잭션이 완료된 후에 바로 Undo 데이터를 재사용하지 말아라고 오라클에게 힌트를 주는 것 슬롯 ITL -> 트랜잭션 ID, status, UBA(Undo Block Address), 커밋 SCN(트랜잭션 성공 시

2026년 3월 9일
·
0개의 댓글
·
post-thumbnail

[KT x Goorm] 팀스터디

본 컨텐츠는 구름 서포터즈 활동으로 지원을 받아 작성된 교육생의 실제 경험 후기입니다. >

2026년 2월 5일
·
0개의 댓글
·
post-thumbnail

SQL) 병렬 처리 Ⅲ

pq_distribute 힌트를 사용해 옵티마이저의 선택을 무시하고 사용자가 직접 조인을 위한 데이터 분배 방식을 결정할 수 있다.Parallel Query Distribution => 병렬 쿼리 분배라는 의미옵티마이저가 파티션된 테이블을 적절히 활용하지 못하고 동적

2026년 1월 21일
·
0개의 댓글
·
post-thumbnail

SQL) 병렬 처리 Ⅱ

2. 병렬 Order by와 Group by 1. 병렬 Order by order by를 병렬로 수행하려면 테이블 큐를 통한 데이터 재분배가 필요한데, 쿼리 수행이 완료된 직후에 같은 세션에서 v$pq_tqstat를 쿼리해 보면 테이블 큐를 통한 데이터 전송 통계를

2026년 1월 20일
·
0개의 댓글
·
post-thumbnail

SQL) 병렬 처리 Ⅰ

1. 병렬 처리 병렬 처리란, SQL 문이 수행해야 할 작업 범위를 여러 작은 단위로 나누어 여러 프로세스나 쓰레드가 동시에 처리하는 것을 말한다. 1. Query Coordinator과 병렬 서버 프로세스 QC (Query Coordinator) 는 병렬 SQL문을

2026년 1월 18일
·
0개의 댓글
·
post-thumbnail

SQL) 파티셔닝 Ⅱ

3. 인덱스 파티셔닝 1. 인덱스 파티션 유형

2026년 1월 16일
·
0개의 댓글
·
post-thumbnail

SQL) 파티셔닝 Ⅰ

1. 테이블 파티셔닝 파티셔닝은 테이블과 인덱스 데이터를 파티션단위로 나누어 저장하는 것을 말한다. 테이블을 파티셔닝하면 하나의 테이블일지라도 파티션 키에 따라 물리적으로는 별도의 세그먼트에 데이터가 저장되며, 인덱스도 마찬가지다. ✅ 파티셔닝이 필요한 이유 관리적

2026년 1월 15일
·
0개의 댓글
·
post-thumbnail

SQL) 소트 튜닝 Ⅲ

6. Sort Area를 적게 사용하도록 SQL 작성 만약 소트 오퍼레이션 처리가 불가피하다면 메모리 내에서 처리를 완료할 수 있게 해야하고, Sort Area의 크기를 늘리는 방법도 있지만 그 전에 Sort Area를 적게 사용하도록 하는 방법을 찾아야 한다. 1

2026년 1월 12일
·
0개의 댓글
·
post-thumbnail

SQL) 소트 튜닝 Ⅱ

3. 데이터 모델 측면에서의 검토 불합리한 데이터 모델이 소트 오퍼레이션을 유발하는 경우를 흔히 접할 수 있다. ✅ 사례 1 - M:M 관계를 갖도록 설계된 테이블 한쪽을 group by 해서 1:M 관계로 만들어주었지만 과거 데이터이관 시 발생한 예외 케이스 때문

2026년 1월 12일
·
0개의 댓글
·
post-thumbnail

SQL) 소트 튜닝 Ⅰ

1. 소트 튜닝 원리 SQL 튜닝에서 빠질 수 없는 요소가 소트 튜닝이다. 소트 오퍼레이션은 수행과정에서 CPU와 메모리를 많이 사용하고, 데이터량이 많을 때는 디스크 I/O 까지 일으킨다. 많은 서버 리소스를 사용하는 것도 문제지만 부분범위처리를 불가능하게 해

2026년 1월 11일
·
0개의 댓글
·
post-thumbnail

SQL) 쿼리 변환 Ⅲ

Outer 조인문을 작성하면서 일부 조건절에 Outer 기호(+)를 빠뜨리면 Inner 조인할 때와 같은 결과가 나온다.이럴 때 옵티마이저는 Outer 조인을 Inner 조인문으로 바꾸는 쿼리 변환을 시행한다.옵티마이저가 굳이 이런 쿼리 변환을 시행하는 이유는 조인 순

2026년 1월 8일
·
0개의 댓글
·
post-thumbnail

SQL) 쿼리 변환 Ⅱ

4. 조건절 Pushing 이떤 이유에서건 뷰 Merging 을 실패했을 때, 옵티마이저는 포기하지 않고 2차적으로 조건절 Pushing을 시도한다. 조건절 Pushing은 참조하는 쿼리 블록의 조건절을 뷰 쿼리 블록 안으로 Pushing 하는 기능을 말한다. 조건

2026년 1월 8일
·
0개의 댓글
·
post-thumbnail

SQL) 쿼리 변환 Ⅰ

쿼리 변환은 쿼리 옵티마이저가 SQL을 분석해 의미적으로 동일하면서도 더 나은 성능이 기대되는 형태로 재작성하는 것을 말한다.본격적으로 최적화를 하기 전에 사전 정지 작업을 하는 것이라고 말할 수 있다.결과만 보장된다면 무조건 쿼리 변환을 수행한다.일종의 규칙 기반 최

2026년 1월 6일
·
0개의 댓글
·