KR20150080722A - 파일을 관리하기 위한 장치 및 이를 위한 방법 - Google Patents
파일을 관리하기 위한 장치 및 이를 위한 방법 Download PDFInfo
- Publication number
- KR20150080722A KR20150080722A KR1020140000147A KR20140000147A KR20150080722A KR 20150080722 A KR20150080722 A KR 20150080722A KR 1020140000147 A KR1020140000147 A KR 1020140000147A KR 20140000147 A KR20140000147 A KR 20140000147A KR 20150080722 A KR20150080722 A KR 20150080722A
- Authority
- KR
- South Korea
- Prior art keywords
- file
- user
- user device
- list
- location
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/182—Distributed file systems
- G06F16/1824—Distributed file systems implemented using Network-attached Storage [NAS] architecture
- G06F16/183—Provision of network file services by network file servers, e.g. by using NFS, CIFS
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/13—File access structures, e.g. distributed indices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/14—Details of searching files based on file metadata
- G06F16/148—File search processing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Library & Information Science (AREA)
- Computer Hardware Design (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Software Systems (AREA)
- Information Transfer Between Computers (AREA)
Abstract
본 발명은 파일을 관리하기 위한 장치 및 이를 위한 방법에 관한 것으로, 이러한 본 발명은 어느 한 사용자 소유의 적어도 하나의 사용자 장치 및 상기 사용자가 서비스에 가입한 적어도 하나의 스토리지 서버에 저장된 상기 사용자의 파일에 대한 파일 리스트를 기 설정된 형식에 따라 통합 파일 리스트로 변환하며, 변환된 통합 파일 리스트를 저장한다. 이러한 통합 파일 리스트를 통해 한 사용자의 사용자 장치 혹은 한 사용자가 가입한 서비스를 제공하는 스토리지 서버에 저장된 모든 파일을 관리할 수 있다.
Description
본 발명은 파일 관리를 위한 기술로, 보다 상세하게는, 이종의 파일 시스템으로 관리되며, 서로 다른 매체에 저장되어 있는 파일을 통합 관리하기 위한 장치 및 이를 위한 방법에 관한 것이다.
사용자가 소비하는 기기(스마트폰, Tablet, Laptop, PC, Google 글라스 등)가 증가함에 따라 사용자의 파일이 여러 기기 속의 저장장치(하드디스크, SDD 등)에 분산되었다. 이를 해결하기 위해 클라우드 서비스(Dropbox, Ndrive 등)가 출현했지만 개개의 용량이 부족한 문제와 동시에 여러 클라우드를 동시에 사용해야 함에 파일시스템은 더욱 분산되었다. 또한 다양한 인터넷 기반 어플리케이션 서비스(예를 들어, Facebook, Evernote 등)들이 더욱 많이 사용되면서 사용자의 데이터는 더욱 분산되게 되었다.
이렇게 사용자의 파일시스템이 분산되면서 여러 가지 문제점들을 야기하는데, 가장 먼저 생각해 볼 수 있는 것은, 사용자가 자신이 저장해두었던 파일이 어디에 저장되어있는지 기억하기가 어렵다는 문제이다. 예를 들면 3년 전에 찍은 사진을 보기 위해서 파일을 찾으려 하는데 이 파일을 찾기 위해서 스마트폰의 사진첩, 자신의 랩탑의 저장 매체, Ndrive와 같은 클라우드 서버, Facebook과 같은 SNS 서비스의 사진첩 등을 차례로 검색해 본 후, 최종적으로 자신의 데스크탑 PC에 저장되어 있음을 발견하는 경우가 있을 수 있다.
두 번째 문제점으로 기기 및 서비스 간 파일 전송이 쉽지 않다는 점이다. 통상적으로 기기 간 파일 전송을 위해서는 USB 케이블을 사용하거나, 이메일을 이용하는 경우가 많다. 하지만 USB 케이블의 경우, 케이블을 찾아서 연결해야 하는 불편함이 있을 뿐 아니라, 최대 전송속도 역시, 통용되고 있는 USB 케이블 기준 초당 12메가비트 정도로 높지 않고 PC간 직접 파일 전송에 사용될 수는 없다는 점에서 한계가 있다. 이메일을 이용한 방식 역시, 대용량 파일전송에 한계가 있고 전송 시간 또한 오랜 걸린다는(업로드와 다운로드 따로 시간이 걸림)단점이 있다. 한편, 인터넷 기반 SNS 서비스들 역시 개별 파일들을 따로 따로 다운로드 받고 업로드 해야 하는 불편함이 있다. 예를 들어, 싸이월드에 있는 사진첩을 Facebook으로 옮기려고 할 경우, 모든 사진들을 일일이 하나씩 다운로드 한 후 이들을 다시 Facebook에 업로드 할 수 밖에 없다.
세 번째 문제점은 파일의 공유에 있다. 영화와 같은 대용량 미디어 컨텐츠를 친구와 공유하기 위해서는 이동식 하드디스크나 대용량 USB 메모리 등에 파일을 저장한 후, 이들 장치를 들고 친구와 직접 만나야 하는 번거로움이 있다.
한편, 최근에는 Torrent 등의 P2P 프로그램을 통한 파일의 전송 방식도 사용되고 있지만, 파일 공유를 하기 위해서 매번 프로그램의 설정을 해야 하는 등의 다소 복잡한 사용 방식으로 인한 어려움이 있다.
클라우드 서비스를 통한 파일의 저장 및 공유 역시 제공되는 클라우드 상의 저장 공간의 용량에 한계가 있다는 점에서 문제를 가지고 있다. 고화질의 미디어 컨텐츠들의 경우 개별 파일의 용량이 상당히 크기 때문에 현재 제공되는 정도의 클라우드 저장 공간의 용량으로는 용량 부족의 문제가 발생할 수밖에 없다.
상술한 바와 같은 점을 감안한 본 발명의 목적은 복수의 파일 시스템을 이용하여 관리되는 파일들을 통합하여 관리하기 위한 장치 및 이를 위한 방법을 제공함에 있다.
상술한 바와 같은 목적을 달성하기 위한 본 발명의 일 실시예에 따른 파일 관리를 위한 서비스 서버는, 데이터 저장을 위한 저장 모듈; 통신을 위한 통신 모듈; 및 상기 통신 모듈을 통해 적어도 하나의 사용자 장치 및 사용자가 서비스에 가입한 적어도 하나의 스토리지 서버 중 적어도 어느 하나에 저장된 상기 사용자의 파일에 대한 파일 리스트를 수신하고, 수신된 파일 리스트를 기 설정된 형식에 따라 통합 파일 리스트로 변환하며, 변환된 통합 파일 리스트를 상기 저장 모듈에 저장하는 제어 모듈을 포함한다.
상기 통합 파일 리스트는 상기 파일이 실제 저장된 위치에 대한 정보를 포함하는 것을 특징으로 한다.
상기 제어 모듈은 상기 통신 모듈을 통해 사용자 장치로부터 특정 파일의 위치를 요청하는 요청 메시지를 수신하면, 수신된 요청 메시지가 지시하는 파일의 위치를 상기 통합 파일 리스트에서 검색하여, 상기 파일의 위치에 대한 정보를 포함하는 응답 메시지를 상기 사용자 장치에 전송하는 것을 특징으로 한다.
상기 제어 모듈은 상기 통신 모듈을 통해 사용자 장치로부터 특정 파일의 업로드를 요청하는 요청 메시지를 수신하면, 상기 통합 파일 리스트를 검색하여, 기 설정된 알고리즘에 따라, 상기 특정 파일과 연관된 파일이 저장된 스토리지 서버를 검색하고, 상기 특정 파일을 검색된 스토리지 서버에 업로드 하도록 하는 응답 메시지를 상기 통신 모듈을 통해 상기 사용자 장치에 전송하는 것을 특징으로 한다.
상기 제어 모듈은 상기 통신 모듈을 통해 사용자 장치로부터 특정 파일을 특정 스토리지 서버로 이동시키도록 요청하는 요청 메시지를 수신하면, 상기 통합 파일 리스트를 검색하여, 상기 특정 파일이 현재 저장된 스토리지 서버를 검색하고, 검색된 스토리지 서버로부터 상기 특정 파일을 다운로드 한 후, 다운로드한 특정 파일을 상기 특정 스토리지 서버에 업로드하는 것을 특징으로 한다.
상술한 바와 같은 목적을 달성하기 위한 본 발명의 일 실시예에 따른 서비스 서버의 파일 관리 방법은, 적어도 하나의 사용자 장치 및 사용자가 서비스에 가입한 적어도 하나의 스토리지 서버 중 적어도 어느 하나에 저장된 상기 사용자의 파일에 대한 파일 리스트를 수신하는 단계; 및 상기 수신된 파일 리스트를 기 설정된 형식에 따라 통합 파일 리스트로 가공하여, 가공된 통합 파일 리스트를 저장하는 단계를 포함한다.
상기 통합 파일 리스트는 상기 파일이 실제 저장된 위치에 대한 정보를 포함하는 것을 특징으로 한다.
상술한 바와 같은 본 발명에 따르면, 한 사용자가 소유한 사용자 장치(100)를 "클라우드화"시킨다. 이는 사용자 장치(100)들이 배터리 기술의 발전으로 대부분의 시간 동안 켜져 있고, 켜져 있는 동안은 항상 네트워크, 즉, 인터넷에 연결되어있기 때문에 가능하다. 이에 따라, 각 사용자 장치(100)는 서버와 같은 성격을 가질 수 있게 되며, 각 사용자 장치(100)는 클라우드를 이루는 개별 클라우드 스토리지 서버로 기능할 수 있게 된다. 다음으로 클라우드화된 사용자 장치(100)들과 실제 클라우드 저장소들 및 다양한 서비스를 제공하는 어플리케이션 서버, 즉, 스토리지 서버(200)들을 통합하여 서비스 서버(300)에 통합 파일 리스트를 생성한다. 서비스 서버(300)는 직접 파일은 저장하지 않고 파일이 어디에 존재하는지에 관한 정보를 가지는 통합 파일 리스트만을 저장한다. 이에 따라, 사용자의 어떤 사용자 장치(100)에서도 서비스 서버(300)에 접속하면, 특정 파일이 존재하는 위치를 검색하고, 이를 활용할 수 있다.
도 1은 본 발명의 실시예에 따른 파일 관리 시스템의 구성을 설명하기 위한 도면이다.
도 2는 본 발명의 실시예에 따른 서비스 서버의 구성을 설명하기 위한 블록도이다.
도 3은 본 발명의 실시예에 따른 사용자 장치의 내부 구성을 개략적으로 설명하기 위한 블록도이다.
도 4a 및 도 4b는 본 발명의 실시예에 따른 파일 리스트를 통합 관리하기 위한 통합 방법을 설명하기 위한 도면이다.
도 5는 본 발명의 실시예에 따른 파일 관리를 위한 클라우드화 방법을 설명하기 위한 흐름도이다.
도 6은 본 발명의 실시예에 따른 파일 관리를 위한 클라우드 연결 방법을 설명하기 위한 흐름도이다.
도 7은 본 발명의 실시예에 따른 파일 관리를 위한 파일 검색 방법을 설명하기 위한 흐름도이다.
도 8은 본 발명의 실시예에 따른 파일 관리를 위한 파일 업로드 방법을 설명하기 위한 흐름도이다.
도 9는 본 발명의 실시예에 따른 파일 관리를 위한 파일 이동 방법을 설명하기 위한 흐름도이다.
도 10은 본 발명의 실시예에 따른 파일 관리를 위한 파일 다운로드 방법을 설명하기 위한 흐름도이다.
도 11은 본 발명의 실시예에 따른 파일 관리를 위한 파일 공유 방법을 설명하기 위한 흐름도이다.
도 2는 본 발명의 실시예에 따른 서비스 서버의 구성을 설명하기 위한 블록도이다.
도 3은 본 발명의 실시예에 따른 사용자 장치의 내부 구성을 개략적으로 설명하기 위한 블록도이다.
도 4a 및 도 4b는 본 발명의 실시예에 따른 파일 리스트를 통합 관리하기 위한 통합 방법을 설명하기 위한 도면이다.
도 5는 본 발명의 실시예에 따른 파일 관리를 위한 클라우드화 방법을 설명하기 위한 흐름도이다.
도 6은 본 발명의 실시예에 따른 파일 관리를 위한 클라우드 연결 방법을 설명하기 위한 흐름도이다.
도 7은 본 발명의 실시예에 따른 파일 관리를 위한 파일 검색 방법을 설명하기 위한 흐름도이다.
도 8은 본 발명의 실시예에 따른 파일 관리를 위한 파일 업로드 방법을 설명하기 위한 흐름도이다.
도 9는 본 발명의 실시예에 따른 파일 관리를 위한 파일 이동 방법을 설명하기 위한 흐름도이다.
도 10은 본 발명의 실시예에 따른 파일 관리를 위한 파일 다운로드 방법을 설명하기 위한 흐름도이다.
도 11은 본 발명의 실시예에 따른 파일 관리를 위한 파일 공유 방법을 설명하기 위한 흐름도이다.
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예들을 상세히 설명한다. 이 때, 첨부된 도면에서 동일한 구성 요소는 가능한 동일한 부호로 나타내고 있음에 유의한다. 또한, 본 발명의 요지를 흐리게 할 수 있는 공지 기능 및 구성에 대한 상세한 설명은 생략할 것이다. 마찬가지 이유로 첨부 도면에 있어서 일부 구성요소는 과장되거나 생략되거나 개략적으로 도시되었다.
도 1은 본 발명의 실시예에 따른 파일 관리 시스템의 구성을 설명하기 위한 도면이다.
도 1을 참조하면, 본 발명의 실시예에 따른 파일 관리 시스템은 적어도 하나의 사용자 장치(100), 적어도 하나의 스토리지 서버(200) 및 서비스 서버(300)를 포함할 수 있다.
사용자 장치(100)는 무선 혹은 유선으로 네트워크를 통해 서비스 서버(300)에 접속할 수 있는 장치가 될 수 있다. 이러한 사용자 장치(100)는 스마트 폰(Smart phone), 태블릿(Tablet), 랩탑(Laptop), 패블릿(Phablet), 개인용휴대단말기(PDA), 전자책단말기(E-book reader), 노트북(notebook) 등을 예시할 수 있다. 복수의 사용자 장치(100) 각각은 서로 다른 운영 체제(OS, Operating System)가 설치되어 운영될 수 있으며, 이러한 운영 체제는 iOS, Symbian, Android, Windows, MAC, Linux, Unix 등을 예시할 수 있다. 이에 따라, 사용자 장치(100)는 서로 다른 파일 시스템(File Systems)을 통해 파일을 관리한다.
스토리지 서버(200)는 사용자 장치(100)를 통해 생성된 파일과 관련된 서비스를 제공하기 위해 네트워크상에 설치된 장비가 될 수 있다. 파일과 관련된 서비스는 사용자의 파일을 스토리지 서버(200)에 저장하는 모든 서비스를 포함한다. 예컨대, 파일과 관련된 서비스는 Dropbox, Skydrive, Google Drive, NDrive, Evernote 등의 웹 저장소 서비스이거나, Facebook 등의 SNS(Social Network Service)이거나, FTP(File Transfer Protocol), SFTP(Secure FTP or SSH File Transfer Protocol) 등을 이용하여 파일의 저장, 업로드 및 다운로드 등을 제공하는 서비스가 될 수 있다.
서비스 서버(300)는 상술한 사용자 장치(100) 혹은 스토리지 서버(200)에 저장된 모든 사용자의 파일을 각 사용자 별로 관리하기 위한 것이다. 특히, 서비스 서버(300)는 상술한 사용자 장치(100) 혹은 스토리지 서버(200)에 저장된 파일을 미리 설정된 형식의 통합 파일 리스트로 관리한다. 이러한 통합 파일 리스트는 실제 파일이 저장되어 있지 않지만, 파일을 식별하기 위한 정보와 해당 파일이 저장된 위치에 대한 위치 정보를 포함한다. 여기서, 위치 정보는 파일이 저장된 장치를 식별하기 위한 정보이거나, 파일이 저장된 물리적인 주소 혹은 논리적인 주소 등이 될 수 있다.
도 2는 본 발명의 실시예에 따른 서비스 서버의 구성을 설명하기 위한 블록도이다.
본 발명의 실시예에 따른 서비스 서버는 통신 모듈(310), 저장 모듈(320) 및 제어 모듈(330)을 포함한다.
통신 모듈(310)은 네트워크를 통해 복수의 사용자 장치(100), 스토리지 서버(200) 등과 통신하여 데이터를 송수신한다. 여기서, 데이터는 파일 리스트를 비롯하여, 본 발명의 실시예에 따른 각종 메시지가 될 수 있다.
저장 모듈(320)은 서비스 서버(300)의 동작에 필요한 프로그램 및 데이터를 저장하는 역할을 수행하며, 프로그램 영역과 데이터 영역으로 구분될 수 있다. 프로그램 영역은 서비스 서버(300)의 전반적인 동작을 제어하는 프로그램 및 서비스 서버(300)를 부팅시키는 운영체제(OS, Operating System), 응용 프로그램 등을 저장할 수 있다. 데이터 영역은 본 발명의 실시예에 따른 통합 파일 리스트를 저장한다. 저장 모듈(330)에 저장되는 각 종 데이터는 사용자의 조작에 따라, 삭제, 변경, 추가될 수 있다. 특히, 저장 모듈(320)은 캐시(cache) 및 스토리지(storage)를 포함한다.
제어 모듈(330)은 서비스 서버(300)의 전반적인 동작 및 서비스 서버(300)의 내부 블록들 간 신호 흐름을 제어하고, 데이터를 처리하는 데이터 처리 기능을 수행할 수 있다. 이러한 제어 모듈(330)은 중앙 처리 장치(Central Processing Unit : CPU), 어플리케이션 프로세서(Application Processor) 등이 될 수 있다.
제어 모듈(330)은 통신 모듈(310)을 통해 적어도 하나의 사용자 장치(100) 혹은 적어도 하나의 스토리지 서버(200)에 저장된 파일의 파일 리스트를 수신하고, 수신된 파일 리스트를 기 설정된 형식으로 가공 혹은 변환하여 통합 파일 리스트를 생성할 수 있다. 그런 다음, 제어 모듈(330)은 생성된 통합 파일 리스트를 저장 모듈(320)에 저장한다.
제어 모듈(330)은 통신 모듈(310)을 통해 어느 한 사용자 소유의 적어도 하나의 사용자 장치(100) 및 사용자가 서비스에 가입한 적어도 하나의 스토리지 서버(200)에 저장된 사용자의 파일에 대한 파일 리스트를 수신할 수 있다. 스토리지 서버(200)의 경우, 사용자 장치(100)로부터 스토리지 서버(200)에 접근하기 위한 크리덴셜(credential)을 수신한 후, 수신된 크리덴셜을 이용하여 스토리지 서버(200)에 접근한 후, 스토리지 서버(200)에 저장된 사용자의 파일에 대한 파일 리스트를 수신할 수 있다. 그런 다음, 제어 모듈(330)은 수신된 파일 리스트를 기 설정된 형식에 따라 통합 파일 리스트로 변환한다. 이어서, 제어 모듈(330)은 변환된 통합 파일 리스트를 저장 모듈(320)에 저장한다. 여기서, 통합 파일 리스트는 파일이 실제 저장된 장소에 대한 정보를 포함한다. 따라서 제어 모듈(330)은 한 사용자가 생성한 모든 파일에 대해 하나의 통합 파일 리스트로 관리할 수 있다. 사용자 장치(100)는 사용자의 파일 중 특정 파일의 위치를 검색하기 위해, 혹은, 그 특정 파일을 사용자가 소유한 사용자 장치(100) 중 특정 사용자 장치(100)로 다운로드 하기 위해, 또는, 그 특정 파일을 다른 사용자의 사용자 장치(100)에 제공하여 공유하기 위해, 특정 파일의 위치를 요청하는 요청 메시지를 전송할 수 있다. 제어 모듈(330)은 사용자 장치(100)로부터 상술한 특정 파일의 위치를 요청하는 요청 메시지를 통신 모듈(310)을 통해 수신하면, 수신된 요청 메시지가 지시하는 특정 파일의 위치를 저장 모듈(320)에 저장된 통합 파일 리스트에서 검색하여, 특정 파일의 위치를 나타내는 위치 정보를 포함하는 응답 메시지를 통신 모듈(310)을 통해 사용자 장치(100)에 전송할 수 있다.
한편, 사용자 장치(100)는 특정 파일을 스토리지 서버(200)에 업로드할 수 있다. 이러한 경우, 유사한 속성을 가지는 파일은 동일한 스토리지 서버(200)에 업로드하는 것이 바람직하다. 이를 위하여, 사용자 장치(100)는 특정 파일의 업로드를 요청하는 요청 메시지를 서비스 서버(300)로 전송할 수 있다. 이에 따라, 제어 모듈(330)은 통신 모듈(310)을 통해 사용자 장치(100)로부터 특정 파일의 업로드를 요청하는 요청 메시지를 수신할 수 있다. 특정 파일의 업로드를 요청하는 요청 메시지는 파일의 속성을 포함한다. 이러한 속성은 예컨대, 파일의 확장자와 같은 파일의 종류, 파일을 생성한 어플리케이션, 파일을 생성한 장치 등을 포함할 수 있다. 그러면, 제어 모듈(330)은 저장 모듈(320)에 저장된 통합 파일 리스트를 검색하여, 기 설정된 알고리즘에 따라, 특정 파일과 연관된 파일이 저장된 스토리지 서버(200)를 검색한다. 여기서, 기 설정된 알고리즘에 따라, 특정 파일과 연관된 파일이 저장된 스토리지 서버(200)를 검색하는 것은, 예컨대, 유사한 속성을 가지는 파일이 저장된 스토리지 서버(200)를 검색하는 것이 될 수 있다. 그런 다음, 제어 모듈(330)은 특정 파일을 검색된 스토리지 서버(200)에 업로드하도록 하는 응답 메시지를 통신 모듈(310)을 통해 사용자 장치(100)에 전송할 수 있다. 이에 따라, 사용자 장치(100)는 해당 스토리지 서버(200)에 해당 파일을 업로드할 수 있다.
또한, 사용자 장치(100)는 특정 파일을 특정 스토리지 서버(200)로 이동시키도록 요청하는 요청 메시지를 전송할 수 있다. 이에 따라, 제어 모듈(330)은 통신 모듈(310)을 통해 사용자 장치(100)로부터 특정 파일을 특정 스토리지 서버(200)로 이동시키도록 요청하는 요청 메시지를 수신할 수 있다. 그러면, 제어 모듈(330)은 통합 파일 리스트를 검색하여, 현재 특정 파일을 저장하고 있는 스토리지 서버(200)를 검색한다. 즉, 제어 모듈(330)은 통합 파일 리스트로부터 특정 파일이 저장된 위치를 검색한다. 이로써, 특정 파일을 저장하고 있는 스토리지 서버(200)를 검색할 수 있다. 그런 다음, 제어 모듈(330)은 통신 모듈(310)을 통해 검색된 스토리지 서버(200)로부터 특정 파일을 다운로드 한 후, 다운로드한 특정 파일을 통신 모듈(310)을 통해 사용자 장치(100)가 지정한 특정 스토리지 서버(200)에 업로드할 수 있다.
도 3은 본 발명의 실시예에 따른 사용자 장치의 내부 구성을 개략적으로 설명하기 위한 블록도이다.
도 3을 참조하면, 본 발명의 실시예에 따른 사용자 장치(100)는 통신부(110), 입력부(120), 표시부(130), 저장부(140) 및 제어부(150)를 포함한다.
통신부(110)는 네트워크를 통해 스토리지 서버(200) 혹은 서비스 서버(300)와 데이터를 송수신하기 위한 것이다. 통신부(110)는 무선 통신을 수행하는 경우, 송신되는 신호의 주파수를 상승 변환 및 증폭하는 RF송신기와, 수신되는 신호를 저 잡음 증폭하고 주파수를 하강 변환하는 RF수신기 등으로 구성될 수 있다. 통신부(110)는 유선 통신을 수행하는 경우, 연결된 회선으로 데이터를 송수신하는 유선송수신기로 구성될 수 있다. 즉, 통신부(110)는 스토리지 서버(200) 혹은 서비스 서버(300)로부터 데이터를 수신하여 제어부(150)로 출력하고, 제어부(150)로부터 출력된 데이터를 스토리지 서버(200) 혹은 서비스 서버(300)로 전송할 수 있다. 이러한 통신부(110)가 전송하는 데이터는 파일 리스트를 포함할 수 있다.
입력부(120)는 사용자 장치(100)를 제어하기 위한 사용자의 키 조작을 입력받고 입력 신호를 생성하여 제어부(150)에 전달한다. 입력부(120)는 전원 on/off를 위한 전원 키, 숫자 키, 방향키 중 어느 하나를 포함할 수 있으며, 사용자 장치(100)의 일면에 소정의 기능키로 형성될 수 있다. 입력부(120)의 각 종 키들의 기능이 표시부(130)에서 이루어질 수 있으며, 표시부(130)만으로 모든 기능을 수행할 수 있는 경우, 입력부(120)는 생략될 수도 있다.
표시부(130)는 사용자 장치(100)의 메뉴, 데이터, 기능 설정 정보 및 기타 다양한 정보를 사용자에게 시각적으로 제공한다. 표시부(130)는 사용자 장치(100)의 부팅 화면, 대기 화면, 메뉴 화면, 기타 어플리케이션 화면을 출력하는 기능을 수행한다. 표시부(130)가 터치스크린으로 형성되는 경우, 입력부(120)의 기능의 일부 또는 전부를 대신 수행할 수 있다. 표시부(130)는 액정표시장치(LCD, Liquid Crystal Display), 유기 발광 다이오드(OLED, Organic Light Emitting Diodes), 능동형 유기 발광 다이오드(AMOLED, Active Matrix Organic Light Emitting Diodes) 등으로 형성될 수 있다.
저장부(140)는 사용자 장치(100)의 동작에 필요한 프로그램 및 데이터를 저장하는 역할을 수행하며, 프로그램 영역과 데이터 영역으로 구분될 수 있다. 프로그램 영역은 사용자 장치(100)의 전반적인 동작을 제어하는 프로그램 및 사용자 장치(100)를 부팅시키는 운영체제(OS, Operating System), 응용 프로그램 등을 저장할 수 있다. 데이터 영역은 사용자 장치(100)의 사용에 따라 발생하는 사용자 데이터가 저장되는 영역이다. 또한, 저장부(140)는 사용자의 사용자 장치(100) 사용에 따라 발생되는 각 종 데이터를 저장할 수 있다. 저장부(140)에 저장되는 각 종 데이터는 사용자의 조작에 따라, 삭제, 변경, 추가될 수 있다.
제어부(150)는 사용자 장치(100)의 전반적인 동작 및 사용자 장치(100)의 내부 블록들 간 신호 흐름을 제어하고, 데이터를 처리하는 데이터 처리 기능을 수행할 수 있다. 이러한 제어부(150)는 중앙 처리 장치(Central Processing Unit : CPU), 어플리케이션 프로세서(Application Processor) 등이 될 수 있다.
제어부(150)는 저장부(140)에 저장된 사용자 파일에 대한 파일 리스트를 통신부(110)를 통해 서비스 서버(300)로 전송할 수 있다. 그리고 제어부(150)는 사용자가 가입한 서비스를 제공하는 적어도 하나의 스토리지 서버(200)에 접속하여 스토리지 서버(200)에 접근할 수 있는 크리덴셜을 획득할 수 있다. 그런 다음, 제어부(150)는 서비스 서버(300)가 스토리지 서버(200)로부터 스토리지 서버(200)에 저장된 사용자의 파일에 대한 파일 리스트를 수신할 수 있도록 크리덴셜을 통신부(110)를 통해 서비스 서버(300)로 전송할 수 있다. 이에 따라, 서비스 서버(300)는 특정 사용자의 모든 파일에 대한 파일 리스트를 수신하여, 통합 파일 리스트를 생성할 수 있다.
한편, 제어부(150)는 서비스 서버(300)에 특정 파일의 위치를 요청하는 요청 메시지를 통신부(110)를 통해 전송할 수 있다. 이에 따라, 서비스 서버(300)는 통합 파일 리스트에서 특정 파일의 위치를 검색하여, 그 위치를 나타내는 위치 정보가 포함된 응답 메시지를 전송할 것이다. 그러면, 제어부(150)는 통신부(110)를 통해 응답 메시지를 수신하고, 수신된 응답 메시지로부터 특정 파일의 위치를 나타내는 위치 정보를 획득할 수 있다. 위치 정보를 획득한 제어부(150)는 위치 정보를 표시하거나, 위치 정보를 참조하여 특정 파일을 다운로드하거나, 또는, 다른 사용자 장치가 특정 파일을 다운로드하도록 위치 정보를 다른 사용자의 사용자 장치(100)로 전송하여, 특정 파일을 다른 사용자와 공유할 수 있다.
또한, 제어부(150)는 특정 파일의 업로드를 요청하는 요청 메시지를 통신부(110)를 통해 서비스 서버(300)로 전송할 수 있다. 특정 파일의 업로드를 요청하는 요청 메시지는 파일의 속성을 포함한다. 이러한 속성은 예컨대, 파일의 확장자와 같은 파일의 종류, 파일을 생성한 어플리케이션, 파일을 생성한 장치 등을 포함할 수 있다. 그러면, 서비스 서버(300)는 통합 파일 리스트를 검색하여, 기 설정된 알고리즘에 따라, 특정 파일과 연관된 파일이 저장된 스토리지 서버(200)를 검색한다. 예컨대, 서비스 서버(300)는 유사한 속성을 가지는 파일이 저장된 스토리지 서버(200)를 검색할 수 있다. 그런 다음, 서비스 서버(300)는 특정 파일을 검색된 스토리지 서버(200)에 업로드하도록 하는 응답 메시지를 사용자 장치(100)에 전송할 수 있다. 이에 따라, 제어부(150)는 통신부(110)를 통해 응답 메시지를 수신하여, 응답 메시지가 지정하는 해당 스토리지 서버(200)에 해당 파일을 업로드할 수 있다.
그리고 제어부(150)는 서비스 서버(300)가 특정 파일을 특정 스토리지 서버(200)로 이동시키도록 요청하는 요청 메시지를 통신부(110)를 통해 서비스 서버(300)로 전송할 수 있다. 그러면, 서비스 서버(300)는 통합 파일 리스트를 검색하여, 특정 파일이 현재 저장된 스토리지 서버(200)를 검색한다. 그런 다음, 서비스 서버(300)는 검색된 스토리지 서버(200)로부터 특정 파일을 다운로드 한 후, 다운로드한 특정 파일을 사용자 장치(100)가 지정한 특정 스토리지 서버(200)에 업로드할 것이다.
도 4a 및 도 4b는 본 발명의 실시예에 따른 파일 리스트를 통합 관리하기 위한 통합 방법을 설명하기 위한 도면이다.
도 4a를 참조하면, 도면 부호 410 및 420은 예컨대, 파일과 관련된 서비스를 제공하는 스토리지 서버(200)에 저장된 파일에 대한 실제 파일 리스트이다. 예컨대, 도면 부호 410은 Dropbox에 저장된 파일의 실제 파일 리스트이며, 도면 부호 420은 FTP 사이트에 저장된 실제 파일 리스트라고 가정한다. 또한, 도면 후보 430은 특정 사용자 장치(100)의 하드디스크에 저장된 파일의 실제 파일 리스트라고 가정한다.
이러한 실제의 파일 리스트는 사용자 장치(100) 혹은 스토리지 서버(200)에 의해 서비스 서버(300)에 전달된다. 서비스 서버(300)는 실제의 파일 리스트를 기 설정된 형식에 따라 가상의 통합 파일 리스트로 변환한다.
예컨대, 서비스 서버(300)는 실제의 파일 리스트를 기 설정된 형식으로 필요에 따라 분할한다. 여기서, 도면 부호 411, 412, 413은 Dropbox에 저장된 파일의 실제 파일 리스트(410)를 분할한 것이며, 도면 부호 421, 422는 FTP 사이트에 저장된 실제 파일 리스트(420)를 분할한 것이다. 그런 다음, 서비스 서버(300)는 분할된 파일 리스트를 기 설정된 형식에 따라 분류한다. 도면 부호 401, 402, 403 및 404는 이러한 분류를 나타낸다.
도 4b를 참조하면, 서비스 서버(300)는 분류한 파일 리스트를 가상의 통합 파일 리스트로 변환한다. 도면 부호 501 내지 504 및 521 내지 541은 루트(ROOT)를 기준으로 하고, 각 장치(사용자 장치(100) 혹은 스토리지 서버(200))에 대한 파일 리스트가 트리 구조 혹은 디렉토리 구조로 정의된 통합 파일 리스트를 나타낸다. 이러한 통합 파일 리스트는 파일에 대한 정보 및 파일이 저장된 위치에 대한 정보를 포함한다.
그러면, 보다 상세히 본 발명의 실시예에 따른 파일 관리 방법에 대해서 설명하기로 한다.
도 5는 본 발명의 실시예에 따른 파일 관리를 위한 클라우드화 방법을 설명하기 위한 흐름도이다. 도 5에 제1 및 제2 사용자 장치(101, 102)가 보인다. 제1 및 제2 사용자 장치(101, 102)는 동일한 사용자 소유의 장치이다. 예컨대, 제1 사용자 장치(101)는 안드로이드(Android)를 운영 체제로 하는 스마트폰이 될 수 있으며, 제2 사용자 장치(102)는 윈도우즈(Windows)를 운영 체제로 하는 랩탑 혹은 노트북이 될 수 있다.
도 5를 참조하면, 제1 사용자 장치(101)는 S110 단계에서 제1 사용자 장치(101) 자신에 저장되어 있는 모든 파일에 대한 파일 리스트를 서비스 서버(300)로 전송한다. 그러면, 이를 수신한 서비스 장치(300)는 S120 단계에서 모든 파일 리스트를 기 설정된 형식의 통합 파일 리스트로 가공한 후 저장한다.
제2 사용자 장치(102)는 S130 단계에서 제2 사용자 장치(102) 자신에 저장되어 있는 모든 파일에 대한 파일 리스트를 서비스 서버(300)로 전송한다. 그러면, 이를 수신한 서비스 장치(300)는 S140 단계에서 모든 파일 리스트를 앞서 S120 단계와 동일한 기 설정된 형식의 통합 파일 리스트로 가공한 후, 저장한다.
본 발명에 따르면, 상술한 바와 같이 복수의 사용자 장치(100) 각각에 저장된 모든 파일의 파일 리스트를 수신하여, 동일한 형식의 통합 파일 리스트로 통합할 수 있다.
도 6은 본 발명의 실시예에 따른 파일 관리를 위한 클라우드 연결 방법을 설명하기 위한 흐름도이다. 도 6에 사용자 장치(100)가 존재하며, 사용자 장치(100)는 특정 운영 체제를 사용하는 장치라고 가정한다. 여기서, 운영 체제는 안드로이드(Android), 윈도우즈(Windows) 등을 예시할 수 있다. 또한, 사용자 장치(100)의 사용자는 스토리지 서버(200)가 제공하는 서비스에 가입된 상태라고 가정한다. 여기서, 스토리지 서버(200)는 클라우드 서비스를 제공하기 위한 서버가 될 수 있다. 이 클라우드 서비스는 Dropbox, Skydrive, NDrive, Google Drive 등을 예시할 수 있다. 또는, 스토리지 서버(200)는 SNS 서비스를 제공하기 위한 서버가 될 수도 있다. 이 SNS 서비스는 대표적으로 Facebook을 예시할 수 있다. 혹은, 스토리지 서버(200)는 파일 서비스를 제공하기 위한 파일 서버, 예컨대, FTP(File Transfer Protocol)를 이용하는 서버가 될 수 있다.
도 6을 참조하면, 사용자 장치(100)는 S210 단계에서 스토리지 서버(200)에 접속하고, 크리덴셜(credential)을 얻을 수 있다. 여기서, 크리덴셜은 사용자 장치(100)의 사용자의 계정에 대한 크리덴셜이 될 수 있다. 그러면, 사용자 장치(100)는 S220 단계에서 크리덴셜을 서비스 서버(300)에 전송한다.
서비스 서버(300)는 S230 단계에서 크리덴셜을 통해 스토리지 서버(200)에 접속한다. 그런 다음, 서비스 서버(300)는 S240 단계에서 스토리지 서버(200)에 저장된 사용자 장치(100)의 사용자의 파일의 파일 리스트를 요청하는 요청 메시지를 전송한다. 그러면, 스토리지 서버(200)는 S250 단계에서 파일 리스트를 서비스 서버(300)에 전송한다. 그러면, 서비스 서버(300)는 S260 단계에서 해당 파일 리스트를 앞서 도 5의 S120 단계 및 S140 단계와 동일한 기 설정된 형식의 통합 파일 리스트로 가공한 후, 저장할 수 있다. 이어서, 서비스 서버(300)는 S270 단계에서 절차가 완료되었음을 알리는 완료 메시지를 사용자 장치(100)에 전송한다.
도 5 및 도 6과 같은 절차가 수행된다면, 도 6에서 설명된 바와 같이, 스토리지 서버(200)에 저장된 모든 파일의 파일 리스트를 수신하여, 도 5에서 설명된 바와 같은 사용자 장치(100)의 통합 파일 리스트와 동일한 형식의 하나의 통합 파일 리스트로 통합할 수 있다. 이러한 도 5 및 도 6과 같은 절차는 그 순서에 무관하게 수행될 수 있다. 또한, 도 6에서는 하나의 스토리지 서버(200)에 대해서만 설명했지만, 사용자 장치(100)의 사용자가 가입한 서비스를 운영하는 복수의 스토리지 서버(200) 각각에 대해서도 동일한 절차를 통해 각 스토리지 서버(200)에 저장된 파일에 대한 파일 리스트를 수신하여, 동일한 형식의 하나의 통합 파일 리스트로 통합할 수 있다.
도 7은 본 발명의 실시예에 따른 파일 관리를 위한 파일 검색 방법을 설명하기 위한 흐름도이다. 먼저, 서비스 장치(300)는 사용자가 소유한 복수의 사용자 장치(100) 및 그 사용자가 가입한 서비스를 제공하는 복수의 스토리지 서버(200)에 저장된 사용자의 모든 파일에 대해 도 5 및 도 6과 같은 절차를 통해 파일 리스트를 수신한 후, 동일한 형식으로 가공한 통합 파일 리스트를 저장한 상태라고 가정한다.
도 7을 참조하면, 사용자가 특정 파일의 저장 위치를 알기 위해 파일 위치를 질의하는 입력을 하면, 사용자 장치(100)는 S310 단계에서 파일 위치 요청 메시지를 서비스 서버(300)로 전송한다. 여기서, 파일 위치 요청 메시지는 특정 파일의 저장 위치를 요청하기 위한 것이다. 그러면, 서비스 서버(300)는 S320 단계에서 기 저장된 통합 파일 리스트를 검색한다. 이 통합 파일 리스트는 도 5 및 도 6과 같은 절차를 통해 저장된 것이다.
해당 파일의 위치가 검색되면, 서비스 서버(300)는 S330 단계에서 파일이 저장된 위치를 나타내는 정보인 위치 정보를 포함하는 파일 위치 응답 메시지를 사용자 장치(100)로 전송한다. 이에 따라, 사용자 장치(100)는 해당 파일의 위치를 표시할 수 있다.
도 8은 본 발명의 실시예에 따른 파일 관리를 위한 파일 업로드 방법을 설명하기 위한 흐름도이다. 도 8에서, 서비스 장치(300)는 사용자가 소유한 복수의 사용자 장치(100) 및 그 사용자가 가입한 서비스를 제공하는 복수의 스토리지 서버(200)에 저장된 사용자의 모든 파일에 대해 도 5 및 도 6과 같은 절차를 통해 파일 리스트를 수신한 후, 동일한 형식으로 가공한 통합 파일 리스트를 저장한 상태라고 가정한다.
도 8을 참조하면, 사용자가 특정 파일을 업로드하는 명령을 입력하면, 사용자 장치(100)는 S410 단계에서 업로드 위치 요청 메시지를 서비스 서버(300)로 전송한다. 업로드 위치 요청 메시지는 업로드할 파일의 파일명, 속성 등을 포함할 수 있다. 이러한 속성은 예컨대, 파일의 확장자와 같은 파일의 종류, 파일을 생성한 어플리케이션, 파일을 생성한 장치 등을 포함할 수 있다.
서비스 서버(300)는 기 저장된 통합 파일 리스트를 검색하여, 복수의 스토리지 서버(200)(혹은 사용자 장치(100)) 중 기 설정된 알고리즘에 따라 업로드하고자 하는 파일과 가장 관련 있는 파일이 저장된 스토리지 서버(200)를 업로드할 위치로 결정할 수 있다. 예컨대, 유사한 속성을 가지는 파일이 저장된 스토리지 서버(200)를 검색하는 것이 될 수 있다. 이때, 파일을 업로드할 위치가 결정되면 해당 파일에 대한 위치 정보가 통합 파일 리스트에 추가된다.
그런 다음, 서비스 서버(300)는 S430 단계에서 결정된 위치(즉, 장치)를 알리는 업로드 위치 응답 메시지를 사용자 장치(100)로 전송한다. 여기서, 서비스 서버(300)가 결정한 업로드 위치는 스토리지 서버(200)라고 가정한다. 그러면, 사용자 장치(100)는 S440 단계에서 해당 파일을 스토리지 서버(200)에 업로드한다. 업로드가 완료도면, 스토리지 서버(200)는 S450 단계에서 업로드가 완료되었음을 알리는 업로드 확인 메시지를 사용자 장치(100)로 전송한다.
도 9는 본 발명의 실시예에 따른 파일 관리를 위한 파일 이동 방법을 설명하기 위한 흐름도이다. 도 9에서, 서비스 장치(300)는 사용자가 소유한 복수의 사용자 장치(100) 및 그 사용자가 가입한 서비스를 제공하는 복수의 스토리지 서버(200)에 저장된 사용자의 모든 파일에 대해 도 5 및 도 6과 같은 절차를 통해 파일 리스트를 수신한 후, 동일한 형식으로 가공한 통합 파일 리스트를 저장한 상태라고 가정한다.
도 9를 참조하면, 사용자 장치(100)는 S510 단계에서 특정 파일을 이동할 것을 요청하는 파일 이동 요청 메시지를 서비스 서버(300)로 전송한다.
파일 이동 요청 메시지를 수신한 서비스 서버(300)는 S520 단계에서 특정 파일의 위치를 확인하고, 이동될 파일의 위치를 결정한다. 이에 따라, 통합 파일 리스트가 갱신된다. 여기서, 특정 파일의 현 위치는 제1 스토리지 서버(200)이며, 이동할 위치는 제2 스토리지 서버(200)라고 가정한다. 그러면, 서비스 서버(300)는 S530 단계에서 제1 스토리지 서버(201)로부터 특정 파일을 다운로드한 후, S540 단계에서 특정 파일을 제2 스토리지 서버(202)에 업로드한다.
그런 다음, 서비스 서버(300)는 S550 단계에서 파일이 제1 스토리지 서버(201)에서 제2 스토리지 서버(202)로 이동하였음을 알리는 파일 이동 완료 메시지를 사용자 장치(100)로 전송한다.
도 10은 본 발명의 실시예에 따른 파일 관리를 위한 파일 다운로드 방법을 설명하기 위한 흐름도이다. 제1 및 제2 사용자 장치(101, 102)는 동일한 사용자 소유의 장치이다. 예컨대, 제1 사용자 장치(101)는 안드로이드(Android)를 운영 체제로 하는 스마트폰이 될 수 있으며, 제2 사용자 장치(102)는 윈도우즈(Windows)를 운영 체제로 하는 랩탑 혹은 노트북이 될 수 있다. 도 10에서, 서비스 장치(300)는 사용자가 소유한 복수의 사용자 장치(100: 101, 102) 및 그 사용자가 가입한 서비스를 제공하는 복수의 스토리지 서버(200)에 저장된 사용자의 모든 파일에 대해 도 5 및 도 6과 같은 절차를 통해 파일 리스트를 수신한 후, 동일한 형식으로 가공한 통합 파일 리스트를 저장한 상태라고 가정한다.
도 10을 참조하면, 제1 사용자 장치(101)는 S610 단계에서 특정 파일을 다운로드 하기 위해 다운로드할 파일의 위치를 요청하는 파일 위치 요청 메시지를 서비스 서버(300)로 전송한다.
파일 위치 요청 메시지를 수신한 서비스 서버(300)는 S620 단계에서 통합 파일 리스트를 통해 요청된 특정 파일의 위치를 검색한다. 그런 다음, 서비스 서버(300)는 S630 파일 위치 응답 메시지를 제1 사용자 장치(101)로 전송한다. 이러한 파일 위치 응답 메시지는 특정 파일의 위치를 나타내는 정보인 위치 정보를 포함한다. 예컨대, 현재 특정 파일이 저장된 위치는 제2 사용자 장치(102)에 있으며, 파일이 저장된 IP 주소는 192.248.4.41이라고 가정한다. 그러면, 파일 다운로드 응답 메시지는 그 위치 정보로 파일이 저장된 장치인 제2 사용자 장치(102)를 식별하는 정보와, IP 주소인 192.248.4.41을 포함할 수 있다.
파일 위치 응답 메시지를 수신한 제1 사용자 장치(101)는 S640 단계에서 파일 위치 응답 메시지에 포함된 위치 정보를 이용하여, 제2 사용자 장치(102)에 파일의 다운로드를 요청한다. 그런 다음, 제1 사용자 장치(101)는 S650 단계에서 제2 사용자 장치(102)로부터 파일을 다운로드 한다.
도 11은 본 발명의 실시예에 따른 파일 관리를 위한 파일 공유 방법을 설명하기 위한 흐름도이다. 제1 및 제2 사용자 장치(101, 102)는 동일한 사용자 소유의 장치이며, 제3 사용자 장치는 다른 사용자 소유의 장치이다. 예컨대, 제1 사용자 장치(101)는 안드로이드(Android)를 운영 체제로 하는 스마트폰이 될 수 있으며, 제2 사용자 장치(102)는 윈도우즈(Windows)를 운영 체제로 하는 랩탑 혹은 노트북이 될 수 있다. 또한, 제3 사용자 장치는 iOS를 운영체제로 하는 장치가 될 수 있다. 도 11에서, 서비스 장치(300)는 사용자가 소유한 복수의 사용자 장치(100: 101, 102) 및 그 사용자가 가입한 서비스를 제공하는 복수의 스토리지 서버(200)에 저장된 사용자의 모든 파일에 대해 도 5 및 도 6과 같은 절차를 통해 파일 리스트를 수신한 후, 동일한 형식으로 가공한 통합 파일 리스트를 저장한 상태라고 가정한다.
도 11에서, 제1 사용자 장치(101)의 사용자는 제3 사용자 장치(103)의 사용자와 파일을 공유하고자 하는 상황을 상정한다. 이러한 제1 사용자 장치(101)의 사용자의 요청에 따라, 제1 사용자 장치(101)는 S710 단계에서 특정 파일의 공유를 위해 특정 파일의 위치에 대한 정보를 요청하는 파일 위치 요청 메시지를 서비스 서버(300)로 전송한다.
파일 위치 요청 메시지를 수신한 서비스 서버(300)는 S720 단계에서 통합 파일 리스트를 검색하여 현재 파일의 위치를 확인한다. 그런 다음, 서비스 서버(300)는 S730 단계에서 파일 위치 응답 메시지를 제1 사용자 장치(101)로 전송한다. 이러한 파일 위치 응답 메시지는 파일이 저장된 위치에 대한 정보를 포함한다. 예컨대, 현재 특정 파일이 저장된 위치는 제2 사용자 장치(102)에 있으며, 파일이 저장된 주소는 md.gg/aa/myfile이라고 가정한다. 그러면, 파일 위치 응답 메시지는 파일이 저장된 위치 정보로, 제2 사용자 장치(102)를 식별하는 정보와, 주소인 md.gg/aa/myfile를 포함할 수 있다.
파일 위치 응답 메시지를 수신한 서비스 서버(300)는 S740 단계에서 파일이 저장된 위치를 나타내는 위치 정보를 링크 정보의 형식으로 제3 사용자 장치(103)로 전송한다. 그러면, 제3 사용자 장치(103)는 S750 단계에서 제2 사용자 장치(102)에 파일을 요청하고, S760 단계에서 파일을 수신한다.
상술한 바와 같이, 본 발명은 한 사용자가 소유한 사용자 장치(100)를 "클라우드화"시킨다. 이는 사용자 장치(100)들이 배터리 기술의 발전으로 대부분의 시간 동안 켜져 있고, 켜져 있는 동안은 항상 네트워크, 즉, 인터넷에 연결되어있기 때문에 가능하다. 이에 따라, 각 사용자 장치(100)는 서버와 같은 성격을 만족하며, 각 사용자 장치(100)는 클라우드처럼 활용될 수 있는 개별 클라우드 스토리지 서버화된다. 다음으로 클라우드화된 사용자 장치(100)들과 실제 클라우드 저장소들 및 다양한 서비스를 제공하는 어플리케이션 서버, 즉, 스토리지 서버(200)들을 통합하여 서비스 서버(300)에 통합 파일 리스트를 생성한다. 서비스 서버(300)는 직접 파일은 저장하지 않고 파일이 어디에 존재하는지에 관한 정보를 가지는 통합 파일 리스트만을 저장한다. 이에 따라, 사용자의 어떤 사용자 장치(100)에서도 서비스 서버(300)에 접속하면, 특정 파일이 존재하는 위치를 검새하고, 이를 활용할 수 있다.
본 발명에 따른 파일 관리를 위한 방법은 다양한 컴퓨터 수단을 통하여 판독 가능한 소프트웨어 형태로 구현되어 컴퓨터로 판독 가능한 기록매체에 기록될 수 있다. 여기서, 기록매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 기록매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 예컨대 기록매체는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(Magnetic Media), CD-ROM(Compact Disk Read Only Memory), DVD(Digital Video Disk)와 같은 광 기록 매체(Optical Media), 플롭티컬 디스크(Floptical Disk)와 같은 자기-광 매체(Magneto-Optical Media), 및 롬(ROM), 램(RAM, Random Access Memory), 플래시 메모리, SSD(Solid State Disk), HDD(Hard Disk Drive) 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치를 포함한다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함할 수 있다.
한편, 본 명세서와 도면에 개시된 본 발명의 실시예들은 본 발명이 기술 내용을 쉽게 설명하고 본 발명의 이해를 돕기 위해 특정 예를 제시한 것일 뿐이며, 본 발명의 범위를 한정하고자 하는 것은 아니다. 여기에 개시된 실시예들 이외에도 본 발명의 기술적 사상에 바탕을 둔 다른 변형예들이 실시 가능하다는 것은 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 자명한 것이다.
100: 사용자 장치
110: 통신부
120: 입력부 130: 표시부
140: 저장부 150: 제어부
200: 스토리지 서버 300: 서비스 서버
310: 통신 모듈 320: 저장 모듈
330: 제어 모듈
120: 입력부 130: 표시부
140: 저장부 150: 제어부
200: 스토리지 서버 300: 서비스 서버
310: 통신 모듈 320: 저장 모듈
330: 제어 모듈
Claims (11)
- 데이터 저장을 위한 저장 모듈;
통신을 위한 통신 모듈;
상기 통신 모듈을 통해, 적어도 하나의 사용자 장치 및 사용자가 서비스에 가입한 적어도 하나의 스토리지 서버 중 적어도 어느 하나에 저장된 상기 사용자의 파일에 대한 파일 리스트를 수신하고, 수신된 파일 리스트를 기 설정된 형식에 따라 통합 파일 리스트로 변환하며, 변환된 통합 파일 리스트를 상기 저장 모듈에 저장하는 제어 모듈;을 포함하는 것을 특징으로 하는 파일 관리를 위한 서비스 서버. - 제1항에 있어서,
상기 통합 파일 리스트는
상기 파일이 실제 저장된 위치에 대한 정보를 포함하는 것을 특징으로 하는 파일 관리를 위한 서비스 서버. - 제2항에 있어서,
상기 파일이 실제 저장된 위치에 대한 정보는, 상기 사용자 장치 또는 스토리지 서버 중 실제 파일이 저장되어 있는 장치에 대한 식별 정보를 포함하는 것을 특징으로 하는 파일 관리를 위한 서비스 서버. - 제3항에 있어서,
상기 파일이 실제 저장된 위치에 대한 정보는, 상기 실제 파일이 저장되어 있는 장치의 IP 주소 정보를 더 포함하는 것을 특징으로 하는 파일 관리를 위한 서비스 서버. - 제1항에 있어서,
상기 제어 모듈은
상기 통신 모듈을 통해 사용자 장치로부터 특정 파일의 위치를 요청하는 요청 메시지를 수신하면, 수신된 요청 메시지가 지시하는 파일의 위치를 상기 통합 파일 리스트에서 검색하여, 상기 파일의 위치에 대한 정보를 포함하는 응답 메시지를 상기 사용자 장치에 전송하는 것을 특징으로 하는 파일 관리를 위한 서비스 서버. - 제1항에 있어서,
상기 제어 모듈은
상기 통신 모듈을 통해 사용자 장치로부터 특정 파일의 업로드를 요청하는 요청 메시지를 수신하면, 상기 통합 파일 리스트를 검색하여, 기 설정된 알고리즘에 따라, 상기 특정 파일과 연관된 파일이 저장된 스토리지 서버를 검색하고, 상기 특정 파일을 검색된 스토리지 서버에 업로드하도록 하는 응답 메시지를 상기 통신 모듈을 통해 상기 사용자 장치에 전송하는 것을 특징으로 하는 파일 관리를 위한 서비스 서버. - 제1항에 있어서,
상기 제어 모듈은
상기 통신 모듈을 통해 사용자 장치로부터 특정 파일을 특정 스토리지 서버로 이동시키도록 요청하는 요청 메시지를 수신하면, 상기 통합 파일 리스트를 검색하여, 상기 특정 파일이 현재 저장된 스토리지 서버를 검색하고, 검색된 스토리지 서버로부터 상기 특정 파일을 다운로드 한 후, 다운로드한 특정 파일을 상기 특정 스토리지 서버에 업로드하는 것을 특징으로 하는 파일 관리를 위한 서비스 서버. - 적어도 하나의 사용자 장치 및 사용자가 서비스에 가입한 적어도 하나의 스토리지 서버 중 적어도 어느 하나에 저장된 상기 사용자의 파일에 대한 파일 리스트를 수신하는 단계; 및
상기 수신된 파일 리스트를 기 설정된 형식에 따라 통합 파일 리스트로 가공하여, 가공된 통합 파일 리스트를 저장하는 단계;를 포함하는 것을 특징으로 하는 서비스 서버의 파일 관리 방법. - 제8항에 있어서,
상기 통합 파일 리스트는
상기 파일이 실제 저장된 위치에 대한 정보를 포함하는 것을 특징으로 하는 서비스 서버의 파일 관리를 위한 방법. - 제8항에 있어서,
상기 통신 모듈을 통해 사용자 장치로부터 특정 파일의 위치를 요청하는 요청 메시지를 수신하면, 수신된 요청 메시지가 지시하는 파일의 위치를 상기 통합 파일 리스트에서 검색하여, 상기 파일의 위치에 대한 정보를 포함하는 응답 메시지를 상기 사용자 장치에 전송하는 단계를 더 포함하는 것을 특징으로 하는 서비스 서버의 파일 관리를 위한 방법. - 제8항에 있어서,
상기 통신 모듈을 통해 사용자 장치로부터 특정 파일의 업로드를 요청하는 요청 메시지를 수신하면, 상기 통합 파일 리스트를 검색하여, 기 설정된 알고리즘에 따라, 상기 특정 파일과 연관된 파일이 저장된 스토리지 서버를 검색하고, 상기 특정 파일을 검색된 스토리지 서버에 업로드하도록 하는 응답 메시지를 상기 통신 모듈을 통해 상기 사용자 장치에 전송하는 단계를 더 포함하는 것을 특징으로 하는 서비스 서버의 파일 관리를 위한 방법.
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020140000147A KR20150080722A (ko) | 2014-01-02 | 2014-01-02 | 파일을 관리하기 위한 장치 및 이를 위한 방법 |
PCT/KR2014/000069 WO2015102133A1 (ko) | 2014-01-02 | 2014-01-03 | 파일을 관리하기 위한 장치 및 이를 위한 방법 |
US14/151,858 US20150227549A1 (en) | 2014-01-02 | 2014-01-10 | Device and method for managing files |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020140000147A KR20150080722A (ko) | 2014-01-02 | 2014-01-02 | 파일을 관리하기 위한 장치 및 이를 위한 방법 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20150080722A true KR20150080722A (ko) | 2015-07-10 |
Family
ID=53493471
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020140000147A KR20150080722A (ko) | 2014-01-02 | 2014-01-02 | 파일을 관리하기 위한 장치 및 이를 위한 방법 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20150227549A1 (ko) |
KR (1) | KR20150080722A (ko) |
WO (1) | WO2015102133A1 (ko) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018012649A1 (ko) * | 2016-07-13 | 2018-01-18 | 헬로우링크 주식회사 | 식별번호를 이용한 파일 검색방법 |
WO2018012650A1 (ko) * | 2016-07-13 | 2018-01-18 | 헬로우링크 주식회사 | 식별번호를 이용한 파일 검색방법 |
KR20190007558A (ko) * | 2017-07-12 | 2019-01-23 | 엔에이치엔엔터테인먼트 주식회사 | 디바이스를 무선으로 연결하는 방법 및 시스템 |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102232217B1 (ko) * | 2014-08-25 | 2021-03-26 | 삼성전자주식회사 | 전자 장치 및 전자 장치의 파일 전송 관리 방법 |
US10425477B2 (en) * | 2015-09-15 | 2019-09-24 | Microsoft Technology Licensing, Llc | Synchronizing file data between computer systems |
EP3301885A1 (en) * | 2016-10-03 | 2018-04-04 | Gemalto Sa | Method, data sending control server, storage server, processing server and system for sending data to at least one device |
CN114510456A (zh) * | 2022-01-25 | 2022-05-17 | 统信软件技术有限公司 | 一种文件搜索方法、下载装置及计算设备 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100905494B1 (ko) * | 2007-09-07 | 2009-07-01 | 박수민 | 파일 관리 시스템 및 파일 관리를 실행하기 위한프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체 |
KR101626117B1 (ko) * | 2009-06-22 | 2016-05-31 | 삼성전자주식회사 | 클라우드 스토리지를 제공하는 클라이언트, 중개 서버 및 방법 |
US8799322B2 (en) * | 2009-07-24 | 2014-08-05 | Cisco Technology, Inc. | Policy driven cloud storage management and cloud storage policy router |
KR101638436B1 (ko) * | 2010-12-10 | 2016-07-12 | 한국전자통신연구원 | 클라우드 스토리지 및 그의 관리 방법 |
KR20130053070A (ko) * | 2011-11-15 | 2013-05-23 | 최진기 | 클라우드 통합 매니저 |
JP5301042B1 (ja) * | 2013-01-18 | 2013-09-25 | 株式会社エヌジェーケー | 仲介サーバ及び携帯端末用プログラム |
US20140282938A1 (en) * | 2013-03-15 | 2014-09-18 | Adam Moisa | Method and system for integrated cloud storage management |
-
2014
- 2014-01-02 KR KR1020140000147A patent/KR20150080722A/ko not_active Application Discontinuation
- 2014-01-03 WO PCT/KR2014/000069 patent/WO2015102133A1/ko active Application Filing
- 2014-01-10 US US14/151,858 patent/US20150227549A1/en not_active Abandoned
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018012649A1 (ko) * | 2016-07-13 | 2018-01-18 | 헬로우링크 주식회사 | 식별번호를 이용한 파일 검색방법 |
WO2018012650A1 (ko) * | 2016-07-13 | 2018-01-18 | 헬로우링크 주식회사 | 식별번호를 이용한 파일 검색방법 |
KR20190007558A (ko) * | 2017-07-12 | 2019-01-23 | 엔에이치엔엔터테인먼트 주식회사 | 디바이스를 무선으로 연결하는 방법 및 시스템 |
Also Published As
Publication number | Publication date |
---|---|
WO2015102133A1 (ko) | 2015-07-09 |
US20150227549A1 (en) | 2015-08-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10762055B2 (en) | Utilizing user devices for backing up and retrieving data in a distributed backup system | |
KR20150080722A (ko) | 파일을 관리하기 위한 장치 및 이를 위한 방법 | |
US9628582B2 (en) | Social-driven precaching of accessible objects | |
KR102354803B1 (ko) | 웹 어플리케이션 관리를 위한 사용자 장치 및 그 방법 | |
US9047321B2 (en) | Prioritizing downloading of image files | |
KR101850817B1 (ko) | 서로 다른 단말에 어플리케이션을 자동으로 설치하는 장치 및 방법 | |
US8954394B2 (en) | Using mobile devices of a user as an edge cache to stream video files | |
US8527549B2 (en) | Cloud based operating and virtual file system | |
US9961229B2 (en) | Image forming apparatus supporting near-field communication (NFC) function, and method of previewing scan data of image forming apparatus on mobile terminal | |
US20120271903A1 (en) | Shared resource and virtual resource management in a networked environment | |
US8805790B1 (en) | Backing up audio and video files across mobile devices of a user | |
US20150163282A1 (en) | System and method for accessing remote disk images using a vmedia client and through a remote access appliance | |
CN108306966B (zh) | 文档处理方法、装置、系统、终端及服务器 | |
JP2015207088A (ja) | 情報処理システム、情報処理装置及びプログラム | |
JP2015130154A (ja) | 情報処理装置、プログラム、情報管理方法 | |
KR20150138715A (ko) | 클라우드 서비스를 이용한 데이터 저장 방법 및 이를 위한 장치 | |
US10545834B1 (en) | Server-assisted network data archiving | |
US20160080439A1 (en) | Media Sharing Device | |
KR20130127158A (ko) | 근거리 무선통신을 이용한 휴대단말기 사이의 파일 공유 방법 | |
US11570329B2 (en) | Transmission device, communication system, and display device | |
KR20120065674A (ko) | 다른 기기를 대신하여 파일을 다운로드 받는 기기 및 및 그 동작방법 | |
US11573811B2 (en) | Virtual desktop configuration system | |
US20170195421A1 (en) | Cloud data storage system and method thereof | |
KR20140136155A (ko) | 클라우드 서비스 시스템에서의 위치 기반의 정보 공유 방법, 이를 위한 장치 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E601 | Decision to refuse application |