DB Change Setting
DANGER
DB Change Setting 시작 전 개발 및 운영 관련된 모든 작업(DB 관련 – DDL, 배치 등 DB 실행, Configuration, Web/Mobile 사용자 접근 등)을 중단 후 진행해야 합니다.
Cals Platz의 Core 기능의 접속 DB Connection이 변경되는 작업으로 반복적으로 진행하는 경우 시스템 테이블의 데이터의 정합성이 맞지 않을 수 있음으로 신중하게 계획을 세워 작업해야 합니다.
Silo, Bridge 모델의 DB Setting은 시스템 연관 DB Connection을 관리하는 기능으로 Studio 사용자가 BO에 연결하여 사용하는 Table의 DB Connection과 무관하다. 따라서 DB Change Setting 완료 전, 완료된 후 Table의 데이터 소스 또는 Schema를 매핑 하는 작업은 별도로 진행해야 한다.
Pool → Silo
Silo 모델의 초기 설정과 유사하나 Tenant DB 연결 전 Table 데이터 이관 절차가 추가된다.
Table 데이터 이관은 선택적인 사항으로 필수사항은 아니다.
Data Source 등록
App 환경 Physical Layer > Data Source 화면에서 작업
TA팀에게 전달 받은 Sandbox DB 정보 및 Production DB 정보를 생성한다. 이 때 host 정보를 System Admin > Environment에서 설정한 환경변수를 이용해 지정 가능하다.
Tenant DB Setting
App 환경 Application Setting > Tenant DB Setting 화면에서 작업하며, Sandbox 테넌트가 연결되는 Sandbox Target DB와 운영환경 테넌트와 연결되는 Production Target DB 설정 정보를 저장한다.
- 설정하고자 하는 테넌트를 선택 후 Attribute View를 오픈하여 Target DB 설정한다.
- Sandbox Target DB 설정: Data Source 등록 에서 등록한 Data Source를 지정한다. 실제, DB가 구성된 환경은 Sandbox 환경이다.
- Production Target DB 설정: Data Source 등록 에서 등록한 Data Source를 지정한다. 실제, DB가 구성된 환경은 Production 환경이다. Environment로 Data Source를 구성한 경우 Sandbox Target DB와 동일하다.
- 데이터를 이관할 테이블을 선택하여 Attribute View를 오픈한다.
- 이관할 대상 Table인 경우 Transfer를 'YES'로 변경 한 뒤 저장한다.
Provisioning
App 환경에서 설정이 완료된 후 Sandbox, Production 에 Provisioning을 완료한다.
App 환경에서 설정을 하지만 실제 연동 및 데이터 이관은 Sandbox에서 진행하고 Sandbox 환경에서 Production 환경의 연결 및 데이터 이관을 진행함에 따라 Provisioning은 Production 환경까지 완료해야 한다.
Sandbox Table 데이터 이관(optional)
Tenant DB Setting에서 Table Transfer를 'YES'로 지정한 경우 진행한다.
데이터 모델을 변경할 때 이전 DB에서 데이터를 옮기는 과정으로 이전 DB에 적재된 system 테이블의 데이터를 이관한다.
이관 할 때의 방식은 Overwrite 방식과 Move 방식을 선택 할 수 있다.
Overwrite 방식: 선택한 Table의 Source DB에 있는 데이터를 Target DB에 복제하는 방식으로 양쪽 DB에 동일한 데이터가 존재하도록 한다. 단, Tenant DB가 연결 된 후부터 Target DB에만 데이터가 적재된다.
Move 방식: 선택한 Table의 Source DB에 있는 데이터를 Target DB에 이관한다. 따라서 Source DB의 데이터가 삭제되는 방식이다.
WARNING
Move를 한 경우 Source DB Table의 데이터가 삭제됨으로 Move 후 다시 Overwrite가 되지 않음
① Table을 선택 한 뒤 Sandbox Overwrite 진행한다.
② Table을 선택 한 뒤 Sandbox Move를 진행한다. (Overwrite를 한 경우 Move를 실행하지 않는다)
- 선택한 Table만 실행됨으로, Yes로 지정한 테이블을 반복하여 실행한다.
Sandbox Tenant DB 연결
Sandbox 환경 Tenant Setting > Tenant DB Setting 화면에서 작업한다.
INFO
Sandbox 환경의 Tenant Setting은 대표 Account 계정으로 접속 시에만 사용이 가능하다.
- Sandbox DB Connection: 선택한 테넌트의 지정된 Sandbox Target DB를 테넌트의 DB 설정 정보로 전달한다. Connection 이 되면, ③의 Connection History에 지정된 연결 정보가 추가되어 연결 여부를 확인 할 수 있다.
- 연결 history 정보로 해당 내역으로 각 환경(sandbox, production)의 Connection 등록 여부를 확인 할 수 있다.
Production Table 데이터 이관(optional)
① Table을 선택 한 뒤 Production Overwrite 진행한다.
② Table을 선택 한 뒤 Production Move를 진행한다. (Overwrite를 한 경우 Move를 실행하지 않는다)
Production Tenant DB 연결
Sandbox 환경 Tenant Setting > Tenant DB Setting 화면에서 작업한다.
INFO
Sandbox 환경의 Tenant Setting은 대표 Account 계정으로 접속 시에만 사용이 가능하다.
- Production DB Connection: 선택한 테넌트의 지정된 Production Target DB를 테넌트의 DB 설정 정보로 전달한다. Connection 이 되면, ②의 Connection History에 지정된 연결 정보가 추가되어 연결 여부를 확인 할 수 있다.
- 연결 history 정보로 해당 내역으로 각 환경(sandbox, production)의 Connection 등록 여부를 확인 할 수 있다.
Pool → Bridge
Bridge 초기 설정과 유사하고 Table 데이터 이관은 선택사항이다. 상세 작업 내용 중 미작성된 내용은 Pool -> Silo 과 동일하다.
Tenant DB Setting
App 환경 Application Setting > Tenant DB Setting 화면에서 작업하며, Sandbox 테넌트가 연결되는 Sandbox Target DB와 운영환경 테넌트와 연결되는 Production Target DB 설정 정보를 저장한다.
- 설정하고자 하는 테넌트를 선택 후 Attribute View를 오픈하여 Target DB 설정한다.
- Sandbox Target Schema: 해당 테넌트가 Sandbox에서 사용할 Schema를 지정한다.
- Production Target Schema: 해당 테넌트가 운영환경에서 사용할 Schema를 지정한다.
Provisioning
Sandbox Table 데이터 이관
Sandbox Tenant DB 연결
Production Table 데이터 이관
Production Tenant DB 연결
Silo → Pool
분리된 DB에서 동일 DB Instance를 사용하는 기본 방식으로 전환하는 프로세스로 초기 데이터 이관을 하고자 할 경우 Source DB 정보 입력이 필요하다.
Tenant DB Setting
App 환경 Application Setting > Tenant DB Setting 화면에서 작업하며, 데이터 이관이 필요한 경우 Sandbox Source DB, Production Source DB 정보를 입력한다.
- DB Isolation 유형을 Pool로 선택한다.
- 기존에 분리된 Silo에서 Sandbox Target DB로 설정한 데이터소스를 지정한다. (테이블 이관 할 때 데이터를 가져올 정보)
- 기존에 분리된 Silo에서 Production Target DB로 설정한 데이터소스를 지정한다. (테이블 이관 할 때 데이터를 가져올 정보)
Provisioning
Sandbox Table 데이터 이관
Sandbox Tenant DB 연결
Production Table 데이터 이관
Production Tenant DB 연결
Bridge → Pool
Bridge 초기 설정의 경우 Application Default DB Instance 정보 기반으로 Schema 정보만 입력하여 설정하였다. 그러나 Pool 방식으로 변경을 할 경우 기존 Bridge모델에서 사용했던 Schema 정보의 Data Source 등록이 필요하다.
Data Source 등록
Bridge 모델에서 Target DB로 사용했던 데이터소스 등록
Tenant DB Setting
App 환경 Application Setting > Tenant DB Setting 화면에서 작업하며, 데이터 이관이 필요한 경우 Sandbox Source DB, Production Source DB 정보를 입력한다.
- DB Isolation 유형을 Pool로 선택한다.
- Data Source 등록 에서 신규로 등록한 이전 Bridge 모델의 Sandbox Target DB 데이터소스를 선택한다.
- Data Source 등록 에서 신규로 등록한 이전 Bridge 모델의 Production Target DB 데이터소스를 선택한다.
Provisioning
Sandbox Table 데이터 이관
Sandbox Tenant DB 연결
Production Table 데이터 이관
Production Tenant DB 연결
Silo → Bridge
Silo 모델에서 Bridge모델로 변경하는 프로세스이다.
Tenant DB Setting
App 환경 Application Setting > Tenant DB Setting 화면에서 작업하며, Sandbox 테넌트가 연결되는 Sandbox Target DB와 운영환경 테넌트와 연결되는 Production Target DB 설정 정보를 저장한다.
- Sandbox Target Schema, Production Target Schema 를 입력한다.
- Sandbox Source DB와 Production Source DB 정보로 이전 Silo모델에서 사용했던 데이터 소스를 지정하여 입력한다.
Provisioning
Sandbox Table 데이터 이관
Sandbox Tenant DB 연결
Production Table 데이터 이관
Production Tenant DB 연결
Bridge → Silo
Bridge 초기 설정의 경우 Application Default DB Instance 정보 기반으로 Schema 정보만 입력하여 설정하였다. 그러나 Silo방식으로 변경을 할 경우 데이터이관을 위해 기존 Bridge모델에서 사용했던 Schema 정보의 Data Source 등록이 필요하다.
Data Source 등록
Silo모델에서 Target DB로 사용할 데이터소스와 Bridge 모델에서 Target DB로 사용했던 데이터소스 등록이 필요하다.
Tenant DB Setting
App 환경 Application Setting > Tenant DB Setting 화면에서 작업하며, 데이터 이관이 필요한 경우 Sandbox Source DB, Production Source DB 정보를 입력한다.
- Sandbox Target DB, Production Target DB를 데이터소스에서 선택한다.
- Sandbox Source DB와 Production Source DB 정보로 이전 Silo모델에서 사용했던 데이터 소스를 지정하여 입력한다.