반응형

안녕하세요.

Gluster 볼륨의 분산 정책은 기본적으로 파일 단위로 분산 하도록 되어 있습니다.

파일 단위로 분산 할 경우, 다수의 작은 파일이 저장되는 경우는 큰 문제가 되지 않지만

소수의 큰 파일이 저장되는 경우 다음과 같은 문제점이 발생 할 수 있습니다.

1. 단일 파일의 크기가 단일 brick의 크기보다 큰 경우 저장 되지 않음

2. 파일 갯수가 적을 경우 한 서버에만 과도하게 워크로드가 발생 -> 분산 파일시스템의 장점인 병렬화 X

때문에 Gluster에서는 sharding 이라는 옵션을 제공합니다.

 

sharding은 하나의 파일을 지정한 블록 사이즈로 쪼개서 여러 brick으로 저장하는 옵션 입니다.

shard block size를 128MB로 설정하고, 1GB의 파일을 저장 한다면 

8개의 128MB block으로 쪼갠 후 여러 brick에 분산 저장 하게 됩니다.

복제 하도록 볼륨을 구성했다면 shard block 단위로 저장 하게 됩니다.

sharding은 저장되는 파일 구성에 따라 득이 될 수도, 실이 될 수도 있기 떄문에

저장될 파일 구성을 생각하여 적용하시면 될 것 같습니다.

 

sharding은 gluster set 명령어를 이용하여 설정 가능합니다.

다음 두 명령어만 사용하면 됩니다.

# gluster volume set VOLUME명 features.shard on

# gluster volume set VOLUME명 features.shard-block-size BLOCK_SIZE

ex) gluster volume set gluster_test features.shard on

ex) gluster volume set gluster_test features.shard-block-size 512mb

반응형
Posted by 해리팍
BLOG main image

Chanhyun Park (해리팍)
Software Engineer @ SK hynix

Contact Info.
parkch0708@hanmail.net
chanhyun0708@gmail.com
chanhyun.park@sk.com

카테고리

All (1501)
Profile (2)
Park's Life (599)
Computer System (165)
Computer Programming (39)
Computer Study (54)
Computer Etc. (189)
Scuba Diving (137)
Golf (8)
Traveling (245)
생활 정보 (12)
Pokemon GO (50)