학습 목표
이 모듈을 마치면 다음을 수행 할 수 있습니다.
- 참조 세트를 언제 사용할지, 성능 향상을 위해 어떤 유형을 사용할지 결정
- 인덱스를 사용하여 쿼리 속도 향상
먼저 도메인 모델에서 직원은 여러 팀에 속할 수 있도록 다 대 다 연결로 설정
참고로 연결의 소유권은 연결의 점(●) 끝으로 표시됩니다.
팀을 편집할 때 스태프를 팀에 할당할 수 있다면 편리할 것이라고 상상할 수 있습니다. 따라서 Team은 연결의 소유자이기도 해야 합니다. 쉬운 트릭은 연결 탐색 가능성을 둘 다로 설정하는 것입니다 – Team 및 Staff 개체는 서로를 참조합니다. 그러면 다음과 같은 도메인 모델이 생성됩니다.
이와 같이 연결의 소유권을 양쪽으로 설정해준다면 어느 객체에서든 연결 되어있는 객체에 접근이 가능합니다.
주의사항으로는 개체 캐시가 커질 수 있고 데이터베이스에서 데이터를 검색할 때 성능에 영향을 줍니다.
필수적으로 양쪽에서 연결을 관리할 수 있어야 하는지 고민해봐야 합니다.
단, 다대다 연결은 관계 간 추가 정보를 기록해야 하는 경우가 많기 때문에 실제로는 거의 사용되지 않습니다.
따라서 다음과 같은 방법으로 이 추가 정보를 기록할 추가 조인 엔터티를 추가합니다.
다음과 같이 바꾸었을 때 개체 캐시가 줄어들고 앱의 성능이 향상됩니다.
각 케이스 별 성능 테스트
조인 엔터티를 사용하는 데이터 집합은 약 3-4배가 빠른 걸 볼 수 있습니다.
'LowCode (Mendix) Advanced > Advanced Domain Model Skills' 카테고리의 다른 글
Date Time Handling (0) | 2024.09.06 |
---|---|
Advanced Associations Using Self Reference (0) | 2024.09.06 |
Index - Improving App Performance with Indexes and Reference Sets (0) | 2024.09.06 |
Using the FileDocument and Image Entity (0) | 2024.06.21 |
Inheritance - being special and one of a kind (0) | 2024.06.18 |