다음과 같은 이유로 분산파일시스템의 필요성에 검토를 시작하였다.
파일 시스템은 파일을 읽고 쓰고 지우고 복사하고 그런 것들을 정의해 놓은 시스템인데, 기본적으로 내가 사용하는 ubuntu의 경우 ext4를 사용하고 있다. 또는 Wiki기준 컴퓨터에서 파일이나 자료를 쉽게 발견 및 접근할 수 있도록 보관 또는 조직하는 체제를 가리키는 말이다.
이러한 고민을 하게 된 계기는 다음과 같은 고려사항이 존재하기 때문이다.
사실 이 정도의 간단한 고민이었으나, 프로젝트가 진행되면서 여러가지 고민사항이 생겼다.
저장되는 자료의 특성은 다음과 같다.
이러한 고려사항과 특징들이 있는 가운데, 여러가지 파일 시스템에 대하여 고민을 해보려고 한다.
로컬파일시스템의 경우 컴퓨터에 존재하는 파일시스템이다. 솔직히 가장 속편하고 이용하기 편리한 시스템이다.
대부분의 인터넷에 존재하는 글은, 로컬파일시스템의 단점은 이렇고, 이를 보완할 수 있는 분산파일시스템의 장점은 이렇다 식의 글이다. 머리에서 이해는 되는데, 과연 우리제품에도 해당하는 내용인가? 라는 질문에는 답하기 어렵다. 대부분의 인터넷 사이트 처럼 로컬파일시스템의 단점과 분산파일시스템의 장점을 나열해 본다.
단점1 : 용량이 가득 찰 경우 원본을 지우거나 옴겨야 한다.
단점2 : 손실 대비를 위해 다른 저장 장치에 백업을 해야 한다.
장점1 : 네트워크 분산파일시스템 이므로 사용자 간의 정보 공유가 쉽다. 특정한 파일을 함께 사용가능하다.
장점2 : 장소에 구애를 받지 않는다. 어디서나 자신의 파일을 사용할 수 있다.
장점3 : 저장 공간을 효율적으로 사용 가능하다. 여러대의 컴퓨터의 저장 공간을 함께 사용함으로써 효율적인 저장 공간의 활용이 가능하다.
장점4 : 로컬 파일시스템의 필요가 줄어든다. 파일의 사용은 전문적인 서버가 처리 가능하게 된다.
장점5 : 서로 다른 사용자끼리 같은 파일 시스템 구조를 사용하게 되어 효율적이다.
분산파일시스템의 고려사항은 다음과 같다.
결국 위와 같은 상황에서 다음과 같은 고민이 생긴다. 우리 시스템은 위의 분산파일시스템의 장점이 필요 없는데?
사실 우리의 제품은 네이버 메일과 유사한 성격을 가진다. 많은 첨부파일을 가지지만, 그 첨부파일 자체가 변경될 가능성은 없다. 그저 다운로드만 잘 되면 되고, 파일이 잘 보관만 되면 된다. 네이버 메일과 다른점은 첨부파일을 여러명이 다운로드를 받을 일이 거의 없다. 실질적으로 많아봐야 2명? 가장 중요한것은, 전체 HDD가 8테라 정도 될것이니, 그 용량을 가장 효율적으로 쓰는게 중요하다.
어쨋든 위에서 언급된 분선파일시스템의 10가지 장점 및 고려사항이 우리의 제품에 필요한 것인지 확인해 본다.
순서 | 항목 | 관련성
--- | ---
1 | 정보 공유 | 관련성0. 로컬 파일 시스템이더라도 네트워크에 연결되어 있기 때문에, 공유 가능
참고 1. https://d2.naver.com/helloworld/258077
참고 2. http://csl.skku.edu/papers/kiise09.pdf
참고 3. http://dpnm.postech.ac.kr/posco-project/dfs-intro.html