Home > Back-End > 결제 서비스 MSA 아키텍쳐 전환 > Legacy DB 테이블 정리

Legacy DB 테이블 정리
MySQL 8

하나의 메인 스키마에서 모든 서비스의 데이터를 담고 있는 상황에서
별도 스키마를 생성하여 결제 서비스와 관련된 데이터를 분리하려고 한다.
단, 결제 서비스 스키마에는 PG사와 연동, 통신 과정을 통해 생성되는 데이터만 담고,
외부에서 결제 서비스를 사용하려는 도메인에서는 결제 서비스 스키마의 테이블 간의 맵핑 테이블을 통해 데이터를 활용한다.

Drop Table

  • tb_ 접두사로 생성된 결제 테이블 제거
  • 뷰 테이블 제거

Create Table

메인 스키마

  • 도메인과 결제 서비스 간의 맵핑 테이블 생성
    • 최근 결제 결과 상태 저장 테이블 생성
    • 결제 결과 상태 이력 테이블 생성
  • 도메인과 결제 수단 서비스 간의 맵핑 테이블 생성
    • 결제 수단 상태 저장 테이블 생성

결제 스키마

결제 스키마에서는 가공하지 않은 데이터만을 저장한다.

  • 연동 PG사 간 결제 요청과 응답 순수 데이터를 저장할 테이블 생성
    • 최근 결제 결과 상태 저장 테이블 생성
    • 결제 결과 상태 이력 테이블 생성
  • 연동 PG사 간 결제 수단 등록 요청과 응답 순수 데이터를 저장할 테이블 생성
    • 결제 수단 상태 저장 테이블 생성
    • 결제 수단 상태 이력 테이블 생성
  • API 연동 통신 로깅 테이블 생성
    • Request Body를 하나의 컬럼에 JSON 형태로 저장한다.
    • Response Body를 하나의 컬럼에 JSON 형태로 저장한다.