본문 바로가기

Backend/PostgreSQL and TypeORM

회원가입때 받을 개인정보 컬럼이 달라질 것을 고려하기 위해 jsonb 사용한다?

다른 다오가 생길때 회원가입시 받아야 하는 정보가 늘어나면 컬럼도 늘어나기 마련. 

그래서 jsonb로 유동적으로 받게 한다고 한다. 

 

jsonb는 그 자체로 유연한 스키마를 가지고 있다. 

{ 
	"age": 30, 
    "department": "HR"
}
{ 
  "age":30, 
  "department" : "HR", 
  "location" : "NY"
}

jsonb 컬럼을 사용하면 이전 속성에 영향을 받지 않고 새로운 컬럼을 추가하거나 기존 속성 수정 가능 -> 다양한 프로젝트 간에 일관된 데이터를 유지하고자 할 때 유용하다. 

 

BUT 데이터의 일관성과 유지를 위해 비즈니스 로직에서 신경쓸 부분이 있다고 한다. (검증 및 처리 로직)