[온톨로지 적용하기] 4주차 Day 2 — 테이블 하나가 개념 하나인가
주차 주제: 우리 테이블에서 개념 꺼내기 | 제조 사례: 테이블 27개에서 개념 11개
오늘의 목표: 합칠 때와 나눌 때의 기준을 세운다.
소요 시간: 30분
1. 답
대개 아닙니다. ★
여러 테이블 → 개념 하나 ★
테이블 하나 → 개념 여럿 ★
테이블 하나 → 개념 아님 ★
2. 합치는 경우 넷
① 헤더 / 디테일 ★
so_header + so_detail
→ 「수주」 + 「수주품목」 ★
(둘이지만 테이블 수와 다릅니다)
② 본체 / 이력 ★
item_master + item_master_hist
→ 「품목」 하나 ★
③ 본체 / 확장 ★
item_master + item_ext + item_spec
→ 「품목」 하나 ★
④ 여러 시스템의 같은 것 ★
erp.item + mes.item + plm.part
→ 「품목」 하나 (8주차 바인딩) ★
3. ①이 헷갈린다
헤더/디테일을 하나로 볼지 둘로 볼지
기준 — 디테일을 따로 물을 일이 있나 ★
있으면 둘
"이 품목이 들어간 수주가 몇 건?" ★
→ 「수주품목」 을 직접 물음
없으면 하나
주문 헤더 + 배송지 확장 테이블 ★
→ 배송지만 따로 물을 일 없음
제조에서는 대개 둘입니다. ★
수량·단가·납기가 디테일에 있으니까요.
4. 나누는 경우 셋
① 유형 컬럼으로 갈리는 테이블 ★
transaction 테이블에
type='IN'/'OUT'/'ADJ' 가 섞여 있음 ★
② 한 테이블에 여러 것이 들어간 경우 ★
생산실적 테이블에
실적·불량·설비가동이 다 있음 ★
③ 공통 테이블 ★
attachment · comment · approval ★
→ 여러 개념에 붙습니다
5. ★ ① 유형 컬럼 — 가장 중요
제조 DB 에 흔합니다.
inventory_transaction
type IN / OUT / MOVE / ADJUST / SCRAP ★
하나의 개념으로 두면
"입고가 얼마죠?" 에
전부 더할 수 있습니다. ★
나눠야 하나?
판별
· 속성이 같으면 하나 + 유형 속성 ★
· 속성이 다르면 나눔 ★
· 따로 물어지면 나눔 ★
대개
입고/출고는 속성이 같습니다 → 하나 + 유형 ★
폐기(SCRAP)는 사유·승인이 붙습니다 → 나눔 ★
6. ③ 공통 테이블은 개념이 아니다
attachment · comment · approval_log ·
audit_log · notification ★
이것들은
여러 개념에 공통으로 붙는 것입니다. ★
개념으로 올리면 관계가 거미줄이 됩니다. ★
처리
개념으로 안 만듭니다. ★
필요하면 속성으로 표시합니다.
"첨부 있음 여부" ★
예외 — 승인은 물어질 수 있습니다 ★
"승인 대기가 몇 건이야"
→ 그러면 개념으로 올립니다
7. 제조 현장의 실제
어느 업체, 질문 3개 관련 테이블 27개.
분류해 보니
헤더/디테일 쌍 4쌍 → 개념 8개 ★
이력 테이블 5개 → 합침 ★
확장 테이블 3개 → 합침 ★
공통 테이블 4개 → 제외 ★
코드 테이블 3개 → 속성으로 ★
유형으로 갈리는 것 1개 → 개념 2개로 나눔 ★
단독 7개 → 개념 7개 ★
27개 테이블 → 개념 17개 ★
그리고 다른 시스템의 같은 것을 합치니
개념 11개 ★
27 → 11.
8. 세어 보면 대개 절반 이하
경험적 비율
테이블 100개
− 공통·코드·집계·임시 25개 ★
− 이력·확장 (합침) 20개 ★
− 죽은 테이블 20개 ★
──────────────────────
= 35개 → 다시 시스템 간 합침 ★
= 개념 20~25개 ★
9. 이름은 테이블명을 쓰지 마세요
TB_SO_HD → 「수주」 ★
MST_ITM → 「품목」 ★
TRN_PRD_RST → 「생산실적」 ★
이름 규칙
· 현장이 쓰는 말로 ★
· 한글로 (영문은 따로) ★
· 줄임말 쓰지 않기 ★
· 「마스터」 「정보」 「관리」 빼기 ★
(품목마스터 → 품목) ★
AI 가 읽을 이름입니다.
사람이 쓰는 말이어야 합니다. ★
10. 오늘 해 볼 것 (15분)
① 테이블을 분류하세요
관련 테이블 ___개
- 공통/코드/집계 ___개 ★
- 이력/확장 ___개 ★
- 죽은 것 ___개 ★
- 헤더/디테일 쌍 ___쌍 ★
──────────────
= 개념 후보 ___개 ★
② 유형 컬럼을 찾으세요
테이블 유형 컬럼 값 개수 나눌까 ★
________ ________ ___개 ○/✗
________ ________ ___개 ○/✗ ★
③ 이름을 다시 지으세요
테이블명 개념명 ★
____________ ________
____________ ________ ★
11. 내일 할 것
컬럼에서 속성 뽑기 — 되는 것과 안 되는 것.
컬럼명만 보고 속성을 만들면 절반이 틀립니다. 값을 봐야 합니다.
이 글은 온톨로지 적용하기 과정의 4주차 2일차입니다. 과정 전체 보기
진도와 검색이 되는 판: AXPulse 기술따라가기
댓글
댓글 쓰기