KR102180472B1 - Method and Apparatus of Managing Cache Data - Google Patents
Method and Apparatus of Managing Cache Data Download PDFInfo
- Publication number
- KR102180472B1 KR102180472B1 KR1020130107507A KR20130107507A KR102180472B1 KR 102180472 B1 KR102180472 B1 KR 102180472B1 KR 1020130107507 A KR1020130107507 A KR 1020130107507A KR 20130107507 A KR20130107507 A KR 20130107507A KR 102180472 B1 KR102180472 B1 KR 102180472B1
- Authority
- KR
- South Korea
- Prior art keywords
- cache data
- cache
- data
- network performance
- cloud servers
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
-
- 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
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/067—Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Human Computer Interaction (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
본 발명의 일 실시예는, 캐시 데이터 관리 방법에 있어서, 복수의 클라우드 서버와 연결된 디바이스와 복수의 클라우드 서버 간의 네트워크 성능을 각각 측정하는 단계, 측정된 네트워크 성능에 기초하여, 복수의 클라우드 서버 내에 저장된 데이터의 전체량 중 캐시 데이터로 저장하는 데이터 양의 비율을, 복수의 클라우드 서버 각각에 대하여 결정하는 단계를 포함하는 것을 특징으로 하는 방법을 제공한다.According to an embodiment of the present invention, in a method for managing cache data, measuring network performance between a device connected to a plurality of cloud servers and a plurality of cloud servers, respectively, based on the measured network performance, stored in a plurality of cloud servers. It provides a method comprising the step of determining a ratio of the amount of data stored as cache data among the total amount of data for each of a plurality of cloud servers.
Description
본 발명은 디바이스의 데이터를 관리하는 방법으로서, 특히 클라우드 서버와 연결된 디바이스가 데이터를 관리하는 방법 및 장치에 관한 것이다. The present invention relates to a method for managing data of a device, and more particularly, to a method and an apparatus for managing data by a device connected to a cloud server.
클라우드 네트워크 기술 및 모바일 디바이스 기술의 발전으로, 모바일 디바이스 내의 사용자의 데이터를 클라우드 서버에 저장하고 실행할 수 있는 구글 드라이브(Google Drive), 드롭 박스(Dropbox) 등과 같은 서비스들이 다수 등장하였다. 또한 클라우드 서버에 저장된 파일들을 관리하고, 실행을 돕는 어플리케이션들 또한 다수 등장하였다. With the development of cloud network technology and mobile device technology, a number of services such as Google Drive and Dropbox have emerged that can store and execute user data in a mobile device in a cloud server. In addition, a number of applications to manage and run files stored in the cloud server have also appeared.
도 1 은 일반적인 클라우드 서버와 디바이스들 간의 관계를 나타낸 도면이다. 도 1을 참조하면, 클라우드 서버는 네트워크를 통해 컴퓨터, 핸드폰, 타블렛 등 다양한 디바이스들과 통신한다. 또한 클라우드 서버는 사용자가 데이터를 저장할 수 있는 서버를 포함할 수 있다. 1 is a diagram showing a relationship between a general cloud server and devices. Referring to FIG. 1, a cloud server communicates with various devices such as a computer, a mobile phone, and a tablet through a network. In addition, the cloud server may include a server through which a user can store data.
사용자는 디바이스 내에 저장된 사용자의 데이터를 클라우드 서버에 저장할 수 있고, 필요한 경우 클라우드 서버 내에 있는 사용자의 데이터를 수신하여 사용, 실행할 수 있다. 클라우드 서버와 디바이스는 동기화 함으로써, 디바이스 내의 데이터를 클라우드와 공유한다.The user can store the user's data stored in the device in the cloud server, and if necessary, can receive, use, and execute the user's data in the cloud server. The cloud server and the device share data in the device with the cloud by synchronizing.
일반적으로 사용자들은 디바이스를 통해 복수의 클라우드 서버를 이용한다. 다만, 각 클라우드 서버는 데이터 저장 정책이 상이하며, 또한 사용자가 보유한 데이터의 전체량이 디바이스의 저장 공간보다 점점 커지고 있어 디바이스와 클라우드의 동기화 방식 만으로는 사용자에게 빠르게 데이터를 제공할 수 없다는 문제점이 발생하고 있다. In general, users use multiple cloud servers through devices. However, each cloud server has a different data storage policy, and the total amount of data held by the user is getting larger than the storage space of the device, so there is a problem that data cannot be quickly provided to the user only by the synchronization method of the device and the cloud. .
본 발명의 일 실시예에서는, 클라우드 서버와 연결된 디바이스의 데이터 관리 방법 및 장치를 제공한다.An embodiment of the present invention provides a method and apparatus for managing data of a device connected to a cloud server.
상기와 같은 종래 기술의 문제를 해결하기 위한 본 발명의 일 실시예는, 캐시 데이터 관리 방법에 있어서, 복수의 클라우드 서버와 연결된 디바이스와 복수의 클라우드 서버 간의 네트워크 성능을 각각 측정하는 단계; 및 상기 측정된 네트워크 성능에 기초하여, 상기 복수의 클라우드 서버 내에 저장된 데이터의 전체량 중 캐시 데이터로 저장하는 데이터 양의 비율을, 상기 복수의 클라우드 서버 각각에 대하여 결정하는 단계를 포함한다.According to an embodiment of the present invention for solving the problems of the prior art as described above, there is provided a method for managing cache data, comprising: measuring network performance between a device connected to a plurality of cloud servers and a plurality of cloud servers, respectively; And determining, for each of the plurality of cloud servers, a ratio of the amount of data stored as cache data among the total amount of data stored in the plurality of cloud servers based on the measured network performance.
상기 방법은 상기 결정된 비율 및 캐시 저장 정책에 기초하여, 상기 캐시 데이터 저장하는 단계를 더 포함하는 것이 바람직하다. Preferably, the method further includes storing the cache data based on the determined ratio and the cache storage policy.
상기 캐시 저장 정책은, 상기 디바이스의 캐시 데이터 저장 공간, 상기 디바이스의 캐시 데이터 저장 개수, 상기 디바이스의 캐시 데이터 저장 기준에 대한 정보 중 적어도 하나를 포함하는 것이 바람직하다.Preferably, the cache storage policy includes at least one of a cache data storage space of the device, a storage number of cache data of the device, and information on a cache data storage standard of the device.
상기 방법은 상기 저장된 캐시 데이터를 삭제하는 단계를 더 포함하는 것이 바람직하다.Preferably, the method further comprises deleting the stored cache data.
상기 저장된 캐시 데이터를 삭제하는 단계는, 상기 복수의 클라우드 서버 내에 저장된 데이터의 전체량 중 캐시 데이터로 저장하는 데이터의 양의 비율이 작은 캐시 데이터부터 순차적으로 삭제하는 단계를 더 포함하는 것이 바람직하다.The step of deleting the stored cache data may further include sequentially deleting cache data having a small ratio of the amount of data stored as cache data among the total amounts of data stored in the plurality of cloud servers.
상기 방법은, 상기 저장된 캐시 데이터에 대한 캐시 리스트를 생성하는 단계를 더 포함하는 것이 바람직하다.Preferably, the method further comprises generating a cache list for the stored cache data.
상기 비율을 상기 복수의 클라우드 서버 각각에 대하여 결정하는 단계는, 상기 측정된 각각의 네트워크 성능과 반비례하도록 상기 비율을 결정하는 단계를 포함하는 것이 바람직하다.The step of determining the ratio for each of the plurality of cloud servers preferably includes determining the ratio to be inversely proportional to the measured network performance.
상기 복수의 클라우드 서버와 디바이스 간의 네트워크 성능을 각각 측정하는 단계는, 상기 복수의 클라우드 서버와 디바이스 간의 네트워크 속도를 각각 측정하는 단계를 포함하는 것이 바람직하다.The step of measuring the network performance between the plurality of cloud servers and the device, respectively, preferably includes measuring network speeds between the plurality of cloud servers and the device, respectively.
상기 방법은, 상기 네트워크 성능에 기초하여, 상기 디바이스의 캐시 데이터 저장 공간의 크기를 결정하는 단계를 더 포함하는 것이 바람직하다.Preferably, the method further includes determining a size of a cache data storage space of the device based on the network capability.
상기 방법은, 상기 네트워크 성능에 기초하여, 상기 디바이스의 캐시 데이터 저장 공간을, 상기 복수의 클라우드 각각에 대하여, 할당하는 단계를 더 포함하는 것이 바람직하다.Preferably, the method further includes allocating, for each of the plurality of clouds, a cache data storage space of the device based on the network performance.
복수의 클라우드 서버와 디바이스 간의 네트워크 성능을 각각 측정하는 단계는, 소정의 시간 간격 마다 복수의 클라우드 서버와 디바이스 간의 네트워크 성능을 각각 측정하는 것이 바람직하다.In the step of measuring the network performance between the plurality of cloud servers and the devices, respectively, it is preferable to measure the network performance between the plurality of cloud servers and the device at each predetermined time interval.
본 발명의 일 실시예는 상기 방법을 구현하기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공한다.An embodiment of the present invention provides a computer-readable recording medium in which a program for implementing the method is recorded.
상기와 같은 종래 기술의 문제를 해결하기 위한 본 발명의 일 실시예는 캐시 데이터 관리 장치에 있어서, 복수의 클라우드 서버와 연결된 디바이스와 복수의 클라우드 서버 간의 네트워크 성능을 각각 측정하는 네트워크 성능 측정부; 및 상기 측정된 네트워크 성능에 기초하여, 상기 복수의 클라우드 서버 내에 저장된 데이터의 전체량 중 캐시 데이터로 저장하는 데이터 양의 비율을, 상기 복수의 클라우드 서버 각각에 대하여 결정하는 캐시 비율 결정부를 포함하는 것이 바람직하다.According to an embodiment of the present invention for solving the problems of the prior art as described above, there is provided a cache data management apparatus, comprising: a network performance measurement unit that measures network performance between a device connected to a plurality of cloud servers and a plurality of cloud servers; And a cache ratio determination unit configured to determine a ratio of the amount of data stored as cache data among the total amounts of data stored in the plurality of cloud servers, based on the measured network performance, for each of the plurality of cloud servers. desirable.
상기 장치는, 상기 결정된 비율 및 캐시 저장 정책에 기초하여, 상기 캐시 데이터를 캐시 저장부에 저장하는 캐시 데이터 관리부를 더 포함하는 것이 바람직하다.Preferably, the device further includes a cache data management unit that stores the cache data in a cache storage unit based on the determined ratio and a cache storage policy.
상기 캐시 저장 정책은, 상기 디바이스의 캐시 데이터 저장 공간, 상기 디바이스의 캐시 데이터 저장 개수, 상기 디바이스의 캐시 데이터 저장 기준에 대한 정보 중 적어도 하나를 포함하는 것이 바람직하다.Preferably, the cache storage policy includes at least one of a cache data storage space of the device, a storage number of cache data of the device, and information on a cache data storage standard of the device.
상기 캐시 데이터 관리부는, 상기 저장된 캐시 데이터를 삭제하는 것이 바람직하다.It is preferable that the cache data management unit deletes the stored cache data.
상기 캐시 데이터 관리부는, 상기 복수의 클라우드 서버 내에 저장된 데이터의 전체량 중 캐시 데이터로 저장하는 데이터의 양의 비율이 작은 캐시 데이터부터 순차적으로 삭제하는 것이 바람직하다.It is preferable that the cache data management unit sequentially delete cache data having a small ratio of the amount of data stored as cache data among the total amount of data stored in the plurality of cloud servers.
상기 장치는, 상기 저장된 캐시 데이터에 대한 캐시 리스트를 생성하는 캐시 리스트 생성부를 더 포함하는 것이 바람직하다.It is preferable that the apparatus further includes a cache list generation unit that generates a cache list for the stored cache data.
상기 캐시 비율 결정부는, 상기 측정된 각각의 네트워크 성능과 반비례하도록 상기 비율을 결정하는 것이 바람직하다.It is preferable that the cache ratio determiner determines the ratio so as to be in inverse proportion to the measured network performance.
상기 네트워크 성능 측정부는, 상기 복수의 클라우드 서버와 디바이스 간의 네트워크 속도를 각각 측정하는 것이 바람직하다.Preferably, the network performance measurement unit measures network speeds between the plurality of cloud servers and devices, respectively.
상기 장치는, 상기 네트워크 성능에 기초하여, 상기 디바이스의 캐시 데이터 저장 공간을 결정하는 캐시 저장 공간 결정부를 더 포함하는 것이 바람직하다.Preferably, the apparatus further includes a cache storage space determining unit that determines a cache data storage space of the device based on the network performance.
상기 장치는, 상기 네트워크 성능에 기초하여, 상기 디바이스의 캐시 데이터 저장 공간을, 상기 복수의 클라우드 각각에 대하여, 할당하는 캐시 저장 공간 할당부를 더 포함하는 것이 바람직하다.Preferably, the apparatus further includes a cache storage space allocation unit that allocates a cache data storage space of the device for each of the plurality of clouds, based on the network performance.
상기 네트워크 성능 측정부는, 소정의 시간 간격 마다 복수의 클라우드 서버와 디바이스 간의 네트워크 성능을 각각 측정하는 것이 바람직하다.Preferably, the network performance measuring unit measures network performance between a plurality of cloud servers and devices at predetermined time intervals.
본 발명의 일 실시예에서는, 클라우드 서버와 연결된 디바이스가 사용자에게 빠르게 데이터를 제공할 수 있다.In an embodiment of the present invention, a device connected to a cloud server may quickly provide data to a user.
도 1은 일반적인 클라우드 서버와 디바이스들 간의 관계를 나타낸 도면이다.
도 2는 본 발명의 일 실시예에 따른 복수의 클라우드 서버와 디바이스간 시스템을 도시한 도면이다.
도 3는 본 발명의 일 실시예에 따른 디바이스가 캐시 데이터를 관리하는 방법의 순서도이다.
도 4는 본 발명의 일 실시예에 따른 캐시 데이터를 관리하는 장치의 구조를 나타낸 도면이다.
도 5는 본 발명의 일 실시예에 네트워크 성능에 따른 데이터를 관리하는 방법을 설명하기 위한 도면이다.
도 6은 본 발명의 일 실시예에 디바이스의 저장 공간을 할당하기 위한 방법을 설명하기 위한 도면이다.
도 7은 본 발명의 일 실시예에 따른 디바이스의 캐시 데이터를 삭제하는 방법을 설명하기 위한 도면이다.1 is a diagram showing a relationship between a general cloud server and devices.
2 is a diagram illustrating a system between a plurality of cloud servers and devices according to an embodiment of the present invention.
3 is a flowchart of a method for a device to manage cache data according to an embodiment of the present invention.
4 is a diagram showing the structure of an apparatus for managing cache data according to an embodiment of the present invention.
5 is a diagram illustrating a method of managing data according to network performance according to an embodiment of the present invention.
6 is a diagram for describing a method for allocating a storage space of a device according to an embodiment of the present invention.
7 is a diagram for explaining a method of deleting cache data of a device according to an embodiment of the present invention.
아래에서는 첨부한 도면을 참조하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본 발명의 실시예를 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다. Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings so that those of ordinary skill in the art can easily implement the present invention. However, the present invention may be implemented in various different forms and is not limited to the embodiments described herein. In the drawings, parts irrelevant to the description are omitted in order to clearly describe the present invention, and similar reference numerals are assigned to similar parts throughout the specification.
명세서 전체에서, 어떤 부분이 다른 부분과 연결되어 있다고 할 때, 이는 직접적으로 연결되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 전기적으로 연결되어 있는 경우도 포함한다. 또한 어떤 부분이 어떤 구성요소를 포함한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.Throughout the specification, when a part is said to be connected to another part, this includes not only the case where it is directly connected, but also the case where it is electrically connected with another element interposed therebetween. In addition, when a certain part includes a certain component, it means that other components may be further included, rather than excluding other components unless specifically stated to the contrary.
이하 첨부된 도면을 참고하여 본 발명을 상세히 설명하기로 한다.Hereinafter, the present invention will be described in detail with reference to the accompanying drawings.
도 2는 본 발명의 일 실시예에 따른 복수의 클라우드 서버(201 내지 205)와 디바이스(207)간의 관계를 설명하기 위한 시스템 도면이다.2 is a system diagram for explaining a relationship between a plurality of
본 발명의 일 실시예에 따르면, 디바이스(207)는 제 1 클라우드 서버(201), 제 2 클라우드 서버(203) 및 제 3 클라우드 서버(205)와 네트워크를 통해 연결된다. 즉, 디바이스(207)는 복수의 클라우드 서버(201 내지 205)와 통신할 수 있다. 디바이스(207)의 사용자는 디바이스(207)과 연결된 제 1 클라우드 서버(201), 제 2 클라우드 서버(203), 제 3 클라우드 서버(205)를 이용할 수 있다.According to an embodiment of the present invention, the
본 발명의 일 실시예에 따르면 디바이스(207)는 핸드폰, 타블렛, 컴퓨터, 스마트폰 등 클라우드 서버와 통신이 가능한 모든 디바이스를 포함 할 수 있으며, 상기 예시에 제한되지 않는다.According to an embodiment of the present invention, the
본 발명의 일 실시예에 따르면, 클라우드 서버(201 내지 205)는 모든 종류의 서버를 포함할 수 있으며, 특히 사용자가 데이터를 저장할 수 있는 서버를 포함할 수 있다. According to an embodiment of the present invention, the
본 발명의 일 실시예에 따르면, 디바이스(207)는 복수의 클라우드 서버(201 내지 205)에 데이터를 저장할 수 있다. 본 발명의 일 실시예에 따르면 디바이스(207)가 복수의 클라우드 서버(201 내지 205)에 저장하는 데이터는 동일한 데이터일 수도 있고, 상이한 데이터일 수도 있다.According to an embodiment of the present invention, the
본 발명의 일 실시예에 따르면, 디바이스(207)는 복수의 클라우드 서버(201 내지 205)로부터 데이터를 수신할 수 있다. 즉, 디바이스(207)는 복수의 클라우드 서버(201 내지 205)에 저장된 데이터가 필요한 경우, 사용자의 입력에 기초하여, 복수의 클라우드 서버(201 내지 205)에 저장된 데이터를 수신하거나, 저장된 데이터를 실행한 결과를 수신할 수 있다.According to an embodiment of the present invention, the
또한 본 발명의 일 실시예에 따르면, 디바이스(207)는 디바이스의 저장공간에 데이터를 저장할 수 있다. 즉, 디바이스(207)가 복수의 클라우드 서버(201 내지 205)에 저장하는 데이터는 디바이스(207)의 저장 공간에 저장하는 데이터와 동일한 데이터일 수도 있고, 상이한 데이터일 수도 있다.Further, according to an embodiment of the present invention, the
본 발명의 일 실시예에 따르면, 데이터는 파일을 포함할 수 있다. 즉, 본 발명의 일 실시예에 따르면, 데이터는 파일 형식의 데이터를 포함할 수 있다. According to an embodiment of the present invention, data may include a file. That is, according to an embodiment of the present invention, data may include data in a file format.
본 발명의 일 실시예에 따르면, 디바이스(207)는 복수의 클라우드 서버(201 내지 205) 각각과 동기화를 수행할 수 있다. 동기화는 당업자에게 자명한 사항이므로 자세한 설명은 생략한다.According to an embodiment of the present invention, the
본 발명의 일 실시예에 따르면 디바이스(207)는 복수의 클라우드 서버(201 내지 205) 내에 저장된 데이터를 식별하기 위한 데이터인 클라우드 데이터를 디바이스(207) 내에 생성 및 저장한다. 즉, 디바이스(207)는 클라우드 데이터를 사용하여 클라우드 서버(201 내지 205)에 저장된 데이터를 관리할 수 있다. 이하에서는, 설명의 편의를 위해 클라우드 서버(201 내지 205)에 저장된 데이터를 원본 데이터, 캐시 데이터를 사본 데이터로 지칭 할 수 있다.According to an embodiment of the present invention, the
본 발명의 일 실시예에 따르면, 클라우드 데이터는 더미 데이터와 캐시 데이터를 포함할 수 있다. According to an embodiment of the present invention, cloud data may include dummy data and cache data.
본 발명의 일 실시예에 따르면, 더미 데이터는 디바이스(207)에 저장된 데이터로서, 실제 데이터의 크기는 0인 데이터이고, 데이터의 속성, 타입들을 입력하는 방식을 사용하여 클라우드 서버(201 내지 205) 내에 저장된 데이터인 원본 데이터의 경로, 위치, 종류 등의 정보를 포함할 수 있다. 물론 본 발명의 일 실시예에 따르면, 더미 데이터는 실제 데이터의 크기가 0일 필요는 없다. 즉, 상기 예시에 제한되지 않는다.According to an embodiment of the present invention, the dummy data is data stored in the
본 발명의 일 실시예에 따르면, 클라우드 서버(201 내지 205) 내에 a.jpg 파일이 존재하는 경우, 디바이스 내에는 a.jpg에 대한 더미 파일이 존재할 수 있다. a.jpg에 대한 더미 파일은 a.jpg와 동일한 파일은 아니며, 실제 데이터의 크기가 0이거나, a.jpg보다 작은 데이터 크기를 가질 수 있다. 또한 a.jpg에 대한 더미 파일은 속성 정보로서 a.jpg가 어느 클라우드 서버 내에 저장되어 있는지, 실제 a.jpg의 파일의 크기, 종류 등에 대한 정보를 포함할 수 있다. According to an embodiment of the present invention, when an a.jpg file exists in the
본 발명의 일 실시예에 따르면, 더미 데이터는 메타 데이터 또는 메타 데이터의 형식으로 생성된 데이터를 포함할 수 있다. According to an embodiment of the present invention, the dummy data may include metadata or data generated in the form of metadata.
본 발명의 일 실시예에 따르면, 캐시 데이터는 디바이스(207)에 저장된 데이터로서, 클라우드 서버(201 내지 205) 내에 저장된 원본 데이터와 동일한 내용의 사본 데이터를 의미할 수 있다. 즉, 캐시 데이터는 디바이스(207)의 사용자에게 데이터를 빠르게 제공하기 위한 데이터를 의미할 수 있다. According to an embodiment of the present invention, the cache data is data stored in the
예를 들면, 클라우드 서버(201 내지 205) 내에 a.jpg 파일이 존재하는 경우, 디바이스(207) 내에는 a.jpg에 대한 캐시 파일이 존재할 수 있다. a.jpg에 대한 캐시 파일은 a.jpg와 동일한 데이터를 포함하는 파일이거나, a.jpg의 일부 데이터만을 포함하는 파일일 수 있다. 사용자 입력에 기초하여 디바이스(207)가 a.jpg 파일을 실행해야 하는 경우, 디바이스(207)는 a,jpg 파일을 클라우드 서버(205 내지 207)로부터 수신할 필요 없이, 저장된 캐시 파일인 a.jpg 파일을 바로 실행할 수 있다. 디바이스(207)가 일부 데이터만을 저장하고 있는 경우, 디바이스(207)가 저장하고 있지 않은 부분의 데이터만을 클라우드 서버(201 내지 205)로부터 수신할 수 있다. 또한 a.jpg의 캐시 파일은 속성 정보로서 a.jpg가 어느 클라우드 서버 내에 저장되어 있는지, 실제 a.jpg의 파일의 크기, 종류 등에 대한 정보를 포함할 수 있다. For example, when an a.jpg file exists in the
본 발명의 일 실시예에 따르면, 캐시 데이터는 메타 데이터 또는 메타 데이터의 형식으로 생성된 데이터를 포함할 수 있다. According to an embodiment of the present invention, the cache data may include metadata or data generated in the form of metadata.
본 발명의 일 실시예에 따르면, 캐시 저장 정책은 디바이스의 캐시 데이터 저장 공간의 크기에 대한 정보, 디바이스의 캐시 데이터 저장 개수, 디바이스의 캐시 데이터 저장 기준에 대한 정보 중 적어도 하나에 대한 정보를 포함할 수 있다. According to an embodiment of the present invention, the cache storage policy may include information on at least one of information on the size of the cache data storage space of the device, the number of cache data storage of the device, and information on the cache data storage criteria of the device. I can.
본 발명의 일 실시예에 따르면, 디바이스(207)의 캐시 데이터 저장 기준에 대한 정보는 클라우드 서버(201 내지 205)로부터 데이터를 수신한 순서에 따라 수신한 데이터를 캐시 데이터로 저장할지, 클라우드 서버(201 내지 205)에 저장된 데이터의 용량에 기초하여 캐시 데이터를 저장할지 여부 등에 대한 정보를 포함하며, 상기 예시에 제한되는 것은 아니다.According to an embodiment of the present invention, the information on the cache data storage criteria of the
본 발명의 일 실시예에 따르면, 디바이스(207)는 복수의 클라우드 서버(201 내지 205)에 저장된 데이터의 일부를 디바이스(207) 내에 캐시 데이터로 저장함으로써, 캐시 데이터의 적중률을 높이고, 사용자에게 빠른 데이터를 제공할 수 있다.According to an embodiment of the present invention, the
또한 본 발명의 일 실시예에 따르면 디바이스(207)는 복수의 클라우드 서버(201 내지 205)와 통신할 때, 네트워크의 성능에 기초하여 캐시 데이터를 저장할 수 있다.In addition, according to an embodiment of the present invention, when the
본 발명의 일 실시예에 따르면, 각 클라우드 서버(201 내지 205)와 디바이스(207) 간의 네트워크 성능에는 차이가 존재할 수 있다. 즉, 디바이스(207)와 제 1 클라우드 서버(201) 간의 네트워크 환경, 디바이스(207)와 제 2 클라우드 서버(203) 간의 네트워크 환경, 디바이스(207)와 제 3 클라우드 서버(205) 간의 네트워크 환경이 상이할 수 있다. 제 1 클라우드 서버(201)와 디바이스(207)간의 네트워크 환경이 제 2 클라우드 서버(203)와 디바이스(207)간의 네트워크 환경에 비해 좋은 경우, 예를 들면, 제 1 클라우드 서버(201)와 디바이스(207)간의 네트워크 속도가 제 2 클라우드 서버(203)과 디바이스(207)간의 네트워크 속도보다 빠른 경우, 디바이스(207)가, 제 2 클라우드 서버(203)에 저장된 데이터를 사용하려면, 제 1 클라우드 서버(201)에 저장된 데이터를 사용할 때 보다 시간이 더 소요된다. 따라서 디바이스(207)는 제 1 클라우드 서버(201)에 저장된 데이터보다 제 2 클라우드 서버(203)에 저장된 데이터를 디바이스 내의 캐시 데이터로서 저장하는 것이, 사용자에게 빠르게 데이터를 제공할 수 있는 방법이 될 수 있다. According to an embodiment of the present invention, there may be a difference in network performance between the
또한 본 발명의 일 실시예에 따르면, 복수의 클라우드 서버와 디바이스간의 네트워크 성능에 기초하여, 각각의 클라우드 서버 내에 저장된 데이터를 디바이스 내에 캐시 데이터로 저장하는 비율을 결정할 수도 있다. 즉, 캐시 데이터 저장 공간을 각 클라우드 서버 별로 할당할 수도 있다.Also, according to an embodiment of the present invention, a ratio of storing data stored in each cloud server as cache data in the device may be determined based on network performance between a plurality of cloud servers and devices. In other words, the cache data storage space can be allocated for each cloud server.
또한 본 발명의 일 실시예에 따르면, 복수의 클라우드 서버와 디바이스간의 네트워크 성능에 기초하여, 디바이스의 캐시 데이터 저장 공간의 크기를 결정할 수도 있다. 이는 도 3 내지 도 7에서 자세히 설명한다.In addition, according to an embodiment of the present invention, the size of the cache data storage space of the device may be determined based on network performance between a plurality of cloud servers and devices. This will be described in detail in FIGS. 3 to 7.
또한 본 발명의 일 실시예에 따르면, 네트워크의 성능은 네트워크의 속도를 포함할 수 있다. 또한 본 발명의 일 실시예에 따르면 네트워크의 속도는 디바이스와 클라우드 서버 간의 네트워크의 전송 속도를 포함할 수 있다.Further, according to an embodiment of the present invention, the performance of the network may include the speed of the network. In addition, according to an embodiment of the present invention, the speed of the network may include a transmission speed of the network between the device and the cloud server.
도 3는 본 발명의 일 실시예에 따른 디바이스가 캐시 데이터를 관리하는 방법의 순서도이다.3 is a flowchart of a method for a device to manage cache data according to an embodiment of the present invention.
단계 S301에서, 디바이스는 복수의 클라우드 서버와 연결된 디바이스와 복수의 클라우드 서버 간의 네트워크 성능을 각각 측정한다.In step S301, the device measures network performance between a device connected to a plurality of cloud servers and a plurality of cloud servers, respectively.
본 발명의 일 실시예에 따르면, 복수의 클라우드 서버와 연결된 디바이스는, 각 클라우드 서버와의 네트워크 성능을 각각 측정한다. 예를 들어, 디바이스는 제 1 클라우드 서버와의 네트워크 성능을 측정하고, 디바이스는 제 2 클라우드 서버와의 네트워크 성능을 각각 측정할 수 있다. 물론 디바이스와 복수의 클라우드 서버 간의 네트워크 성능을 평균적으로 산출할 수도 있다.According to an embodiment of the present invention, a device connected to a plurality of cloud servers measures network performance with each cloud server, respectively. For example, the device may measure network performance with a first cloud server, and the device may measure network performance with a second cloud server, respectively. Of course, the network performance between the device and a plurality of cloud servers can be calculated on average.
또한 본 발명의 일 실시예에 따르면, 네트워크 성능은, 클라우드 서버의 반응속도, 대역폭, 사용하는 데이터 통신의 종류(유선, 무선, 3G, 4G 방식 등) 측정하여 결정할 수도 있다,In addition, according to an embodiment of the present invention, the network performance may be determined by measuring the response speed of the cloud server, the bandwidth, and the type of data communication used (wired, wireless, 3G, 4G, etc.).
본 발명의 일 실시예에 따르면, 디바이스는 복수의 클라우드 서버와 디바이스 간의 네트워크 속도를 각각 측정할 수 있다. 즉, 네트워크 성능은 네트워크 속도를 포함할 수 있다. According to an embodiment of the present invention, a device may measure a network speed between a plurality of cloud servers and devices, respectively. That is, network performance may include network speed.
또한 본 발명의 일 실시예에 따르면, 네트워크 속도는 디바이스와 복수의 클라우드 서버 간의 전송 속도를 포함할 수 있다.Further, according to an embodiment of the present invention, the network speed may include a transmission speed between a device and a plurality of cloud servers.
또한 본 발명의 일 실시예에 따르면, 디바이스는 소정의 시간 간격 마다 복수의 클라우드 서버와 디바이스 간의 네트워크 성능을 각각 측정할 수 있다. In addition, according to an embodiment of the present invention, the device may measure the network performance between the plurality of cloud servers and the device at each predetermined time interval.
추가적으로, 본 발명의 일 실시예에 따르면, 디바이스는 디바이스가 복수의 클라우드 서버와 통신하는 네트워크의 종류의 변화가 발생할 때마다 네트워크의 성능을 측정할 수도 있다. 예를 들면, 디바이스가 3G 네트워크를 통해 복수의 클라우드 서버와 통신하던 도중 4G 네트워크를 통해 복수의 클라우드 서버와 통신하도록 변경되는 경우, 디바이스와 복수의 클라우드 서버 간의 네트워크 성능을 각각 측정할 수 있다.Additionally, according to an embodiment of the present invention, the device may measure the performance of the network whenever a change in the type of network through which the device communicates with a plurality of cloud servers occurs. For example, when a device is changed to communicate with a plurality of cloud servers through a 4G network while communicating with a plurality of cloud servers through a 3G network, network performance between the device and a plurality of cloud servers may be measured, respectively.
또한 본 발명의 일 실시예에 따르면, 디바이스는 디바이스 내에 내장된 다양한 센서 값에 기초하여 네트워크의 성능을 측정할 수도 있다. 디바이스는 디바이스 내에 내장된 다양한 센서를 통해 디바이스의 위치 또는 속도를 확인할 수 있으며, 디바이스의 위치가 변경되거나, 소정의 속도 이상인 경우, 네트워크의 성능을 측정할 수 있다. 디바이스 내에 내장된 센서는, 가속도 센서, GPS 센서 등을 포함할 수 있으며, 상기 예시에 제한되지 않는다. Also, according to an embodiment of the present invention, the device may measure the performance of the network based on various sensor values built into the device. The device can check the location or speed of the device through various sensors built into the device, and can measure the performance of the network when the location of the device is changed or exceeds a predetermined speed. The sensor embedded in the device may include an acceleration sensor, a GPS sensor, and the like, and is not limited to the above example.
또한 디바이스가 데이터를 실행하는 사용자입력을 수신한 때마다 네트워크 성능을 각각 측정할 수도 있다.In addition, each time the device receives a user input executing data, it can measure the network performance separately.
추가적으로 본 발명의 일 실시예에 따르면, 디바이스는 디바이스가 생성한 데이터 또는 디바이스에 저장된 데이터를 복수의 클라우드 서버 각각에 송신하고, 수신하는 방법을 통해 네트워크의 성능을 측정할 수 있다.Additionally, according to an embodiment of the present invention, the device may measure network performance through a method of transmitting and receiving data generated by the device or data stored in the device to each of a plurality of cloud servers.
단계 S303에서, 디바이스는 측정된 네트워크 성능에 기초하여, 복수의 클라우드 서버 내에 저장된 데이터의 전체량 중 캐시 데이터로 저장하는 데이터 양의 비율을 복수의 클라우드 서버 각각에 대하여 결정한다. 예를 들면, 디바이스는 제 1 클라우드 서버 내에 저장된 100MB의 데이터 중 네트워크 성능에 따라 20MB만을 캐시 데이터로 저장할 수 있다. 즉, 디바이스는 제 1 클라우드 서버 내에 저장된 데이터 중 일부를 분할하여 캐시 데이터로 저장할 수 있다.In step S303, the device determines, for each of the plurality of cloud servers, a ratio of the amount of data stored as cache data among the total amount of data stored in the plurality of cloud servers, based on the measured network performance. For example, the device may store only 20 MB of data of 100 MB stored in the first cloud server as cache data according to network performance. That is, the device may divide some of the data stored in the first cloud server and store it as cache data.
또한 본 발명의 일 실시예에 따르면, 단계 S303에서 비율을 결정하는 방법은, 디바이스와 복수의 클라우드 서버 간에 각각 측정된 네트워크 성능에 반비례하도록 비율을 결정할 수도 있다. 물론 비율을 결정하는 기준은 사용자의 설정에 의해 변경할 수 있으며, 상기 예시에 제한되지 않는다.In addition, according to an embodiment of the present invention, the method of determining the ratio in step S303 may determine the ratio so as to be in inverse proportion to the network performance measured between the device and the plurality of cloud servers, respectively. Of course, the criterion for determining the ratio may be changed by the user's setting, and is not limited to the above example.
추가적으로, 본 발명의 일 실시예에 따르면, 디바이스는 단계 S301에서 측정된 네트워크 성능에 기초하여, 디바이스의 캐시 데이터 저장 공간의 크기를 결정할 수 있다. 즉, 측정된 각각의 네트워크 성능 또는 디바이스와 복수의 클라우드 서버 간의 측정된 평균적인 네트워크 성능에 기초하여, 디바이스의 캐시 데이터 저장 공간의 크기를 결정할 수 있다. 예를 들어, 네트워크 성능이 일정 기준보다 낮은 경우 디바이스는 디바이스의 전체의 저장 공간 중 소정의 기준 이상의 캐시 저장 공간을 할당할 수 있다. Additionally, according to an embodiment of the present invention, the device may determine the size of the cache data storage space of the device based on the network performance measured in step S301. That is, the size of the cache data storage space of the device may be determined based on the measured network performance or the average network performance measured between the device and the plurality of cloud servers. For example, when the network performance is lower than a predetermined standard, the device may allocate a cache storage space equal to or greater than a predetermined standard among the total storage space of the device.
또한 본 발명의 일 실시예에 따르면, 디바이스는 단계 S301에서 측정된 네트워크 성능에 기초하여 복수의 클라우드 각각에 대하여, 캐시 데이터 저장 공간을 할당할 수도 있다. Further, according to an embodiment of the present invention, the device may allocate a cache data storage space for each of the plurality of clouds based on the network performance measured in step S301.
예를 들면, 디바이스의 캐시 데이터 저장 공간이 1000MB로 설정되어 있는 경우, 디바이스는제 2 클라우드 서버 보다 좋은 네트워크 성능을 갖는 제 1 클라우드 서버에 저장된 데이터를 캐시 데이터로서 저장하는 캐시 데이터 저장 공간은 300MB만을 할당하고, 나머지 700MB의 캐시 데이터 저장공간은 제 2 클라우드 서버 내에 저장된 데이터를 캐시 데이터로서 저장하는 공간으로 할당할 수 있다. 즉, 디바이스는, 측정된 네트워크 성능에 따라, 각 클라우드 서버 내에 저장된 데이터를 디바이스 내에 캐시 데이터로 저장하는 공간을 차등적으로 할당할 수 있다. For example, if the device's cache data storage space is set to 1000 MB, the device stores data stored in the first cloud server, which has better network performance than the second cloud server, as cache data, and the cache data storage space is only 300 MB. The remaining 700MB of cache data storage space may be allocated as a space for storing data stored in the second cloud server as cache data. That is, the device may differentially allocate a space for storing data stored in each cloud server as cache data in the device according to the measured network performance.
본 발명의 일 실시예에 따르면, 디바이스는 단계 S303에서 결정된 비율 및 디바이스의 캐시 저장 정책에 기초하여 캐시 데이터를 저장할 수 있다. According to an embodiment of the present invention, the device may store cache data based on the ratio determined in step S303 and the cache storage policy of the device.
또한 본 발명의 일 실시예에 따르면, 캐시 저장 정책은 디바이스의 캐시 데이터 저장 공간, 캐시 데이터 저장 개수, 캐시 데이터 저장 기준에 대한 정보를 포함할 수 있으며, 상기 예시에 제한되지 않는다.Also, according to an embodiment of the present invention, the cache storage policy may include information on a cache data storage space of a device, the number of cache data storage, and a cache data storage standard, and is not limited to the above example.
본 발명의 일 실시예에 따르면 캐시 데이터 저장 기준은 클라우드 서버(201 내지 205)로부터 데이터를 수신한 순서에 따라 수신한 데이터를 캐시 데이터로 저장할지, 클라우드 서버(201 내지 205)에 저장된 데이터의 용량에 기초하여 캐시 데이터를 저장할지 여부 등에 대한 정보를 포함할 수 있으며, 상기 예시에 제한되지 않는다.According to an embodiment of the present invention, the cache data storage criterion is whether the received data is stored as cache data according to the order in which data is received from the
또한 본 발명의 일 실시예에 따르면, 캐시 데이터 저장 공간의 일부인 제 1 캐시 데이터 저장 공간에는 단계 S303에서 결정한 비율에 기초하여, 복수의 클라우드 서버 내에 저장된 데이터의 전체량 중 일부를 캐시 데이터로 저장하고, 제 1 캐시 데이터 저장 공간을 제외한 나머지 공간에는 복수의 클라우드 서버로부터 데이터를 수신한 순서에 기초하여 수신하는 데이터 전체량을 캐시 데이터로 저장할 수 있다. Further, according to an embodiment of the present invention, a portion of the total amount of data stored in the plurality of cloud servers is stored as cache data in the first cache data storage space, which is a part of the cache data storage space, based on the ratio determined in step S303. , In a space other than the first cache data storage space, the entire amount of data received based on the order of receiving data from a plurality of cloud servers may be stored as cache data.
예를 들면, 디바이스는 제 1 캐시 데이터 저장 공간에, 복수의 클라우드 서버 중 하나에 저장된 데이터를 단계 S303에서 결정된 비율에 기초하여, 캐시 데이터로 저장한다. 즉, 전체 데이터 량이 100MB인 경우 20MB만을 저장할 수 있다. 또한 디바이스는 제 1 캐시 데이터 저장 공간을 제외한 나머지 공간에는 복수의 클라우드 서버 중 하나에 저장된 데이터 전부를 저장할 수 있다. 즉, 전체 데이터량이 50MB인 경우, 50MB 전부를 저장할 수도 있다. 또한 디바이스의 캐쉬 저장 정책에 따라, 제 1 캐시 데이터 저장 공간 및 제 1 캐시 데이터 저장 공간을 제외한 나머지 공간에는 동일한 데이터 또는 상이한 데이터가 저장 될 수 있다.For example, the device stores data stored in one of the plurality of cloud servers in the first cache data storage space as cache data based on the ratio determined in step S303. That is, if the total amount of data is 100 MB, only 20 MB can be stored. In addition, the device may store all data stored in one of the plurality of cloud servers in a space other than the first cache data storage space. That is, if the total amount of data is 50 MB, all 50 MB may be stored. In addition, the same data or different data may be stored in the remaining spaces excluding the first cache data storage space and the first cache data storage space according to the cache storage policy of the device.
본 발명의 일 실시예에 따르면, 디바이스는 저장된 캐시 데이터를 삭제할 수 있다. According to an embodiment of the present invention, the device may delete stored cache data.
본 발명의 일 실시예에 따르면, 디바이스는 클라우드 서버 내에 저장된 데이터의 전체량 중 디바이스 내에 캐시데이터로 저장된 데이터의 양의 비율이 작은 캐시 데이터부터 순차적으로 삭제할 수 있다. According to an embodiment of the present invention, the device may sequentially delete cache data having a small ratio of the amount of data stored in the device as cache data among the total amount of data stored in the cloud server.
또한 본 발명의 일 실시예에 따르면, 디바이스는 캐시데이터로서 저장된 데이터의 양이 적은 순서대로 캐시 데이터를 삭제할 수도 있고, 클라우드 서버로부터 수신한 순서에 기초하여 삭제할 수도 있다. 또한 원본 데이터가 어느 클라우드 서버에 저장되어 있는지에 따라 사본 데이터인 캐시 데이터를 삭제할 수도 있다.In addition, according to an embodiment of the present invention, the device may delete the cache data in the order in which the amount of data stored as cache data is small, or may delete the cache data based on the order received from the cloud server. Also, depending on which cloud server the original data is stored on, the cache data, which is the copy data, can be deleted.
추가적으로, 본 발명의 일 실시예에 따르면, 디바이스는 저장된 캐시 데이터에 대한 캐시 리스트를 생성할 수 있다. 추가적으로 캐시 리스트는 더미 데이터에 대한 리스트 또는 정보를 포함할 수 도 있다. 또한 더미 데이터에 대한 리스트를 별도로 생성할 수도 있다.Additionally, according to an embodiment of the present invention, the device may generate a cache list for stored cache data. Additionally, the cache list may include a list or information on dummy data. It is also possible to create a separate list of dummy data.
도 4는 본 발명의 일 실시예에 따른 캐시 데이터를 관리하는 장치(400)의 구조를 나타낸 도면이다.4 is a diagram showing the structure of an
본 발명의 일 실시예에 따르면 캐시 데이터 관리 장치(400)는 캐시 비유 결정부(401), 네트워크 성능 측정부(403), 캐시 데이터 관리부(405), 송수신부(407) 및 캐시 저장부(409)를 포함한다. According to an embodiment of the present invention, the cache
본 발명의 일 실시예에 따르면, 캐시 비율 결정부(401)는 네트워크 성능 측정부(403)에서 측정한 네트워크 성능에 기초하여 복수의 클라우드 서버 내에 저장된 데이터의 전체량 중 캐시 데이터로 저장하는 데이터 양의 비율을, 상기 복수의 클라우드 서버 각각에 대하여 결정할 수 있다.According to an embodiment of the present invention, the cache ratio determination unit 401 is based on the network performance measured by the network
본 발명의 일 실시예에 따르면, 캐시 비율 결정부(401)는 측정된 각각의 네트워크 성능과 반비례하도록 클라우드 서버 내에 저장된 데이터의 전체량 중 캐시 데이터로 저장하는 데이터의 양의 비율을 결정할 수 있다. According to an embodiment of the present invention, the cache ratio determination unit 401 may determine a ratio of the amount of data stored as cache data among the total amount of data stored in the cloud server in inverse proportion to the measured network performance.
예를 들어, 제 1 클라우드 서버와 디바이스간의 전송 속도가 2MB/s이고, 제 2 클라우드 서버와 디바이스간의 전송속도가 4MB/s인 경우, 디바이스는 제 1 클라우드 서버에 저장된 전체량이 10MB인 데이터는 4MB만큼 분할하여 디바이스 내에 캐시 데이터로 저장하고, 제 2 클라우드 서버에 저장된 전체량이 10MB인 데이터는 2MB만큼 분할하여 디바이스 내에 캐시 데이터로 저장하도록 비율을 결정할 수 있다. For example, if the transfer speed between the first cloud server and the device is 2MB/s, and the transfer speed between the second cloud server and the device is 4MB/s, the device has 4MB of data with a total amount of 10MB stored in the first cloud server. It is possible to determine a ratio so that the data is divided and stored as cache data in the device, and the total amount of data stored in the second cloud server is divided by 2 MB and stored as cache data in the device.
본 발명의 일 실시예에 따르면, 캐시 비율 결정부(401)는 각 클라우드 서버 내에 저장된 총 데이터량을 기초로 비율을 결정할 수도 있다.According to an embodiment of the present invention, the cache ratio determination unit 401 may determine the ratio based on the total amount of data stored in each cloud server.
본 발명의 일 실시예에 따르면, 네트워크 성능 측정부(403)는 복수의 클라우드 서버 연결된 디바이스와 복수의 클라우드 서버 간의 네트워크 성능을 각각 측정할 수 있다.According to an embodiment of the present invention, the network
또한 본 발명의 일 실시예에 따르면, 네트워크 성능 측정부(403)는 복수의 클라우드 서버와 디바이스 간의 네트워크 속도를 각각 측정할 수도 있다. Further, according to an embodiment of the present invention, the network
본 발명의 일 실시예에 따르면 네트워크 속도는 디바이스와 클라우드 서버 간의 전송 속도를 포함할 수 있다. According to an embodiment of the present invention, the network speed may include a transmission speed between a device and a cloud server.
추가적으로, 본 발명의 일 실시예에 따르면, 네트워크 성능 측정부(403)는 소정의 시간 간격마다 복수의 클라우드 서버와 디바이스 간의 네트워크 성능을 각각 측정할 수도 있다. 또한 도 3에서 설명한 바와 같이, 디바이스는 디바이스가 복수의 클라우드 서버와 통신하는 네트워크의 종류의 변화가 발생할 때마다 네트워크의 성능을 측정할 수 도 있고, 디바이스 내에 내장된 다양한 센서 값에 기초하여 네트워크의 성능을 측정할 수도 있다.Additionally, according to an embodiment of the present invention, the network
본 발명의 일 실시예에 따르면, 캐시 데이터 관리부(405)는 캐시 비율 결정부(401)에서 결정된 비율 및 캐시 저장 정책에 기초하여 캐시 데이터를 캐시 저장부(미도시)에 저장할 수 있다. 또한 캐시 데이터 관리부(405)는 디바이스의 캐시 저장 정책을 생성하고, 저장하고, 관리할 수 있다.According to an embodiment of the present invention, the cache data management unit 405 may store cache data in a cache storage unit (not shown) based on a ratio and a cache storage policy determined by the cache ratio determination unit 401. In addition, the cache data management unit 405 may create, store, and manage a cache storage policy of the device.
본 발명의 일 실시예에 따르면, 캐시 저장 정책은, 상기 디바이스의 캐시 데이터 저장 공간, 상기 디바이스의 캐시 데이터 저장 개수, 캐시 파일 저장 개수, 상기 디바이스의 캐시 데이터 저장 기준에 대한 정보 중 적어도 하나를 포함할 수 있으며, 상기 예시에 제한되지 않는다. 캐시 데이터 저장 기준에 대한 정보는 도 2 내지 도 3에서 설명한 바와 같다.According to an embodiment of the present invention, the cache storage policy includes at least one of a cache data storage space of the device, a cache data storage number of the device, a cache file storage number, and information on a cache data storage standard of the device. Can be, and is not limited to the above example. Information on the cache data storage standard is as described in FIGS. 2 to 3.
본 발명의 일 실시예에 따르면, 캐시 데이터 관리부(405)는 저장된 캐시 데이터를 삭제할 수 있다. According to an embodiment of the present invention, the cache data management unit 405 may delete stored cache data.
또한 본 발명의 일 실시예에 따르면, 캐시 데이터 관리부(405)는 복수의 클라우드 서버 내에 저장된 데이터의 전체량 중 캐시 데이터로 저장하는 데이터의 양의 비율이 작은 캐시 데이터부터 순차적으로 삭제할 수 있다. In addition, according to an embodiment of the present invention, the cache data management unit 405 may sequentially delete cache data having a small ratio of the amount of data stored as cache data among the total amount of data stored in the plurality of cloud servers.
예를 들어, 디바이스 내의 캐시 데이터 저장 공간이 부족한 경우, 캐시 데이터 관리부(405)는 디바이스 내의 캐시 데이터 중, 클라우드 서버 내에 저장된 데이터의 전체량의 2퍼센트가 저장되어 있는 캐시 데이터를 클라우드 서버 내에 저장된 데이터의 전체량의 4퍼센트가 저장되어 있는 캐시 데이터를 먼저 삭제할 수 있다. For example, when the storage space for cache data in the device is insufficient, the cache data management unit 405 stores cache data in which 2% of the total amount of data stored in the cloud server is stored among the cache data in the device. You can first delete the cache data where 4% of the total amount of is stored.
또한 본 발명의 일 실시예에 따르면, 클라우드 서버 내에 저장된 데이터인 원본 데이터의 총량에 기초하여 삭제할 수도 있다. 또한 네트워크 성능 측정부(401)에서 측정한 네트워크 속도에 기초하여, 각 클라우드 서버 별로 캐시 데이터를 삭제할 수 있다. In addition, according to an embodiment of the present invention, it may be deleted based on the total amount of original data, which is data stored in the cloud server. Also, based on the network speed measured by the network performance measurement unit 401, cache data for each cloud server may be deleted.
제 1 클라우드 서버와 디바이스간에 측정된 네트워크 성능이 다른 클라우드 서버와 디바이스 간에 측정된 네트워크 성능보다 좋은 경우, 캐시 데이터 관리부(405)는 디바이스 내에 저장된 캐시 데이터 중 제 1 클라우드 서버 내에 저장된 데이터에 기초하여 저장된 캐시 데이터를 삭제할 수 있다. When the network performance measured between the first cloud server and the device is better than the network performance measured between the other cloud servers and the device, the cache data management unit 405 is stored based on the data stored in the first cloud server among the cache data stored in the device. You can delete cache data.
또한 본 발명의 일 실시예에 따르면, 캐시 데이터 관리부(405)는, 캐시 데이터 저장 공간의 일부인 제 1 캐시 데이터 저장 공간에는 캐시 비율 결정부(401)에서 결정한 비율에 기초하여, 복수의 클라우드 서버 내에 저장된 데이터의 전체량 중 일부를 캐시 데이터로 저장하고, 제 1 캐시 데이터 저장 공간을 제외한 나머지 공간에는 복수의 클라우드 서버로부터 데이터를 수신한 순서에 기초하여 수신하는 데이터 전체량을 캐시 데이터로 저장할 수 있다. 이는 도 3에서 설명한 내용과 같다.In addition, according to an embodiment of the present invention, the cache data management unit 405 includes the first cache data storage space, which is a part of the cache data storage space, in the plurality of cloud servers based on the ratio determined by the cache ratio determination unit 401. Some of the total amount of stored data may be stored as cache data, and the entire amount of data received may be stored as cache data in a space other than the first cache data storage space based on the order in which data is received from a plurality of cloud servers. . This is the same as described in FIG. 3.
본 발명의 일 실시예에 따르면 송수신부(407)는 복수의 클라우드 서버 중 적어도 하나와 데이터를 송수신할 수 있다. 즉, 송수신부(407)는 복수의 클라우드 서버 내에 저장된 데이터를 수신할 수도 있고, 디바이스 내에 저장된 데이터를 복수의 클라우드 서버에 저장하기 위해 송신할 수도 있다.According to an embodiment of the present invention, the transmission/
본 발명의 일 실시예에 따르면 디바이스는 캐시 저장부(409)를 포함할 수 있다. 본 발명의 일 실시예에 따르면, 캐시 데이터 저장 공간이란 캐시 저장부(409)가 저장할 수 있는 총 용량, 크기를 의미할 수 있다. According to an embodiment of the present invention, a device may include a
추가적으로 본 발명의 일 실시예에 따르면 캐시 데이터 관리 장치(400)는 캐시 저장 공간 결정부(미도시), 캐시 저장 공간 할당부(미도시) 및 캐시 리스트 생성부(미도시)를 더 포함할 수 있다.Additionally, according to an embodiment of the present invention, the cache
본 발명의 일 실시예에 따르면 캐시 저장 공간 결정부(미도시)는 측정된 네트워크의 성능에 기초하여, 디바이스의 캐시 데이터 저장 공간을 결정할 수 있다. 즉, 캐시 저장 공간 결정부(미도시)는 디바이스의 저장 공간 중, 캐시 저장부(409)의 크기인 캐시 데이터 저장 공간을 결정할 수 있다.According to an embodiment of the present invention, the cache storage space determiner (not shown) may determine the cache data storage space of the device based on the measured network performance. That is, the cache storage space determiner (not shown) may determine a cache data storage space that is the size of the
또한 본 발명의 일 실시예에 따르면 캐시 저장 공간 할당부(미도시)는 네트워크 성능에 기초하여 캐시 데이터 저장 공간을 복수의 클라우드 각각에 대하여 할당할 수 있다. In addition, according to an embodiment of the present invention, the cache storage space allocator (not shown) may allocate a cache data storage space to each of a plurality of clouds based on network performance.
추가적으로, 본 발명의 일 실시예에 따르면 캐시 리스트 생성부(미도시)는 캐시 저장부(409)에 저장된 캐시 데이터의 리스트를 생성하고 관리할 수 있다. 물론 클라우드 데이터의 리스트를 생성하고 관리할 수도 있으며, 더미 데이터의 리스트를 별도로 생성하고 관리할 수 있다.Additionally, according to an embodiment of the present invention, the cache list generator (not shown) may generate and manage a list of cache data stored in the
본 발명의 일 실시예에 따르면 제어부(411)는 디바이스(400)가 포함하는 모든 구성요소들을 제어할 수 있으며, 중앙 제어 장치와 같은 연산 유닛을 포함할 수 있으나, 상기 예시에 제한되지 않는다. According to an embodiment of the present invention, the
도 5는 본 발명의 일 실시예에 네트워크 성능에 따른 데이터를 관리하는 방법을 설명하기 위한 도면이다. 5 is a diagram illustrating a method of managing data according to network performance according to an embodiment of the present invention.
도 5를 참조하면, 디바이스(507)는 제 1 클라우드 서버(501), 제 2 클라우드 서버(503). 제 3 클라우드 서버(505)와 네트워크를 통해 연결되어 있다. Referring to FIG. 5, the device 507 is a
본 발명의 일 실시예에 따르면, 디바이스(507)와 각 클라우드 서버(501 내지 505)간의 네트워크는 제한이 없다. 예를 들어 디바이스(607)과 제 1 클라우드 서버(501)는 유선 네트워크로 연결될 수도 있고, 무선 네트워크로 연결될 수도 있다.According to an embodiment of the present invention, the network between the device 507 and each of the
본 발명의 일 실시예에 따르면 디바이스(507)는 제 1 클라우드 서버(501)와 디바이스(507)간의 네트워크 성능을 측정할 수 있다. 일 실시예로서, 네트워크 성능을 네트워크의 속도에 기초하여 결정할 수 있다. 또한 네트워크 속도는 전송 속도를 포함할 수 있다. 또한 디바이스(507)는 제 2 클라우드 서버(503), 제 3 클라우드 서버(505)와 디바이스(507)간의 네트워크 성능 또한 측정할 수 있다. According to an embodiment of the present invention, the device 507 may measure network performance between the
도 5를 참조하면 제 1 클라우드 서버(501)는 제 1 데이터를 저장하고 있으며, 제 2 클라우드 서버(503)는 제 2 데이터를 저장하고 있으며, 제 3 클라우드 서버(505)는 제 3 데이터를 저장하고 있다. 5, a
본 발명의 일 실시예에 따르면, 디바이스(507)은 각 클라우드 서버(501 내지 503) 내에 저장된 데이터의 전체량 중 디바이스 내의 캐시 데이터로 저장하는 데이터의 양의 비율을, 측정된 네트워크 성능에 기초하여 결정할 수 있다.According to an embodiment of the present invention, the device 507 determines a ratio of the amount of data stored as cache data in the device among the total amount of data stored in each
예를 들어, 제 1 클라우드 서버(501)와 디바이스(507) 간의 전송 속도는 2MB/s, 제 2 클라우드 서버(503)와 디바이스(507) 간의 전송 속도는 3MB/s, 제 3 클라우드 서버(505)와 디바이스(507) 간의 전송 속도는 5MB/s, 제 1 데이터, 제 2 데이터, 제 3 데이터가 모두 100MB의 전체량을 가지는 데이터라 가정하면, 디바이스는 제 1 데이터를 캐시 데이터로서 저장하는 비율을 50%, 제 2 데이터를 캐시 데이터로서 저장하는 비율을 30%, 제 3 데이터를 캐시 데이터로서 저장하는 비율을 20%로 결정할 수 있다. For example, the transfer speed between the
즉, 디바이스(507)에 제 1 데이터의 캐시 데이터로서 저장하는 데이터 A(509)의 데이터의 양은 50MB, 제 2 데이터의 캐시 데이터로서 저장하는 데이터 B(511)의 데이터의 양은 30MB, 제 3 데이터의 캐시 데이터로서 저장하는 데이터 C(513)의 데이터의 양은 20MB일 수 있다.That is, the amount of data of
추가적으로 본 발명의 일 실시예에 따르면, 디바이스(507)은 각 클라우드 서버(501 내지 503) 내에 저장된 데이터의 전체량 중 디바이스 내의 캐시 데이터로 저장하는 데이터의 양의 비율을, 측정된 네트워크 성능 및 디바이스의 캐시 데이터 저장 공간에 기초하여 결정할 수 있다. 또한 본 발명의 일 실시예에 따르면, 복수의 클라우드 서버 각각에 저장된 전체 데이터량을 더 고려하여, 비율을 결정할 수도 있다.Additionally, according to an embodiment of the present invention, the device 507 calculates the ratio of the amount of data stored as cache data in the device among the total amount of data stored in each
본 발명의 일 실시예에 따르면 데이터는 적어도 하나의 파일을 포함할 수 있다. 즉, 데이터는 복수의 파일을 의미할 수 있고, 하나의 파일을 의미할 수도 있다. According to an embodiment of the present invention, data may include at least one file. That is, data can mean a plurality of files or can mean a single file.
예를 들면, 제 1 클라우드 서버(501) 내에 저장된 제 1 데이터의 총 크기가 100MB이며, 제 1 데이터를 캐시 데이터로서 저장하는 비율을 50%라 가정하면, 20MB, 30MB, 50MB의 크기를 가진 3 개의 파일로 구성되어 있는 경우, 20MB 파일의 일부인 10MB, 30MB 파일의 일부인 15MB, 50MB의 파일의 일부인 25MB를 각각 캐시데이터로 저장할 수 있고, 50MB 파일 하나만을 캐시 데이터로서 저장할 수도 있다.For example, assuming that the total size of the first data stored in the
본 발명의 일 실시예에 따르면 디바이스는 디바이스의 캐시 저장 정책에 기초하여 캐시 데이터로서 저장할 데이터를 선택할 수 있다.According to an embodiment of the present invention, the device may select data to be stored as cache data based on a cache storage policy of the device.
도 6은 본 발명의 일 실시예에 디바이스의 저장 공간을 할당하기 위한 방법을 설명하기 위한 도면이다.6 is a diagram for describing a method for allocating a storage space of a device according to an embodiment of the present invention.
도 6을 참조하면, 디바이스는 제 1 클라우드 서버(601), 제 2 클라우드 서버(603). 제 3 클라우드 서버(605)와 네트워크를 통해 연결되어 있다. Referring to FIG. 6, the device includes a
본 발명의 일 실시예에 따르면, 디바이스와 각 클라우드 서버(601 내지 605) 간의 네트워크는 제한이 없다. According to an embodiment of the present invention, there is no limitation on the network between the device and each of the
또한 도 6을 참조하면, 디바이스는 소정의 크기의 캐시 데이터 저장 공간(607)을 가지고, 제 1 클라우드 서버(601)는 제 1 데이터를 저장하고 있으며, 제 2 클라우드 서버(603)는 제 2 데이터를 저장하고 있으며, 제 3 클라우드 서버(605)는 제 3 데이터를 저장하고 있다. 6, the device has a cache data storage space 607 of a predetermined size, the
본 발명의 일 실시예에 따르면 디바이스는 제 1 클라우드 서버(601)와 디바이스간의 네트워크 성능을 측정할 수 있다. 일 실시예로서, 네트워크 성능을 네트워크의 속도에 기초하여 결정할 수 있다. 또한 네트워크 속도는 전송 속도를 포함할 수 있다. 또한 디바이스는 제 2 클라우드 서버(603), 제 3 클라우드 서버(605)와 디바이스간의 네트워크 성능 또한 측정할 수 있다.According to an embodiment of the present invention, the device may measure network performance between the
본 발명의 일 실시예에 따르면 디바이스는 클라우드 서버(601 내지 605)의 반응속도, 네트워크의 종류 등을 고려하여 네트워크 성능을 측정할 수도 있다. According to an embodiment of the present invention, the device may measure network performance in consideration of the response speed of the
본 발명의 일 실시예에 따르면, 디바이스는 각 클라우드 서버(601 내지 605)와 디바이스 간의 네트워크 성능에 기초하여 캐시 데이터 저장 공간(607)을 각 클라우드 서버 (601 내지 605)별로 할당할 수 있다. 예를 들어, 캐시 데이터 저장 공간(607)이 1000MB이고, 제 1 클라우드 서버(601)와 디바이스 간의 전송 속도는 2MB/s, 제 2 클라우드 서버(603)와 디바이스 간의 전송 속도는 3MB/s, 제 3 클라우드 서버(605)와 디바이스 간의 전송 속도는 5MB/s라 가정하면, 디바이스는 총 1000MB의 캐시 데이터 저장 공간 중 제 1 데이터를 디바이스 내에 캐시 데이터로 저장하기 위한 공간으로써 500MB(609), 제 2 데이터를 디바이스 내에 캐시 데이터로 저장하기 위한 공간으로서 300MB(611), 제 3 데이터를 디바이스 내에 캐시 데이터로 저장하기 위한 공간으로서 200MB(613)를 할당할 수 있다.According to an embodiment of the present invention, the device may allocate the cache data storage space 607 for each
추가적으로, 제 1 클라우드 서버용 캐시 데이터 저장 공간(609), 제 2 클라우드 서버용 캐시 데이터 저장 공간(611), 제 3 클라우드 서버용 캐시 데이터 저장 공간(613)에는 각각 제 1 데이터, 제 2 데이터, 제 3 데이터가 분할되어 저장될 수도 있다. 즉, 도6의 네트워크 성능에 기초하여 캐시 데이터 저장 공간(607)을 클라우드 서버 별로 할당하는 방식과 함께 도 5에서 설명한 캐시 데이터 저장 방법을 함께 사용할 수 있다.Additionally, first data, second data, and third data are provided in the cache data storage space 609 for the first cloud server, the cache data storage space 611 for the second cloud server, and the cache data storage space 613 for the third cloud server, respectively. May be divided and stored. That is, the cache data storage method described in FIG. 5 may be used together with the method of allocating the cache data storage space 607 for each cloud server based on the network performance of FIG. 6.
또한 본 발명의 일 실시예에 따르면, 캐시 데이터 저장 공간(607)은 사용자의 설정에 의해 결정될 수 있으며, 네트워크 성능에 기초하여 캐시 데이터 저장 공간(607)을 설정할 수도 있다. 예를 들면, 디바이스와 각 클라우드 서버 간의 평균적인 네트워크 성능이 소정의 기준 이상인 경우, 캐시 데이터 저장 공간을 소정의 크기 보다 작게 설정할 수도 있다.In addition, according to an embodiment of the present invention, the cache data storage space 607 may be determined by a user's setting, and the cache data storage space 607 may be set based on network performance. For example, when the average network performance between the device and each cloud server is more than a predetermined standard, the cache data storage space may be set smaller than a predetermined size.
도 7은 본 발명의 일 실시예에 따른 디바이스의 캐시 데이터를 삭제하는 방법을 설명하기 위한 도면이다.7 is a diagram illustrating a method of deleting cache data of a device according to an embodiment of the present invention.
본 발명의 일 실시예에 따르면, 디바이스는 소정의 캐시 데이터 저장 공간을 가질 수 있다. 따라서 캐시 데이터 저장 공간이 부족한 경우, 캐시 데이터를 삭제할 수 있다.According to an embodiment of the present invention, a device may have a predetermined cache data storage space. Therefore, if the cache data storage space is insufficient, the cache data can be deleted.
단계 S701에서, 디바이스는 캐시 데이터 저장 공간이 충분한지를 확인한다. 즉, 디바이스가 사용자의 입력에 기초하여 복수의 클라우드 서버 중 적어도 하나에 저장된 데이터를 수신하고, 캐시 저장 정책에 기초하여 수신한 데이터를 캐시 데이터로 저장해야 하는 경우, 디바이스 내의 캐시 저장 공간이 남아있는지를 확인한다. In step S701, the device checks whether the cache data storage space is sufficient. That is, if the device receives data stored in at least one of a plurality of cloud servers based on a user's input and needs to store the received data as cache data based on a cache storage policy, whether the cache storage space in the device remains? Check.
캐시 저장 공간이 남아있다면, 단계 S803과 같이 캐시 데이터를 저장할 수 있다.If the cache storage space remains, cache data can be stored as in step S803.
다만, 디바이스 내에 캐시 저장 공간이 남아있지 않다면, 캐시 데이터를 단계 S805에서, 캐시 데이터로 저장하는 데이터의 양의 비율이 작은 캐시 데이터부터 순차적으로 삭제할 수 있다.However, if there is no cache storage space remaining in the device, the cache data may be sequentially deleted from the cache data having a small ratio of the amount of data to be stored as cache data in step S805.
즉, 도 5에서 설명한 바와 같이, 디바이스는 클라우드 서버 내에 저장된 원본 데이터를 디바이스 내에 캐시 데이터로서 저장할 때, 원본 데이터의 전체량과 캐시 데이터로서 저장된 데이터의 양의 비율을 결정할 수 있다. 따라서, 저장된 캐시 데이터를 삭제할 때 또한 디바이스가 결정한 비율에 기초하여 삭제할 수 있다. 물론 캐시 데이터의 원본 데이터가 저장된 클라우드 서버와 디바이스간의 네트워크 속도에 기초하여 삭제할 캐시 데이터를 선택할 수도 있고, 저장된 캐시 데이터의 양에 기초하여 캐시 데이터를 선택할 수 있다. 즉, 캐시 데이터를 삭제하는 기준은 제한이 없으며, 사용자의 설정에 따라 변경될 수 있다. That is, as described with reference to FIG. 5, when the device stores original data stored in the cloud server as cache data in the device, the device may determine a ratio of the total amount of the original data and the amount of data stored as cache data. Therefore, when deleting the stored cache data, it can also be deleted based on a ratio determined by the device. Of course, the cache data to be deleted may be selected based on the network speed between the cloud server and the device in which the original data of the cache data is stored, or the cache data may be selected based on the amount of stored cache data. That is, the criteria for deleting cache data are not limited and can be changed according to the user's settings.
본 발명에 따른 장치는 프로세서, 프로그램 데이터를 저장하고 실행하는 메모리, 디스크 드라이브와 같은 영구 저장부(permanent storage), 외부 장치와 통신하는 통신 포트, 터치 패널, 키(key), 버튼 등과 같은 사용자 인터페이스 장치 등을 포함할 수 있다. 소프트웨어 모듈 또는 알고리즘으로 구현되는 방법들은 상기 프로세서상에서 실행 가능한 컴퓨터가 읽을 수 있는 코드들 또는 프로그램 명령들로서 컴퓨터가 읽을 수 있는 기록 매체 상에 저장될 수 있다. 여기서 컴퓨터가 읽을 수 있는 기록 매체로 마그네틱 저장 매체(예컨대, ROM(read-only memory), RAM(random-access memory), 플로피 디스크, 하드 디스크 등) 및 광학적 판독 매체(예컨대, 시디롬(CD-ROM), 디브이디(DVD: Digital Versatile Disc)) 등이 있다. 컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 컴퓨터 시스템들에 분산되어, 분산 방식으로 컴퓨터가 판독 가능한 코드가 저장되고 실행될 수 있다. 매체는 컴퓨터에 의해 판독가능하며, 메모리에 저장되고, 프로세서에서 실행될 수 있다. The device according to the present invention includes a processor, a memory for storing and executing program data, a permanent storage such as a disk drive, a communication port for communicating with an external device, a user interface such as a touch panel, keys, and buttons. Devices, etc. Methods implemented as software modules or algorithms may be stored on a computer-readable recording medium as computer-readable codes or program instructions executable on the processor. Here, as a computer-readable recording medium, a magnetic storage medium (e.g., read-only memory (ROM), random-access memory (RAM), floppy disk, hard disk, etc.) and optical reading medium (e.g., CD-ROM ), and DVD (Digital Versatile Disc). The computer-readable recording medium is distributed over networked computer systems, so that computer-readable codes can be stored and executed in a distributed manner. The medium is readable by a computer, stored in memory, and executed on a processor.
본 발명에서 인용하는 공개 문헌, 특허 출원, 특허 등을 포함하는 모든 문헌들은 각 인용 문헌이 개별적으로 및 구체적으로 병합하여 나타내는 것 또는 본 발명에서 전체적으로 병합하여 나타낸 것과 동일하게 본 발명에 병합될 수 있다.All documents, including publications, patent applications, patents, etc., cited in the present invention may be incorporated into the present invention in the same manner as that each cited document is individually and specifically merged or shown as a whole in the present invention. .
본 발명의 이해를 위하여, 도면에 도시된 바람직한 실시 예들에서 참조 부호를 기재하였으며, 본 발명의 실시 예들을 설명하기 위하여 특정 용어들을 사용하였으나, 특정 용어에 의해 본 발명이 한정되는 것은 아니며, 본 발명은 당업자에 있어서 통상적으로 생각할 수 있는 모든 구성 요소들을 포함할 수 있다. For the understanding of the present invention, reference numerals are given in preferred embodiments shown in the drawings, and specific terms are used to describe the embodiments of the present invention, but the present invention is not limited by specific terms, and the present invention May include all components commonly conceivable to those skilled in the art.
본 발명은 기능적인 블록 구성들 및 다양한 처리 단계들로 나타내어질 수 있다. 이러한 기능 블록들은 특정 기능들을 실행하는 다양한 개수의 하드웨어 또는/및 소프트웨어 구성들로 구현될 수 있다. 예를 들어, 본 발명은 하나 이상의 마이크로프로세서들의 제어 또는 다른 제어 장치들에 의해서 다양한 기능들을 실행할 수 있는, 메모리, 프로세싱, 로직(logic), 룩업 테이블(look-up table) 등과 같은 직접 회로 구성들을 채용할 수 있다. 본 발명에의 구성 요소들이 소프트웨어 프로그래밍 또는 소프트웨어 요소들로 실행될 수 있는 것과 유사하게, 본 발명은 데이터 구조, 프로세스들, 루틴들 또는 다른 프로그래밍 구성들의 조합으로 구현되는 다양한 알고리즘을 포함하여, C, C++, 자바(Java), 어셈블러(assembler) 등과 같은 프로그래밍 또는 스크립팅 언어로 구현될 수 있다. 기능적인 측면들은 하나 이상의 프로세서들에서 실행되는 알고리즘으로 구현될 수 있다. 또한, 본 발명은 전자적인 환경 설정, 신호 처리, 및/또는 데이터 처리 등을 위하여 종래 기술을 채용할 수 있다. 매커니즘, 요소, 수단, 구성과 같은 용어는 넓게 사용될 수 있으며, 기계적이고 물리적인 구성들로서 한정되는 것은 아니다. 상기 용어는 프로세서 등과 연계하여 소프트웨어의 일련의 처리들(routines)의 의미를 포함할 수 있다.The present invention can be represented by functional block configurations and various processing steps. These functional blocks may be implemented with various numbers of hardware or/and software configurations that perform specific functions. For example, the present invention provides integrated circuit configurations such as memory, processing, logic, and look-up tables, which can execute various functions by controlling one or more microprocessors or by other control devices. Can be adopted. Similar to how the components of the present invention can be implemented with software programming or software elements, the present invention includes various algorithms implemented with a combination of data structures, processes, routines or other programming constructs, including C, C++ , Java, assembler, or the like may be implemented in a programming or scripting language. Functional aspects can be implemented with an algorithm running on one or more processors. In addition, the present invention may employ the prior art for electronic environment setting, signal processing, and/or data processing. Terms such as mechanism, element, means, and configuration may be widely used, and are not limited to mechanical and physical configurations. The term may include a meaning of a series of routines of software in connection with a processor or the like.
본 발명에서 설명하는 특정 실행들은 일 실시 예들로서, 어떠한 방법으로도 본 발명의 범위를 한정하는 것은 아니다. 명세서의 간결함을 위하여, 종래 전자적인 구성들, 제어 시스템들, 소프트웨어, 상기 시스템들의 다른 기능적인 측면들의 기재는 생략될 수 있다. 또한, 도면에 도시된 구성 요소들 간의 선들의 연결 또는 연결 부재들은 기능적인 연결 및/또는 물리적 또는 회로적 연결들을 예시적으로 나타낸 것으로서, 실제 장치에서는 대체 가능하거나 추가의 다양한 기능적인 연결, 물리적인 연결, 또는 회로 연결들로서 나타내어질 수 있다. 또한, 필수적인, 중요하게 등과 같이 구체적인 언급이 없다면 본 발명의 적용을 위하여 반드시 필요한 구성 요소가 아닐 수 있다.The specific implementations described in the present invention are examples, and do not limit the scope of the present invention in any way. For brevity of the specification, descriptions of conventional electronic configurations, control systems, software, and other functional aspects of the systems may be omitted. In addition, the connection or connection members of the lines between the components shown in the drawings exemplarily represent functional connections and/or physical or circuit connections, and in an actual device, various functional connections that can be replaced or additionally Connections, or circuit connections, may be represented. In addition, if there is no specific mention, such as essential, important, etc., it may not be a necessary component for the application of the present invention.
본 발명의 명세서(특히 특허청구범위에서)에서 상기의 용어 및 이와 유사한 지시 용어의 사용은 단수 및 복수 모두에 해당하는 것일 수 있다. 또한, 본 발명에서 범위(range)를 기재한 경우 상기 범위에 속하는 개별적인 값을 적용한 발명을 포함하는 것으로서(이에 반하는 기재가 없다면), 발명의 상세한 설명에 상기 범위를 구성하는 각 개별적인 값을 기재한 것과 같다. 마지막으로, 본 발명에 따른 방법을 구성하는 단계들에 대하여 명백하게 순서를 기재하거나 반하는 기재가 없다면, 상기 단계들은 적당한 순서로 행해질 수 있다. 반드시 상기 단계들의 기재 순서에 따라 본 발명이 한정되는 것은 아니다. 본 발명에서 모든 예들 또는 예시적인 용어(예들 들어, 등등)의 사용은 단순히 본 발명을 상세히 설명하기 위한 것으로서 특허청구범위에 의해 한정되지 않는 이상 상기 예들 또는 예시적인 용어로 인해 본 발명의 범위가 한정되는 것은 아니다. 또한, 당업자는 다양한 수정, 조합 및 변경이 부가된 특허청구범위 또는 그 균등물의 범주 내에서 설계 조건 및 팩터에 따라 구성될 수 있음을 알 수 있다.In the specification of the present invention (especially in the claims), the use of the above terms and similar designating terms may correspond to both the singular and the plural. In addition, when a range is described in the present invention, the invention to which an individual value falling within the range is applied (unless otherwise stated), and each individual value constituting the range is described in the detailed description of the invention. Same as Finally, if there is no explicit order or contrary to the steps constituting the method according to the present invention, the steps may be performed in a suitable order. The present invention is not necessarily limited according to the order of description of the steps. The use of all examples or illustrative terms (for example, etc.) in the present invention is merely for describing the present invention in detail, and the scope of the present invention is limited by the above examples or illustrative terms unless limited by the claims. It does not become. In addition, those skilled in the art can recognize that various modifications, combinations, and changes may be configured according to design conditions and factors within the scope of the appended claims or their equivalents.
Claims (23)
상기 캐시 데이터 관리 장치가 복수의 클라우드 서버와 연결된 디바이스와 복수의 클라우드 서버 간의 네트워크 성능을 각각 측정하는 단계; 및
상기 캐시 데이터 관리 장치가 상기 측정된 네트워크 성능에 기초하여, 상기 복수의 클라우드 서버 내에 저장된 데이터의 전체량 중 캐시 데이터로 저장하는 데이터 양의 비율을, 상기 복수의 클라우드 서버 각각에 대하여 결정하는 단계를 포함하는 것을 특징으로 하는 방법.In the cache data management method of the cache data management device,
Measuring, by the cache data management apparatus, network performance between a device connected to a plurality of cloud servers and a plurality of cloud servers, respectively; And
The cache data management apparatus determining a ratio of the amount of data stored as cache data among the total amount of data stored in the plurality of cloud servers, for each of the plurality of cloud servers, based on the measured network performance. Method comprising the.
상기 방법은,
상기 캐시 데이터 관리 장치가 상기 결정된 비율 및 캐시 저장 정책에 기초하여, 상기 캐시 데이터를 저장하는 단계를 더 포함하는 것을 특징으로 하는 방법.The method of claim 1,
The above method,
And storing, by the cache data management device, the cache data based on the determined ratio and a cache storage policy.
상기 캐시 저장 정책은, 상기 디바이스의 캐시 데이터 저장 공간, 상기 디바이스의 캐시 데이터 저장 개수, 상기 디바이스의 캐시 데이터 저장 기준에 대한 정보 중 적어도 하나를 포함하는 것을 특징으로 하는 방법.The method of claim 2,
Wherein the cache storage policy includes at least one of a cache data storage space of the device, a storage number of cache data of the device, and information on a cache data storage standard of the device.
상기 방법은,
상기 캐시 데이터 관리 장치가 상기 저장된 캐시 데이터를 삭제하는 단계를 더 포함하는 것을 특징으로 하는 방법.The method of claim 2,
The above method,
And deleting, by the cache data management device, the stored cache data.
상기 저장된 캐시 데이터를 삭제하는 단계는,
상기 복수의 클라우드 서버 내에 저장된 데이터의 전체량 중 캐시 데이터로 저장하는 데이터의 양의 비율이 작은 캐시 데이터부터 순차적으로 삭제하는 단계를 더 포함하는 것을 특징으로 하는 방법.The method of claim 4,
The step of deleting the stored cache data,
And sequentially deleting cache data having a small ratio of the amount of data stored as cache data among the total amount of data stored in the plurality of cloud servers.
상기 방법은
상기 캐시 데이터 관리 장치가 상기 저장된 캐시 데이터에 대한 캐시 리스트를 생성하는 단계를 더 포함하는 것을 특징으로 하는 방법.The method of claim 2,
The above method is
And generating, by the cache data management device, a cache list for the stored cache data.
상기 비율을, 상기 복수의 클라우드 서버 각각에 대하여 결정하는 단계는,
상기 측정된 각각의 네트워크 성능과 반비례하도록 상기 비율을 결정하는 단계를 포함하는 것을 특징으로 하는 방법.The method of claim 1,
The step of determining the ratio for each of the plurality of cloud servers,
And determining the ratio to be inversely proportional to the measured respective network performance.
상기 복수의 클라우드 서버와 디바이스 간의 네트워크 성능을 각각 측정하는 단계는,
상기 복수의 클라우드 서버와 디바이스 간의 네트워크 속도를 각각 측정하는 단계를 포함하는 것을 특징으로 하는 방법.The method of claim 1,
Measuring network performance between the plurality of cloud servers and devices, respectively,
And measuring network speeds between the plurality of cloud servers and devices, respectively.
상기 방법은,
상기 캐시 데이터 관리 장치가 상기 네트워크 성능에 기초하여, 상기 디바이스의 캐시 데이터 저장 공간의 크기를 결정하는 단계를 더 포함하는 것을 특징으로 하는 방법.The method of claim 1,
The above method,
And determining, by the cache data management apparatus, a size of a cache data storage space of the device based on the network performance.
상기 방법은,
상기 캐시 데이터 관리 장치가 상기 네트워크 성능에 기초하여, 상기 디바이스의 캐시 데이터 저장 공간을, 상기 복수의 클라우드 각각에 대하여, 할당하는 단계를 더 포함하는 것을 특징으로 하는 방법.The method of claim 1,
The above method,
And allocating, by the cache data management apparatus, a cache data storage space of the device for each of the plurality of clouds, based on the network performance.
복수의 클라우드 서버와 디바이스 간의 네트워크 성능을 각각 측정하는 단계는,
소정의 시간 간격 마다 복수의 클라우드 서버와 디바이스 간의 네트워크 성능을 각각 측정하는 것을 특징으로 하는 방법.The method of claim 1,
Measuring network performance between a plurality of cloud servers and devices, respectively,
A method, characterized in that each measuring network performance between a plurality of cloud servers and devices at predetermined time intervals.
복수의 클라우드 서버와 연결된 디바이스와 복수의 클라우드 서버 간의 네트워크 성능을 각각 측정하는 네트워크 성능 측정부; 및
상기 측정된 네트워크 성능에 기초하여, 상기 복수의 클라우드 서버 내에 저장된 데이터의 전체량 중 캐시 데이터로 저장하는 데이터 양의 비율을, 상기 복수의 클라우드 서버 각각에 대하여 결정하는 캐시 비율 결정부를 포함하는 것을 특징으로 하는 장치.In the cache data management device,
A network performance measurement unit for measuring network performance between a plurality of cloud servers and a device connected to the plurality of cloud servers, respectively; And
And a cache ratio determining unit configured to determine a ratio of the amount of data stored as cache data among the total amount of data stored in the plurality of cloud servers, based on the measured network performance, for each of the plurality of cloud servers. Device.
상기 장치는,
상기 결정된 비율 및 캐시 저장 정책에 기초하여, 상기 캐시 데이터를 캐시 저장부에 저장하는 캐시 데이터 관리부를 더 포함하는 것을 특징으로 하는 장치.The method of claim 12,
The device,
And a cache data management unit storing the cache data in a cache storage unit based on the determined ratio and a cache storage policy.
상기 캐시 저장 정책은, 상기 디바이스의 캐시 데이터 저장 공간, 상기 디바이스의 캐시 데이터 저장 개수, 상기 디바이스의 캐시 데이터 저장 기준에 대한 정보 중 적어도 하나를 포함하는 것을 특징으로 하는 장치.The method of claim 13,
Wherein the cache storage policy includes at least one of a cache data storage space of the device, a storage number of cache data of the device, and information on a cache data storage standard of the device.
상기 캐시 데이터 관리부는,
상기 저장된 캐시 데이터를 삭제하는 것을 특징으로 하는 장치.The method of claim 13,
The cache data management unit,
And deleting the stored cache data.
상기 캐시 데이터 관리부는,
상기 복수의 클라우드 서버 내에 저장된 데이터의 전체량 중 캐시 데이터로 저장하는 데이터의 양의 비율이 작은 캐시 데이터부터 순차적으로 삭제하는 것을 특징으로 하는 장치.The method of claim 15,
The cache data management unit,
And sequentially deleting cache data having a small ratio of the amount of data stored as cache data among the total amount of data stored in the plurality of cloud servers.
상기 장치는
상기 저장된 캐시 데이터에 대한 캐시 리스트를 생성하는 캐시 리스트 생성부를 더 포함하는 것을 특징으로 하는 장치.The method of claim 13,
The device is
And a cache list generator for generating a cache list for the stored cache data.
상기 캐시 비율 결정부는,
상기 측정된 각각의 네트워크 성능과 반비례하도록 상기 비율을 결정하는 것을 특징으로 하는 장치.The method of claim 12,
The cache ratio determination unit,
And determining the ratio to be inversely proportional to the measured respective network performance.
상기 네트워크 성능 측정부는,
상기 복수의 클라우드 서버와 디바이스 간의 네트워크 속도를 각각 측정하는 것을 특징으로 하는 장치.The method of claim 12,
The network performance measurement unit,
The device, characterized in that for measuring the network speeds between the plurality of cloud servers and the device, respectively.
상기 장치는,
상기 네트워크 성능에 기초하여, 상기 디바이스의 캐시 데이터 저장 공간을 결정하는 캐시 저장 공간 결정부를 더 포함하는 것을 특징으로 하는 장치.The method of claim 12,
The device,
And a cache storage space determining unit determining a cache data storage space of the device based on the network performance.
상기 장치는,
상기 네트워크 성능에 기초하여, 상기 디바이스의 캐시 데이터 저장 공간을, 상기 복수의 클라우드 각각에 대하여, 할당하는 캐시 저장 공간 할당부를 더 포함하는 것을 특징으로 하는 장치.The method of claim 12,
The device,
And a cache storage space allocating unit that allocates a cache data storage space of the device to each of the plurality of clouds, based on the network performance.
상기 네트워크 성능 측정부는,
소정의 시간 간격 마다 복수의 클라우드 서버와 디바이스 간의 네트워크 성능을 각각 측정하는 것을 특징으로 하는 장치.The method of claim 12,
The network performance measurement unit,
An apparatus, characterized in that each measuring network performance between a plurality of cloud servers and devices at predetermined time intervals.
A computer-readable recording medium storing a program for implementing the method according to claim 1.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020130107507A KR102180472B1 (en) | 2013-09-06 | 2013-09-06 | Method and Apparatus of Managing Cache Data |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020130107507A KR102180472B1 (en) | 2013-09-06 | 2013-09-06 | Method and Apparatus of Managing Cache Data |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20150028630A KR20150028630A (en) | 2015-03-16 |
KR102180472B1 true KR102180472B1 (en) | 2020-11-18 |
Family
ID=53023459
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020130107507A KR102180472B1 (en) | 2013-09-06 | 2013-09-06 | Method and Apparatus of Managing Cache Data |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102180472B1 (en) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102346748B1 (en) * | 2015-05-29 | 2022-01-03 | 에스케이플래닛 주식회사 | System for cloud streaming service, method of image cloud streaming service using selective server connection and apparatus for the same |
KR101977777B1 (en) * | 2016-12-23 | 2019-05-13 | 서울대학교산학협력단 | Vitual file based cloud service method and apparatus |
CN115250293A (en) * | 2022-06-30 | 2022-10-28 | 深圳水趣智能零售系统有限公司 | Data uploading method and device and computer readable storage medium |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5732240A (en) | 1993-06-04 | 1998-03-24 | Digital Equipment Corporation | Real-time data cache size adjustment in a server computer |
US20110131197A1 (en) | 2009-12-02 | 2011-06-02 | International Business Machines Corporation | Optimizing caching period of location data for network based location services |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030051055A1 (en) * | 2001-06-04 | 2003-03-13 | Nct Group, Inc. | System and method for modifying a data stream using element parsing |
KR102039028B1 (en) * | 2012-02-24 | 2019-10-31 | 삼성전자 주식회사 | Apparatus and method for sharing a data of mobile terminal |
-
2013
- 2013-09-06 KR KR1020130107507A patent/KR102180472B1/en active IP Right Grant
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5732240A (en) | 1993-06-04 | 1998-03-24 | Digital Equipment Corporation | Real-time data cache size adjustment in a server computer |
US20110131197A1 (en) | 2009-12-02 | 2011-06-02 | International Business Machines Corporation | Optimizing caching period of location data for network based location services |
Also Published As
Publication number | Publication date |
---|---|
KR20150028630A (en) | 2015-03-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI654558B (en) | Control method for mixed storage and mixed storage system | |
US9830101B2 (en) | Managing data storage in a set of storage systems using usage counters | |
US9348840B2 (en) | Adaptive data striping and replication across multiple storage clouds for high availability and performance | |
EP2860632B1 (en) | Cloud system, control method thereof, management server and control method thereof | |
CN112527186B (en) | Storage system, storage node and data storage method | |
JP6972714B2 (en) | Data acquisition programs, equipment, and methods | |
US10866934B1 (en) | Token-based data flow control in a clustered storage system | |
KR102180472B1 (en) | Method and Apparatus of Managing Cache Data | |
KR102098415B1 (en) | Cache management | |
CN113853778B (en) | Cloning method and device of file system | |
JP2015194892A (en) | Information processor, information processing system, control program for information processor, and control method for information processor | |
CN109947667B (en) | Data access prediction method and device | |
JP2008269050A (en) | Compression control device and method | |
JP2022188903A (en) | Information processing device and method | |
EP3182293B1 (en) | Processor and method using credit-based flow control | |
EP2940587A1 (en) | Computer, control device for computer system, and recording medium | |
JP6754115B2 (en) | Selection device, device selection method, program | |
KR101404260B1 (en) | Method and apparatus for providing life indicator of flash memory | |
JP6686976B2 (en) | Virtual tape management device, virtual tape management method, and program | |
CN114442910A (en) | Method, electronic device and computer program product for managing storage system | |
JP2009199453A (en) | Method for deciding whether client is appropriate or not, and storage controller | |
US10795861B2 (en) | Online measurement of potential deduplication efficiency | |
JP6399128B2 (en) | Selection device, device selection method, program | |
US10908828B1 (en) | Enhanced quality of service (QoS) for multiple simultaneous replication sessions in a replication setup | |
KR20130128835A (en) | System and method for cloud service by contacting with removable hard disk drive to set for user |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |