메뉴 건너뛰기

조회 수 4262 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

데이터베이스 파티셔닝이란(Partitioning)


VLDB(Very large DBMS)

*전체 DB가 하나의 DBMS시스템에 다 들어가기 힘들어지는 경우 

 > 테이블 들을 여러 개의 군으로 나눠 분산 저장 

* 하나의 테이블이 방대한 경우에는 사전방식과 같이 나눠 저장 


파티셔닝

*DBMS 레벨 분할


샤딩

*DBMS 외부에서 분할 / 응용레벨에서 구별해야 함



데이터베이스 파티셔닝이란(Partitioning)


이점

* 데이터 전체 검색시 필요한 부분만 탐색해 성능 증가

*전체 데이터를 손실할 가능성이 줄어듦 -> 가용성향상

*파티션별 백업/복구 가능

*파티션 단위로 I/O 분산가능 -> 업데이트 성능 증가 


방식

*범위(range) a-m/n-r/s-z

*해시(hash) 해시함수 파티션별로 크기를 비슷하게 나눔

*리스트(list) 특정한 컬럼을 기준





EX) Card  테이블에 연도 (CreationTime) 컬럼을 추가하고 파티셔닝하시오.


1
2
3
4
5
6
7
8
create table businessCard(ID INT NoT Null, Name varchar(255), Address varchar(255) ,
 Telephone varchar(255) , CreateTime DATE)
 
PARTITION BY RANGE(YEAR(CreationTime)) (
PARTITION p0 VALUES LESS THAN(2013),
PARTITION p1 VALUES LESS THAN(2014),
PARTITION p2 VALUES LESS THAN(2015),
PARTITION p3 VALUES LESS THAN MAXVALUE);  
 
cs




파티션 추가 와 삭제 


 

1
2
3
4
 
ALTER TABLE Card ADD PARTITION(PARTITION p4 VALUES LESS THAN(2005));
 
ALTER TABLE Card DROP PARTOTION p4;
cs





파티션 분할 / 병합


1
2
3
ALTER TABLE CardREORGANIZE
 PARTITION p3 INTO(PARTITION p3 VALUES LESS THAN(2015),
PARTITION p4 VALUES LESS THAN MAXVALUE);
cs


>> 파시션을 하여 정보를 나누웠는데도 P3에 데이터가 많은 경우 P3을 P3 ,P4로 더욱 분할하는 경우


 

1
2
3
ALTER TABLE Card
REORGANIZE PARTITION p2,p3
 INTO(PATITION p23 VALUES LESS THAN(2014));
cs

 


>> 파티션을 P2 , P3으로 만들었지만 데이터가 적어서 P23으로 병합하는 경우



데이터베이스 복제 


*DBMS 의 내용을 복제해 동일한 DB내용을 유지

*두개 이상의 DBMS 시스템을 마스터 / 슬레이브로 나눠 마스터 DBMS

-> 슬레이브 DBMS로 sql쿼리 복제 (select 제외)

  > 데이터 업데이트(CUD)는 마스터에서 

  > 읽기(R)는 슬레이브에서

*읽기 성능의 향상

 EX) 유명 포털 사이트의 경우에 많은정보가 있기때문에 뉴스 기사를 본다고 하면 이와같은 방식으로

디비를 나눠어서 사용한다고 한다.



  1. 전체 텍스트 검색과 파티션

  2. No Image 22Dec
    by
    2017/12/22 Views 3976 

    날짜 관련 함수 모음.

  3. mysql(exists, not exists)

  4. MySQL 파티션 개요

  5. No Image 28Dec
    by 조쉬
    2017/12/28 Views 4262 

    데이터베이스 파티셔닝이란

  6. No Image 24Jul
    by
    2018/07/24 Views 4367 

    MySQL Table 복구 - Got error 127 from storage engine

  7. No Image 08Jan
    by
    2019/01/08 Views 4430 

    MySQL ORDER BY 조건별 필드 및 ASC DESC

  8. No Image 22Dec
    by
    2017/12/22 Views 4940 

    테이블 파티셔닝

  9. MySQL Shard 데이터 재분배

  10. No Image 12Apr
    by
    2017/04/12 Views 5008 

    MySQL 계정생성하기

  11. No Image 12Apr
    by
    2017/04/12 Views 5071 

    백업시 캐릭터셋(charset) 지정하기

  12. No Image 16Nov
    by
    2017/11/16 Views 5076 

    다른 테이블 데이터를 원하는 테이블에 업데이트 시키기

  13. No Image 26Mar
    by
    2021/03/26 Views 5086 

    mysql 포트 바꾸기, 외부에서 접속하기

  14. No Image 12Apr
    by
    2017/04/12 Views 5105 

    MySQL의 alter table 명령어 모음

  15. No Image 12Apr
    by
    2017/04/12 Views 5252 

    MySQL root 패스워드 분실시

  16. No Image 12Apr
    by
    2017/04/12 Views 5277 

    테이블 타입(Heap, MyIsam, InnoDB...) 변경하기

  17. flush privileges 명령어

  18. No Image 12Apr
    by
    2017/04/12 Views 5330 

    MySQL 손상된 테이블 복구

  19. Mysql Join 해부(Left, Right, Outer, Inner Join)

  20. No Image 12Apr
    by
    2017/04/12 Views 5352 

    MySQL JOIN 걸어서 UPDATE 하기

Board Pagination Prev 1 2 3 4 5 6 7 Next
/ 7

하단 정보를 입력할 수 있습니다

© k2s0o1d4e0s2i1g5n. All Rights Reserved