RU2435236C1 - System and method of recording data into cloud storage - Google Patents

System and method of recording data into cloud storage Download PDF

Info

Publication number
RU2435236C1
RU2435236C1 RU2010150731/08A RU2010150731A RU2435236C1 RU 2435236 C1 RU2435236 C1 RU 2435236C1 RU 2010150731/08 A RU2010150731/08 A RU 2010150731/08A RU 2010150731 A RU2010150731 A RU 2010150731A RU 2435236 C1 RU2435236 C1 RU 2435236C1
Authority
RU
Russia
Prior art keywords
cloud storage
cache
data
request
user
Prior art date
Application number
RU2010150731/08A
Other languages
Russian (ru)
Inventor
Дмитрий Леонидович Петров (RU)
Дмитрий Леонидович Петров
Юрий Станиславович Татаринов (RU)
Юрий Станиславович Татаринов
Александр Владимирович Митяков (RU)
Александр Владимирович Митяков
Original Assignee
Государственное образовательное учреждение высшего профессионального образования "Санкт-Петербургский государственный электротехнический университет "ЛЭТИ" им. В.И. Ульянова (Ленина)
Корпорация "САМСУНГ ЭЛЕКТРОНИКС Ко., Лтд."
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Государственное образовательное учреждение высшего профессионального образования "Санкт-Петербургский государственный электротехнический университет "ЛЭТИ" им. В.И. Ульянова (Ленина), Корпорация "САМСУНГ ЭЛЕКТРОНИКС Ко., Лтд." filed Critical Государственное образовательное учреждение высшего профессионального образования "Санкт-Петербургский государственный электротехнический университет "ЛЭТИ" им. В.И. Ульянова (Ленина)
Priority to RU2010150731/08A priority Critical patent/RU2435236C1/en
Application granted granted Critical
Publication of RU2435236C1 publication Critical patent/RU2435236C1/en

Links

Images

