강의

멘토링

커뮤니티

Cộng đồng Hỏi & Đáp của Inflearn

Hình ảnh hồ sơ của kimjinhyeon07237048
kimjinhyeon07237048

câu hỏi đã được viết

Phát triển NestJS thực tế thông qua dịch vụ thương mại điện tử (kèm Prisma, Docker, Redis, Kafka)

Phân tích yêu cầu và thiết kế ERD

FK 현업에서 실제 사용안하시나요

Đã giải quyết

Viết

·

47

0

현업에서 실제로 개발하실때도 FK 를 넣지 않으시나요?

 

데이터 정합성과 ORM 이용의 편리함 등을 위해 FK 를 맺는게 맞지 않나해서 여쭤보게 되었습니다.

 

dockerkafkaredisnestjsprisma

Câu trả lời 1

1

billkim님의 프로필 이미지
billkim
Người chia sẻ kiến thức

과거 모놀리식 방식에서는 단일 어플리케이션 서버와 단일 db 구성으로 관리되어왔으며, 이때의 FK 는 거의 필수형태로 관리되어왔습니다. 하지만, 현대의 MSA 방식에서는 오히려 FK 가 강결합을 불러올 수 있고 db의 정합성 보장 메카니즘을 활용한 방식보다 어플리케이션 서버단에서 정합성을 맞추고 있는 상황으로, ORM 을 이용하여 DB 에 FK 를 세팅하진 않습니다.

또한 FK 를 추가함에 따라 발생되는 비용 중 일부가 insert, update 시간 지연, deadlock 이슈 등이 있는데, 이 비용에 비해 이점이 떨어진다는 시각이 많습니다. (물론 도메인 by 도메인, 회사 by 회사)

Hình ảnh hồ sơ của kimjinhyeon07237048
kimjinhyeon07237048

câu hỏi đã được viết

Đặt câu hỏi