2018년/DataBase
데이터 베이스 Advanced
위지원
2018. 1. 3. 19:22
1.Meata Data
- Data Dictionary : System Catalog라고도 하며 readonly로 mysql에서는 Information_schema라는 데이터베이스로 존재
- Data Directory : DBMS의 모든 데이터가 저장되는 디렉토리로 my.ini의 datadir에 경로가 설정되어있음
2.데이터 베이스 파티셔닝
-VLDB(Very Large DBMS)
1) 테이블을 여러개의 군으로 나누어 분산 저장
2) dic형태로 구분해서 나누어 저장
-Join 연산이 어려워져 Denormaliztion을 이용하여 조인정보를 미리 저장하고 외래키 제약조건을 제거함
-장점
1) 검색시 필요한 부분만 검색
2) 전체 data 손실이 적다. 이걸 보통 가용성이 높다라고 하며 HA(High availability)라고 함
3) 파티션별로 백업/복구가 가능
4) 업데이트 성능이 증가 **가장중요함**
: 파티션 별로 접근하기 때문에 읽,쓰기 성능이 증가한다
-방식
1) 범위 : 너무 한쪽에만 몰림
2) 해쉬 : 그래서 해쉬를 씀
3) 리스트 : 특정 컬럼을 기준으로
4) 컴포지트 : 해쉬+리스트 이렇게 섞어서 사용
-사용 예제
-추가/삭제
-분할/병합
출처:https://tacademy.sktechx.com/frontMain.action
**샤딩(sharding) : DBMS 외부에서 응용시스템(보통 framework)으로 나누어서 함 ( 반대로 파티셔닝은 DBMS가 알아서) 그러다보니 응용시스템이 DB의 정보를 다 알 수 있게 해야함