Landscapes

  • Information Transfer Between Computers (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

FIELD: information technology. ^ SUBSTANCE: system for recording data into cloud storage, having cloud storage and at least one user device containing a driver for the cloud storage, which includes a router, a prediction module, cache, cache manager, a connector to the cloud storage, a module for routing system events and user application query history, wherein the cache and the query history are contained a local file system, wherein the user device is configured to run the user application in the operating system; the router is configured to intercept user application queries to the file system and, if the query is directed the cloud storage, redirect the query to the cache manager and the prediction module, and also configured to return data obtained from the cache manager to the user application. ^ EFFECT: high efficiency of operation owing to more accurate prediction by using events occurring in the operating system to predict. ^ 3 cl, 4 dwg

Description

Изобретение относится к области распределения данных в системах или архитектурах памяти, а именно к системам и способам записи данных в облачное хранилище и может применяться в локальных устройствах (например, ПК или мобильных устройствах) с ограниченным объемом ресурсов, подключенных к внешнему облачному хранилищу данных (cloud storage).The invention relates to the field of data distribution in memory systems or architectures, and in particular to systems and methods for writing data to a cloud storage and can be applied to local devices (for example, PCs or mobile devices) with a limited amount of resources connected to an external cloud data storage (cloud storage).

В последнее время все чаще используются технологии облачных вычислений или cloud computing, которые позволяют использовать внешние вычислительные ресурсы (процессорное время, память, сети) для расширения возможностей локальных устройств (ПК, мобильных устройств). Методы использования внешних устройств хранения (внешняя память) уже нашли широкое применение на практике. Так, сервис dropbox.com и его аналоги позволяют арендовать устройства хранения и использовать их с ПК или мобильных устройств. Это позволяет пользователям иметь доступ к одним и тем же данным с любого ПК или устройства, подключенного к сети Интернет. При этом данные, хранящиеся на ПК или мобильном устройстве, полностью синхронизируются с внешним облачным хранилищем.Recently, cloud computing or cloud computing technologies have been increasingly used, which allow the use of external computing resources (processor time, memory, networks) to expand the capabilities of local devices (PCs, mobile devices). The methods of using external storage devices (external memory) have already found wide application in practice. So, dropbox.com service and its analogues allow you to rent storage devices and use them from PC or mobile devices. This allows users to access the same data from any PC or device connected to the Internet. At the same time, data stored on a PC or mobile device is fully synchronized with external cloud storage.

Мобильные устройства могут использовать облачные хранилища для расширения объема памяти. Имея 1-10 Гб памяти в мобильном устройстве, можно использовать дополнительных 100 Гб из «облака», не увеличивая физический размер памяти устройства и соответственно его стоимость. Но указанные сервисы используют полную синхронизацию данных, что неприменимо в мобильных устройствах с небольшим объемом памяти.Mobile devices can use cloud storage to expand storage capacity. Having 1-10 GB of memory in a mobile device, you can use an additional 100 GB from the "cloud" without increasing the physical size of the device’s memory and, accordingly, its cost. But these services use full data synchronization, which is not applicable in mobile devices with a small amount of memory.

Для эффективного использования облачных дисков в мобильных телефонах необходимо производить эффективное кеширование данных, т.е. необходимо выбирать, какие из данных должны находиться на устройстве, а какие оставаться в «облаке». Модуль системы, выполняющий эту функцию, называется менеджером кеша. Он может располагаться как на мобильном устройстве, так и в «облаке». В различных технических решениях менеджер кеша использует различные данные для определения кешируемого подмножества данных, в частности:For the efficient use of cloud disks in mobile phones, it is necessary to perform efficient data caching, i.e. you need to choose which of the data should be on the device and which to remain in the "cloud". The system module that performs this function is called the cache manager. It can be located both on a mobile device and in the cloud. In various technical solutions, the cache manager uses various data to determine the cached subset of the data, in particular:

кешируют все данные (синхронизация);cache all data (synchronization);

кешируемые данные задаются пользователем;cached data is set by the user;

прогнозируют кешируемые данные, исходя из статистики запросов к данным из «облака».predict cached data based on statistics of requests for data from the "cloud".

Известен клиент к сервису облачного хранения файлов Dropbox (http://dropbox.com) [1], который позволяет пользователям хранить свои данные во внешнем хранилище. На устройство пользователя инсталлируется программа-клиент. Данные хранятся на сервере, клиент их синхронизирует с пользовательским устройством.A well-known client is the Dropbox cloud storage service (http://dropbox.com) [1], which allows users to store their data in external storage. A client program is installed on the user's device. The data is stored on the server, the client synchronizes them with the user device.

В данной системе не используют кеш небольшого, заранее заданного размера, а для выбора кешируемого подмножества данных не используют алгоритмы прогнозирования, основанные на статистике пользовательских запросов к «облаку» и системных событий, что снижает эффективность работы системы. Кроме того, серьезный недостаток такого решения заключается в том, что система может работать только с одним облачными хранилищами (dropbox), что делает пользователя зависимым от поставщика услуг, ухудшая удобство пользования системой.This system does not use a cache of a small, predetermined size, and forecasting algorithms based on statistics of user requests to the “cloud” and system events are not used to select a cached subset of data, which reduces the efficiency of the system. In addition, a serious drawback of this solution is that the system can work only with one cloud storage (dropbox), which makes the user dependent on the service provider, impairing the usability of the system.

В патенте США №6032227 [2] описана система по доставке пользовательских данных из хранилища в память пользовательского устройства, имеющего ограниченный кеш. Система состоит из следующих элементов: драйвер файловой системы (IFS), менеджер кеша, сетевая файловая система на сервере (NFS). Драйвер файловой системы перехватывает системные вызовы к файловой системе от различных пользовательских приложений. Затем драйвер перенаправляет полученный системный вызов в менеджер кеша, который, анализируя системный вызов, определяет, где находится затребованный файл, и обращается или к локальной файловой системе устройства или же к сетевой файловой системе (NFS) на сервере. Менеджер кеша хранит историю недавно использованных файлов (статистика пользовательских запросов). В случае когда в кеше не хватает места для вновь потребовавшегося файла, “менеджер кеша”, основываясь на истории недавно использовавшихся файлов, удаляет из кеша наиболее “старые” файлы до тех пор, пока не освободится необходимое дисковое пространство.US Pat. No. 6,032,227 [2] describes a system for delivering user data from storage to the memory of a user device having a limited cache. The system consists of the following elements: file system driver (IFS), cache manager, network file system on the server (NFS). The file system driver intercepts system calls to the file system from various user applications. The driver then redirects the received system call to the cache manager, which, analyzing the system call, determines where the requested file is located and addresses either the device’s local file system or the network file system (NFS) on the server. The cache manager keeps a history of recently used files (statistics of user requests). In the case when there is not enough space in the cache for the newly needed file, the “cache manager”, based on the history of recently used files, deletes the oldest files from the cache until the necessary disk space is freed up.

Недостатки данной системы заключаются в следующем. В некоторых случаях (например, при переполнении кеша) загрузка пользовательских файлов из хранилища в кеш устройства происходит по запросу пользователя, таким образом, пользователь работает с хранилищем не прозрачно, а в диалоговом режиме. При этом не строится прогноз пользовательских потребностей, в результате чего при каждой операции чтения неиспользуемых ранее данных происходит задержка на время, пока эти данные не будут загружены в кеш. Для передачи данных с сервера используют только одну сетевую файловую систему (NIS), что снижает универсальность системы. Элементы системы, включая механизм IFS и менеджер кеша, работают на уровне ядра ОС, что накладывает существенные ограничения на объем используемой памяти и делает невозможным использование эффективных алгоритмов прогнозирования потребностей пользователя в данных.The disadvantages of this system are as follows. In some cases (for example, when the cache overflows), user files are downloaded from the storage to the device’s cache at the user's request, so the user does not work with the storage transparently, but in a dialogue mode. At the same time, the forecast of user needs is not built, as a result of which, for each operation of reading previously unused data, there is a delay for a time until this data is loaded into the cache. Only one network file system (NIS) is used to transfer data from the server, which reduces the versatility of the system. Elements of the system, including the IFS mechanism and the cache manager, operate at the kernel level of the OS, which imposes significant restrictions on the amount of memory used and makes it impossible to use effective algorithms for predicting user data needs.

Существует система по доставке контента (структурированные данные) с персонального компьютера на мобильное устройство посредством сети (выложенная заявка на патент США №2010/0174735) [3]. В данной системе персональный компьютер представляет собой сервер, на котором хранится различный контент, данные о пользователях и история их запросов, а также работают модули прогноза, конвертации контента и модуль качества услуги (QoS). Пользователь на мобильном устройстве через специализированное ПО формирует поисковый запрос на определенный контент и отправляет его на сервер. Сервер, согласно данному запросу, делает выборку подходящего контента и отправляет ее пользователю, затем, основываясь на данном и предыдущих запросах пользователя, он делает предположение о том, какой еще контент может заинтересовать пользователя, и отправляет его тоже. Контент может доставляться на устройство как в исходном, так и в преобразованном виде. В последнем случае перед отправлением контента пользователю контент проходит через модуль конвертации контента и преобразовывается в подходящий для мобильного устройства формат (например, из avi в 3gp).There is a system for delivering content (structured data) from a personal computer to a mobile device via a network (US Patent Application Laid-Open No. 2010/0174735) [3]. In this system, a personal computer is a server on which various content is stored, data about users and the history of their requests, as well as forecast, content conversion, and quality of service (QoS) modules. A user on a mobile device through specialized software generates a search query for specific content and sends it to the server. The server, according to this request, makes a selection of suitable content and sends it to the user, then, based on this and previous requests of the user, he makes an assumption about what other content may interest the user, and sends it too. Content can be delivered to the device in both its original and converted form. In the latter case, before sending the content to the user, the content passes through the content conversion module and is converted to a format suitable for the mobile device (for example, from avi to 3gp).

Недостатки данного решения состоят в следующем. Хранилищем данных является некоторая вычислительная система, способная выполнять некоторый расчет. Модуль прогноза находится на этой вычислительной системе, что не мешает использованию данного решения для работы с облачными хранилищами, не способными выполнять вычисления. Кроме того, прогноз необходимых пользователю данных основывается на сформированном пользователем поисковом запросе, что подразумевает работу с пользователем в диалоговом режиме.The disadvantages of this solution are as follows. A data warehouse is a computer system capable of performing some calculation. The forecast module is located on this computing system, which does not interfere with the use of this solution for working with cloud storage services that are not able to perform calculations. In addition, the forecast of the data necessary for the user is based on a search query generated by the user, which implies working with the user in a dialogue mode.

Наиболее близкими к заявляемому изобретению являются система и способ доставки данных от произвольного сетевого ресурса (www, ftp…) на мобильное устройство по средствам сети, описанные в выложенной заявке на патент США №2005/0108322 [4]. В качестве посредника по передаче данных используют некоторый сервер, доступ к которому с мобильного устройства осуществляется по беспроводной сети. Сервер представляет собой “вычислительную среду” (ПК, кластер, распределенная система), в которой содержится три программных модуля: модуль хранения, модуль предсказания и модуль доставки. На мобильном устройстве установлено специализированное ПО, которое позволяет делать запросы к различным ресурсам сети через промежуточный сервер и получать от него запрошенные данные. Когда пользователь делает запрос, то этот запрос отправляется на промежуточный сервер по беспроводной сети, где запрос сохраняется в модуле хранения. На основании информации, содержащейся в модуле хранения, модуль прогноза выполняет предсказание последующего запроса пользователя, загружает прогнозируемую информацию, сохраняет ее в модуле хранения и передает в модуль доставки. Наличие прогнозируемой информации в модуле хранения обеспечивает, при последующем доступе к ней, быстрый доступ к данным по беспроводной локальной сети без обращения в Интернет. Предсказание последующей активности пользователя определяется с помощью цепей Маркова. Модуль доставки транзитом передает на мобильное устройство запрошенный ресурс и ресурсы, которые предположительно понадобятся пользователю на следующем этапе (результат работы модуля прогноза). Данные система и способ выбраны в качестве прототипа заявленного изобретения.Closest to the claimed invention are a system and method for delivering data from an arbitrary network resource (www, ftp ...) to a mobile device by means of the network described in US Patent Application Laid-Open No. 2005/0108322 [4]. As a data transfer intermediary, some server is used, access to which is carried out wirelessly from a mobile device. The server is a “computing environment” (PC, cluster, distributed system), which contains three software modules: a storage module, a prediction module, and a delivery module. Specialized software is installed on the mobile device, which allows you to make requests to various network resources through an intermediate server and receive requested data from it. When the user makes a request, this request is sent to the intermediate server over the wireless network, where the request is stored in the storage module. Based on the information contained in the storage module, the forecast module predicts a subsequent user request, downloads the predicted information, stores it in the storage module, and transfers it to the delivery module. The availability of predicted information in the storage module provides, with subsequent access to it, quick access to data over a wireless local area network without Internet access. Prediction of subsequent user activity is determined using Markov chains. The transit delivery module transmits to the mobile device the requested resource and resources that the user will presumably need in the next step (the result of the forecast module). These system and method are selected as a prototype of the claimed invention.

Недостатки системы и способа прототипа заключаются в следующем. В прототипе используется внешняя вычислительная система, доступ к которой осуществляется по беспроводной локальной сети, что снижает универсальность применения системы за пределами локальных сетей с развернутым вспомогательным сервером.The disadvantages of the system and method of the prototype are as follows. The prototype uses an external computing system, access to which is via a wireless local area network, which reduces the versatility of using the system outside of local networks with a deployed auxiliary server.

Задачей заявляемого изобретения является создание системы и способа записи данных в облачное хранилище с повышенным удобством пользования: с обеспечением прозрачной работы пользователя с большими объемами данных при маленьком объеме кеша за счет отсутствия общения системы с пользователем в диалоговом режиме, а также с обеспечением возможности выбора пользователем используемого хранилища данных вне зависимости от поставщика услуг хранения; и с улучшенной эффективностью работы, за счет построения более точного прогноза путем использования для прогнозирования не только статистики по запросам пользователя, но и происходящих в операционной системе событий.The objective of the invention is the creation of a system and method of recording data in a cloud storage with enhanced usability: to ensure transparent operation of the user with large amounts of data with a small cache due to the lack of dialogue between the system and the user in the dialogue mode, as well as providing the possibility of the user choosing data warehousing regardless of the storage service provider; and with improved work efficiency, by constructing a more accurate forecast by using not only statistics for user queries to forecast, but also events occurring in the operating system.

Поставленная задача решена путем создания усовершенствованной системы записи данных в облачное хранилище, при этом заявляемая система содержит: облачное хранилище и, по меньшей мере, одно пользовательское устройство, содержащее драйвер облачного хранилища, причем упомянутый драйвер включает в себя роутер, модуль прогнозирования, кеш, менеджер кеша, коннектор к облачному хранилищу, модуль трассировки системных событий и историю запросов пользовательского приложения, причем кеш и история запросов содержатся в локальной файловой системе, при этом пользовательское устройство выполнено с возможностью выполнения пользовательского приложения в операционной системе; роутер выполнен с возможностью перехвата запросов пользовательского приложения к файловой системе, и если запрос направлен к облачному хранилищу, то перенаправления запроса к менеджеру кеша и модулю прогнозирования, а также с возможностью возвращения данных, полученных от менеджера кеша, пользовательскому приложению; менеджер кеша выполнен с возможностью определения, находится ли затребованный ресурс в кеше или нет, и если затребованных данных нет в кеше, то отправления запроса на загрузку данных в коннектор к облачному хранилищу, а также с возможностью возвращения данных роутеру после загрузки; причем при приходе запроса в роутер роутер также выполнен с возможностью отправления данных о запросе в модуль прогнозирования, который выполнен с возможностью формирования предположения о том, какие файлы понадобятся пользователю на следующем этапе, и отправления заявки на их загрузку в менеджер кеша, основываясь на текущем запросе и истории пользовательской активности, и, если эти данные отсутствуют в кеше, используют менеджер кеша, выполненный с возможностью загрузки этих данных из облачного хранилища с помощью коннектора к облачному хранилищу.The problem is solved by creating an improved system for writing data to the cloud storage, while the inventive system contains: cloud storage and at least one user device containing a cloud storage driver, said driver including a router, prediction module, cache, manager a cache, a cloud storage connector, a system events tracing module and a request history of a user application, and the cache and request history are contained in the local file system e, while the user device is configured to execute the user application in the operating system; the router is capable of intercepting requests of the user application to the file system, and if the request is directed to the cloud storage, then redirecting the request to the cache manager and forecasting module, as well as with the ability to return data received from the cache manager to the user application; the cache manager is configured to determine whether the requested resource is in the cache or not, and if the requested data is not in the cache, then send a request to download data to the connector to the cloud storage, and also with the ability to return data to the router after downloading; moreover, when a request arrives at the router, the router is also configured to send request data to the forecasting module, which is configured to form an assumption about which files the user will need in the next step, and send an application for downloading them to the cache manager based on the current request and user activity history, and if this data is not in the cache, a cache manager is used that is capable of downloading this data from the cloud storage using the connector to the cloud at the store.

В данном контексте термин «коннектор» понимается в том смысле, как это определено рекомендациями для Microsoft Exchange Server (см. http://ru.wikipedia.org/wiki/%D0%9A%D0%BE%D0%BD%D0%BD%D0%B5%D0%BA%D1%82%D0%BE%D1%80_%28Exchange%29) [5], a именно, как настроенное соединение между почтовыми серверами в различных группах маршрутизации или почтовых системах. При этом конкретные коннекторы могут быть выполнены в виде коннекторов, адаптированных к соединениям с конкретными типами серверов.In this context, the term “connector” is understood in the sense as defined by the recommendations for Microsoft Exchange Server (see http://en.wikipedia.org/wiki/%D0%9A%D0%BE%D0%BD%D0% BD% D0% B5% D0% BA% D1% 82% D0% BE% D1% 80_% 28Exchange% 29) [5], namely, as a configured connection between mail servers in different routing groups or mail systems. In this case, specific connectors can be made in the form of connectors adapted to connections with specific types of servers.

Для функционирования системы важно, чтобы пользовательское устройство было выбрано из набора пользовательских устройств, содержащего мобильное устройство и персональный компьютер.For the functioning of the system, it is important that the user device is selected from a set of user devices containing a mobile device and a personal computer.

Поставленная задача решена также путем создания способа записи данных в облачное хранилище в системе, которая содержит облачное хранилище и, по меньшей мере, одно пользовательское устройство, которое содержит драйвер облачного хранилища, который включает в себя роутер, модуль прогнозирования, кеш, менеджер кеша, коннектор к облачному хранилищу, модуль трассировки системных событий и историю запросов пользовательского приложения, при этом способ предусматривает выполнение следующих операций:The problem is also solved by creating a way to write data to the cloud storage in a system that contains cloud storage and at least one user device that contains a cloud storage driver, which includes a router, forecast module, cache, cache manager, connector to cloud storage, the module for tracing system events and the request history of the user application, while the method involves the following operations:

- формируют в пользовательском устройстве запросы пользовательского приложения к файловой системе;- form in the user device the requests of the user application to the file system;

- перехватывают запросы пользовательского приложения к файловой системе посредством роутера;- intercept user application requests to the file system through a router;

- если запрос направлен к облачному хранилищу, то направляют запрос к менеджеру кеша и модулю прогнозирования посредством роутера;- if the request is directed to the cloud storage, then the request is sent to the cache manager and forecasting module through the router;

- определяют с помощью менеджера кеша, находится затребованный ресурс в кеше или нет;- determine with the help of the cache manager whether the requested resource is in the cache or not;

- если ресурс находится в кеше, то с помощью менеджера кеша направляют запрос пользовательского приложения к кешированному файлу;- if the resource is in the cache, then with the help of the cache manager send a request for the user application to the cached file;

- если затребованных данных нет в кеше, то с помощью менеджера кеша отправляют запрос на загрузку данных в коннектор к облачному хранилищу;- if the requested data is not in the cache, then with the help of the cache manager they send a request to download data to the cloud storage connector;

- после загрузки данных возвращают с помощью менеджера кеша данные роутеру, посредством которого возвращают данные пользовательскому приложению;- after downloading the data, the data is returned using the cache manager to the router, by which the data is returned to the user application;

- причем при приходе запроса в роутер отправляют данные о запросе в модуль прогнозирования посредством роутера, делают предположение о том, какие файлы понадобятся пользователю на следующем этапе, и отправляют заявку на их загрузку в менеджер кеша, основываясь на текущем запросе и истории пользовательской активности посредством модуля прогнозирования, и, если эти данные отсутствуют в кеше, загружают их с помощью менеджера кеша из облачного хранилища, используя коннектор к облачному хранилищу.- moreover, when a request arrives at the router, the request data is sent to the forecasting module via the router, make an assumption about what files the user will need in the next step, and send a request for their download to the cache manager, based on the current request and the history of user activity through the module forecasting, and if this data is not in the cache, download it using the cache manager from the cloud storage using the connector to the cloud storage.

Для лучшего понимания заявленного изобретения далее приводится его подробное описание с привлечением соответствующих графических материалов.For a better understanding of the claimed invention the following is a detailed description with the involvement of the relevant graphic materials.

Фиг.1. Общая схема системы записи данных в облачное хранилище, выполненная согласно изобретению.Figure 1. A general diagram of a cloud storage data recording system in accordance with the invention.

Элементы:Items:

101 - пользователь;101 - user;

110 - мобильное устройство;110 is a mobile device;

111 - драйвер облачного хранилища;111 - cloud storage driver;

113.1 - кеш на мобильном устройстве;113.1 - cache on a mobile device;

113.2- кеш на персональном компьютере;113.2- cache on a personal computer;

120 - персональный компьютер;120 - personal computer;

130 - сеть;130 - network;

140 - облачное хранилище;140 - cloud storage;

145 - данные.145 - data.

Фиг.2. Схема драйвера облака, выполненная согласно изобретению.Figure 2. Cloud driver circuitry made according to the invention.

Элементы:Items:

112 - роутер;112 - router;

113 - кеш;113 - cache;

114 - модуль трассировки системных событий;114 - module tracing system events;

115 - менеджер кеша;115 - cache manager;

116 - история;116 - history;

117 - модуль прогнозирования;117 - forecasting module;

118 - коннектор к облачному хранилищу;118 - connector to the cloud storage;

119.1, 119.2 - адаптированные коннекторы к облачным хранилищам.119.1, 119.2 - adapted connectors to cloud storage.

Фиг.3. Блок-схема способа записи данных в облачное хранилище согласно изобретению.Figure 3. A flowchart of a method for recording data to a cloud storage according to the invention.

Фиг.4. Подробная схема системы записи данных в облачное хранилище согласно изобретению.Figure 4. A detailed diagram of a cloud storage system according to the invention.

Элементы:Items:

420 - пользовательские приложения;420 - user applications;

450 - локальная ФС;450 - local FS;

500.1, 500.2 - облачные хранилища.500.1, 500.2 - cloud storage.

Заявленная система записи данных в облачное хранилище может быть инсталлирована в мобильное устройство. Пользователь инсталлирует систему в устройство для расширения используемого дискового пространства без установки дополнительных физических модулей памяти (флеш-карт). Пользователь выбирает одного из поставщиков услуг (поддерживаемых системой облачных хранилищ) и, в случае необходимости, вводит свои авторизационные данные (логин и пароль к хранилищу). В качестве параметра работы системы задается максимальный размер кеша.The claimed system for recording data to the cloud storage can be installed on a mobile device. The user installs the system in a device to expand the used disk space without installing additional physical memory modules (flash cards). The user selects one of the service providers (supported by the cloud storage system) and, if necessary, enters his authorization data (username and password for the store). As a parameter of the system, the maximum cache size is set.

При соединении с облачным хранилищем модуль коннектор определяет, какое хранилище необходимо использовать. Выбор происходит на основе выбранного пользователем поставщика услуг.When connecting to cloud storage, the connector module determines which storage should be used. The selection is based on the service provider selected by the user.

Во время работы система перехватывает запросы от пользовательских приложений к файловой системе через роутер и передает их менеджеру кеша и модулю прогнозирования. Возникающие системные события (запуск процесса, обнаружение новой сети, подключение к устройству, изменение GPS координат) фиксируют в модуле трассировки системных событий и передают в модуль прогнозирования.During operation, the system intercepts requests from user applications to the file system via a router and passes them to the cache manager and forecasting module. Emerging system events (starting a process, detecting a new network, connecting to a device, changing GPS coordinates) are recorded in the system events tracing module and passed to the forecasting module.

Менеджер кеша анализирует перехваченный запрос и определяет, находится запрашиваемый файл в кеше или нет. Если файл уже находится в кеше, система использует квитированный файл. В противном случае система загружает требуемый файл из облачного хранилища. Менеджер кеша хранит данные кеша в локальной файловой системе, при этом отслеживает, чтобы размер данных кеша не превосходил заданный максимальный размер кеша.The cache manager analyzes the intercepted request and determines whether the requested file is in the cache or not. If the file is already in the cache, the system uses the acknowledged file. Otherwise, the system downloads the required file from the cloud storage. The cache manager stores cache data in the local file system, while ensuring that the size of the cache data does not exceed the specified maximum cache size.

В процессе работы системы модуль прогнозирования собирает историю обращений к файловой системе и системные события в виде истории, которая, как и данные кеша, хранится на локальной файловой системе. История используется модулем для прогнозирования будущих потребностей пользователя. Если модуль прогнозирование вычисляет, что вероятность запроса пользователем определенного файла высока, то он формирует запрос к модулю менеджер кеша на загрузку этого файла.During the operation of the system, the forecasting module collects the history of accesses to the file system and system events in the form of history, which, like cache data, is stored on the local file system. History is used by the module to predict future user needs. If the forecasting module calculates that the probability of a user requesting a specific file is high, then it generates a request to the cache manager module to load this file.

Вся работа по загрузке и удалению файлов из кеша осуществляется прозрачно для пользователя.All work on downloading and deleting files from the cache is transparent to the user.

Рассмотрим функционирование заявленных системы и способа записи данных в облачное хранилище в случае наличия двух локальных устройств: мобильного устройства и персонального компьютера (Фиг.1-4). Когда пользовательское приложение 420 посылает запрос на доступ к файловой системе 450, он перехватывается роутером 112. Роутер 112 перенаправляет пришедший запрос в менеджер кеша 115 и модуль прогнозирования 117.Consider the operation of the claimed system and method of recording data in a cloud storage in the case of two local devices: a mobile device and a personal computer (Figure 1-4). When user application 420 sends a request to access file system 450, it is intercepted by router 112. Router 112 redirects the request to cache manager 115 and prediction module 117.

Менеджер кеша 115 определеяет, где реально находится затребованный ресурс: в кеше 113 или нет. Если затребованные данные находятся в кеше 113, то осуществляется доступ к этому кешированному файлу. В случае если затребованных данных нет в кеше 113, менеджер 115 кеша определяет наличие достаточного места в кеше 113 для загрузки затребованного файла и освобождает место в случае необходимости. После этого менеджер 115 кеша отправляет запрос на загрузку данных в коннектор 118 к облачному хранилищу.The cache manager 115 determines where the requested resource is actually located: in cache 113 or not. If the requested data is in cache 113, then this cached file is accessed. If the requested data is not in the cache 113, the cache manager 115 determines if there is enough space in the cache 113 to load the requested file and free up space if necessary. After that, the cache manager 115 sends a request to download data to the cloud storage connector 118.

Коннектор 118 к облачному хранилищу в зависимости от используемого облачного хранища 500 (500.1 или 500.2) выбирает соответствующий адаптированный коннектор 119 (119.1 или 119.2) и загружает затребованные данные в кеш 113. После загрузки данных менеджер 115 кеша возвращает данные роутеру 112, а тот возвращает данные пользовательскому приложению 420.The cloud storage connector 118, depending on the cloud storage 500 used (500.1 or 500.2), selects the appropriate adapted connector 119 (119.1 or 119.2) and downloads the requested data to the cache 113. After downloading the data, the cache manager 115 returns data to the router 112, and that returns data user application 420.

Также при приходе запроса в роутер 112 он отправляет данные о запросе в модуль 117 прогнозирования. Модуль 117 прогнозирования, основываясь на текущем запросе и истории 116 пользовательской активности, делает предположение о том, какие файлы понадобятся пользователю на следующем этапе, и отправляет заявку на их загрузку в менеджер 115 кеша, и если эти данные отсутствуют в кеше 113, то менеджер 115 кеша загружает их из облачного хранилища 500 (500.1 или 500.2) при помощи коннетора 118 к облачному хранилищу.Also, when a request arrives at router 112, it sends the request data to prediction module 117. Prediction module 117, based on the current request and user activity history 116, makes an assumption about which files the user will need in the next step, and sends a request to download them to cache manager 115, and if this data is not in cache 113, then manager 115 cache downloads them from cloud storage 500 (500.1 or 500.2) using connector 118 to the cloud storage.

Модуль 117 прогнозирования получает информацию о системных событиях из модуля 114 трассировки системных событий. Модуль 117 прогнозирования, основываясь на текущем системном событии и истории 116 пользовательской активности, делает предположение о том, какие файлы понадобятся пользователю на следующем этапе, и отправляет заявку на их загрузку в менеджер 115 кеша, и если эти данные отсутствуют в кеше 113, то менеджер 115 кеша загружает их из облачного хранилища 500 (500.1 или 500.2) при помощи коннектора 118 к облачному хранилищу.Prediction module 117 obtains system event information from system event tracing module 114. Prediction module 117, based on the current system event and user activity history 116, makes an assumption about which files the user will need in the next step, and sends a request to download them to cache manager 115, and if this data is not in cache 113, then the manager 115 caches downloads them from cloud storage 500 (500.1 or 500.2) using connector 118 to the cloud storage.

Заявленное изобретение описывает систему кеширования данных на мобильном устройстве, учитывающую следующие особенности, характерные для облачных хранилищ и мобильных устройств:The claimed invention describes a system for caching data on a mobile device, taking into account the following features specific to cloud storage and mobile devices:

- Облачное хранилище не может содержать каких-либо вычислительных элементов (включая модуль кеширования). Хранилище выполняет строго определенную функцию хранения данных.- Cloud storage cannot contain any computing elements (including caching module). Storage performs a strictly defined data storage function.

- Система должна быть работоспособна с различными облачными хранилищами (dropbox, files.ovi.com и д.р.).- The system must be operational with various cloud storage services (dropbox, files.ovi.com, etc.).

- Использование хранилища должно выполняться прозрачно для пользователя. Пользователь не может задавать данные, которые необходимо кешировать.- The use of storage should be transparent to the user. The user cannot set the data to cache.

- Менеджер кеширования должен выполнять прогноз, исходя не только из статистики запросов к данным, но и исходя из системных событий мобильного устройства (запуск процесса, обнаружение новой сети, подключение к устройству, изменение GPS координат).- The cache manager should make a forecast based not only on statistics of data requests, but also on the basis of system events of a mobile device (starting a process, detecting a new network, connecting to a device, changing GPS coordinates).

Хотя указанный выше вариант выполнения изобретения был изложен с целью иллюстрации настоящего изобретения, специалистам ясно, что возможны разные модификации, добавления и замены, не выходящие из объема и смысла настоящего изобретения, раскрытого в прилагаемой формуле изобретения.Although the above embodiment of the invention has been set forth to illustrate the present invention, it is clear to those skilled in the art that various modifications, additions and substitutions are possible without departing from the scope and meaning of the present invention disclosed in the attached claims.

Claims (3)

1. Система записи данных в облачное хранилище, содержащая облачное хранилище и, по меньшей мере, одно пользовательское устройство, которое содержит драйвер облачного хранилища, который включает в себя роутер, модуль прогнозирования, кеш, менеджер кеша, коннектор к облачному хранилищу, модуль трассировки системных событий и историю запросов пользовательского приложения, причем кеш и история запросов содержатся в локальной файловой системе, при этом пользовательское устройство выполнено с возможностью выполнения пользовательского приложения в операционной системе; роутер выполнен с возможностью перехвата запросов пользовательского приложения к файловой системе и, если запрос направлен к облачному хранилищу, перенаправления запроса к менеджеру кеша и модулю прогнозирования, а также с возможностью возвращения данных, полученных от менеджера кеша, пользовательскому приложению; менеджер кеша выполнен с возможностью определения, находится ли затребованный ресурс в кеше или нет, и, если затребованных данных нет в кеше, отправления запроса на загрузку данных в коннектор к облачному хранилищу, а также с возможностью возвращения данных роутеру после загрузки; причем роутер также выполнен с возможностью отправления, при приходе запроса в роутер, данных о запросе в модуль прогнозирования, который выполнен с возможностью формирования предположения о том, какие файлы понадобятся пользователю на следующем этапе и отправления заявки на их загрузку в менеджер кеша, основываясь на текущем запросе и истории пользовательской активности, причем менеджера кеша выполнен с возможностью загрузки этих данных из облачного хранилища, используя коннектор к облачному хранилищу в случае, если такие данные отсутствуют в кеше.1. A system for writing data to a cloud storage containing cloud storage and at least one user device that contains a cloud storage driver, which includes a router, a prediction module, a cache, a cache manager, a cloud storage connector, a system trace module events and request history of the user application, and the cache and history of requests are contained in the local file system, while the user device is configured to execute the user application living in the operating system; the router is capable of intercepting requests from the user application to the file system and, if the request is directed to the cloud storage, redirecting the request to the cache manager and forecasting module, and also with the ability to return data received from the cache manager to the user application; the cache manager is configured to determine whether the requested resource is in the cache or not, and if the requested data is not in the cache, send a request to download data to the cloud storage connector, as well as to return data to the router after downloading; moreover, the router is also configured to send, upon request to the router, the request data to the forecasting module, which is configured to form an assumption about which files the user will need in the next step and send an application for their download to the cache manager, based on the current request and history of user activity, moreover, the cache manager is configured to download this data from the cloud storage using the connector to the cloud storage if such data is available They are in cache. 2. Система по п.1, отличающаяся тем, что пользовательское устройство выбрано из набора пользовательских устройств, включающего в себя мобильное устройство и персональный компьютер.2. The system according to claim 1, characterized in that the user device is selected from a set of user devices, including a mobile device and a personal computer. 3. Способ записи данных в облачное хранилище в системе, которая содержит облачное хранилище и, по меньшей мере, одно пользовательское устройство, которое содержит драйвер облачного хранилища, который включает в себя роутер, модуль прогнозирования, кеш, менеджер кеша, коннектор к облачному хранилищу, модуль трассировки системных событий и историю запросов пользовательского приложения, при этом способ предусматривает выполнение следующих операций:
формируют в пользовательском устройстве запросы пользовательского приложения к файловой системе;
перехватывают запросы пользовательского приложения к файловой системе с помощью роутера;
если запрос направлен к облачному хранилищу, направляют запрос к менеджеру кеша и модулю прогнозирования с помощью роутера;
определяют с помощью менеджера кеша, находится ли затребованный ресурс в кеше или нет;
если ресурс находится в кеше, то направляют с помощью менеджера кеша запрос пользовательского приложения к кешированному файлу;
если затребованных данных нет в кеше, то отправляют с помощью менеджера кеша запрос на загрузку данных в коннектор к облачному хранилищу;
после загрузки данных возвращают с помощью менеджера кеша данные роутеру, через который возвращают данные пользовательскому приложению;
причем при приходе запроса в роутер отправляют с помощью роутера данные о запросе в модуль прогнозирования, делают предположение о том, какие файлы понадобятся пользователю на следующем этапе, и отправляют заявку на их загрузку в менеджер кеша, основываясь на текущем запросе и истории пользовательской активности, выполненной с помощью модуля прогнозирования, и, если эти данные отсутствуют в кеше, загружают их с помощью менеджера кеша из облачного хранилища, используя коннектор к облачному хранилищу.
3. A method of writing data to the cloud storage in a system that contains cloud storage and at least one user device that contains a cloud storage driver, which includes a router, a prediction module, a cache, a cache manager, a cloud storage connector, a module for tracing system events and a request history of a user application, while the method provides for the following operations:
form in the user device the requests of the user application to the file system;
intercept user application requests to the file system using a router;
if the request is directed to the cloud storage, send a request to the cache manager and forecast module using a router;
determine with the help of the cache manager whether the requested resource is in the cache or not;
if the resource is in the cache, then, with the help of the cache manager, a user application request is sent to the cached file;
if the requested data is not in the cache, then they send a request using the cache manager to download data to the cloud storage connector;
after downloading the data, the data is returned using the cache manager to the router, through which the data is returned to the user application;
moreover, when a request arrives at the router, the request data is sent to the forecasting module using the router, make an assumption about which files the user will need in the next step, and send a request for their download to the cache manager based on the current request and the history of user activity performed using the forecasting module, and if this data is not in the cache, download it using the cache manager from the cloud storage using the connector to the cloud storage.
RU2010150731/08A 2010-12-13 2010-12-13 System and method of recording data into cloud storage RU2435236C1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
RU2010150731/08A RU2435236C1 (en) 2010-12-13 2010-12-13 System and method of recording data into cloud storage

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
RU2010150731/08A RU2435236C1 (en) 2010-12-13 2010-12-13 System and method of recording data into cloud storage

Publications (1)

Publication Number Publication Date
RU2435236C1 true RU2435236C1 (en) 2011-11-27

Family

ID=45318306

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2010150731/08A RU2435236C1 (en) 2010-12-13 2010-12-13 System and method of recording data into cloud storage

Country Status (1)

Country Link
RU (1) RU2435236C1 (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2580425C1 (en) * 2014-11-28 2016-04-10 Общество С Ограниченной Ответственностью "Яндекс" Method of structuring stored user-related objects on server
RU2608666C2 (en) * 2012-09-11 2017-01-23 Телефонактиеболагет Л М Эрикссон (Пабл) Method and architecture for mobility of applications in distributed cloud environment
RU2624574C1 (en) * 2016-02-04 2017-07-04 Артем Николаевич Золотов Method and cloud data storage device, using mass storage device
RU2628208C2 (en) * 2011-12-27 2017-08-15 МАЙКРОСОФТ ТЕКНОЛОДЖИ ЛАЙСЕНСИНГ, ЭлЭлСи Cloud-border topologies
CN107332737A (en) * 2017-07-12 2017-11-07 上海斐讯数据通信技术有限公司 A kind of method and device of management and control router third-party application
RU2699397C2 (en) * 2014-06-30 2019-09-05 МАЙКРОСОФТ ТЕКНОЛОДЖИ ЛАЙСЕНСИНГ, ЭлЭлСи Opportunistic connection of private computing resources with external services

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Уэйн Paш "Правильное хранилище на базе облачных технологий", 25.02.2010. [найдено 24.05.2011]. Найдено в Интернет URL: http://www.pcweek.ru/its/article/detail_print.php?ID=l21862&print=Y, стр.1. *

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2628208C2 (en) * 2011-12-27 2017-08-15 МАЙКРОСОФТ ТЕКНОЛОДЖИ ЛАЙСЕНСИНГ, ЭлЭлСи Cloud-border topologies
US9876851B2 (en) 2011-12-27 2018-01-23 Microsoft Technology Licensing, Llc Cloud-edge topologies
RU2608666C2 (en) * 2012-09-11 2017-01-23 Телефонактиеболагет Л М Эрикссон (Пабл) Method and architecture for mobility of applications in distributed cloud environment
US9942320B2 (en) 2012-09-11 2018-04-10 Telefonaktiebolaget Lm Ericsson (Publ) Method and architecture for application mobility in distributed cloud environment
US10511662B2 (en) 2012-09-11 2019-12-17 Telefonaktiebolaget Lm Ericsson (Publ) Method and architecture for application mobility in distributed cloud environment
RU2699397C2 (en) * 2014-06-30 2019-09-05 МАЙКРОСОФТ ТЕКНОЛОДЖИ ЛАЙСЕНСИНГ, ЭлЭлСи Opportunistic connection of private computing resources with external services
RU2580425C1 (en) * 2014-11-28 2016-04-10 Общество С Ограниченной Ответственностью "Яндекс" Method of structuring stored user-related objects on server
RU2624574C1 (en) * 2016-02-04 2017-07-04 Артем Николаевич Золотов Method and cloud data storage device, using mass storage device
CN107332737A (en) * 2017-07-12 2017-11-07 上海斐讯数据通信技术有限公司 A kind of method and device of management and control router third-party application

Similar Documents

Publication Publication Date Title
US10713080B1 (en) Request-based virtual machine memory transitioning in an on-demand network code execution system
US9519585B2 (en) Methods and systems for implementing transcendent page caching
US11010188B1 (en) Simulated data object storage using on-demand computation of data objects
RU2435236C1 (en) System and method of recording data into cloud storage
CN101930449B (en) Client, brokerage server and method for providing cloud storage
US9002932B2 (en) Cloud computing access gateway and method for providing a user terminal access to a cloud provider
US20150213134A1 (en) Data query method and system and storage medium
US8769205B2 (en) Methods and systems for implementing transcendent page caching
US20210342193A1 (en) Multi-cluster container orchestration
JP5032210B2 (en) Control computer, computer system, and access control method
US20170153909A1 (en) Methods and Devices for Acquiring Data Using Virtual Machine and Host Machine
CN113032099B (en) Cloud computing node, file management method and device
US11722553B2 (en) Function manager for an edge compute network
US11416176B2 (en) Function processing using storage controllers for load sharing
US10341454B2 (en) Video and media content delivery network storage in elastic clouds
CN109947667A (en) Data access prediction technique and device
JP2013182509A (en) Virtualization system, load distribution device, load distribution method and load distribution program
CN110347656B (en) Method and device for managing requests in file storage system
US10956084B2 (en) Drive utilization in multi-tiered systems with read-intensive flash
Shariff et al. An overview to pre-fetching techniques for content caching of mobile applications
CN115729438A (en) Data access method, device and storage medium
CN114765612A (en) Service access method and device
Lee et al. Fair bandwidth allocating and strip-aware prefetching for concurrent read streams and striped RAIDs in distributed file systems
KR101754713B1 (en) Asymmetric distributed file system, apparatus and method for distribution of computation
US11829625B2 (en) Slice memory control

Legal Events

Date Code Title Description
MM4A The patent is invalid due to non-payment of fees

Effective date: 20141214