| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 |
- claude code
- RDS
- 오블완
- 캡슐화
- EKS
- 구조체
- 티스토리챌린지
- DB
- 감상문
- GoF
- AI
- Intellij
- javascript
- typescript
- OpenClaw
- go
- goland
- AWS
- 보안
- golang
- esbuild
- GIT
- MSA
- elasticsearch
- Kubernetes
- LLM
- NemoClaw
- 디자인패턴
- logging
- Infra
- Today
- Total
목록2026/03/26 (2)
Fall in IT.
들어가며데이터베이스 스키마 변경은 애플리케이션 개발에서 피할 수 없는 일이다. 문제는 이 변경을 어떻게 관리하느냐에 있다. Flyway는 데이터베이스 스키마 변경을 코드처럼 버전 관리할 수 있게 해주는 오픈소스 DB 마이그레이션 도구로, 개발팀이 DB 구조 변경 사항을 체계적으로 추적하고 모든 환경에 일관되게 적용할 수 있도록 설계되었다.1. 왜 Flyway가 필요한가DB를 수동으로 관리하는 조직에서는 다음과 같은 문제가 반복적으로 발생한다.문제 설명스키마 불일치팀원마다 로컬 DB가 달라 "내 환경에서는 정상 동작한다"는 상황이 발생한다수동 실행 의존SQL을 직접 공유하거나 문서화해야 하며, 누락 위험이 상존한다이력 불투명특정 테이블이 언제, 왜 변경되었는지 추적이 불가능하다환경 재현 불가신규 팀원 온보..
문제의 출발점애플리케이션에서 구조화된 데이터를 하나의 컬럼에 통째로 저장해야 하는 경우가 있다. 설정값, 메타데이터, 가변적인 속성 목록 등이 대표적이다. 이때 선택지는 크게 두 가지로 나뉜다.데이터베이스가 제공하는 JSON/JSONB 타입을 사용하는 방법일반 TEXT 타입에 JSON 문자열을 그대로 저장하는 방법두 방식 모두 현업에서 널리 쓰이며, 어느 쪽이 절대적으로 우월하다고 말하기는 어렵다. 상황에 따라 적합한 선택이 달라지기 때문이다.JSON/JSONB 타입으로 저장하는 경우개요PostgreSQL의 jsonb, MySQL 8.0+의 JSON 등 주요 RDBMS는 JSON 전용 컬럼 타입을 지원한다. 단순히 문자열로 저장하는 것이 아니라, DB 엔진이 JSON 구조를 인식하고 파싱한 상태로 보관한..
