WO2021213085A1 - System and method for storing data on cloud storage - Google Patents

System and method for storing data on cloud storage Download PDF

Info

Publication number
WO2021213085A1
WO2021213085A1 PCT/CN2021/081125 CN2021081125W WO2021213085A1 WO 2021213085 A1 WO2021213085 A1 WO 2021213085A1 CN 2021081125 W CN2021081125 W CN 2021081125W WO 2021213085 A1 WO2021213085 A1 WO 2021213085A1
Authority
WO
WIPO (PCT)
Prior art keywords
cloud storage
data
database
user device
server
Prior art date
Application number
PCT/CN2021/081125
Other languages
French (fr)
Inventor
Sunil Kumar
Ravi prakash DIXIT
Vinit kumar SHUKLA
Original Assignee
Guangdong Oppo Mobile Telecommunications Corp., Ltd.
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 Guangdong Oppo Mobile Telecommunications Corp., Ltd. filed Critical Guangdong Oppo Mobile Telecommunications Corp., Ltd.
Publication of WO2021213085A1 publication Critical patent/WO2021213085A1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0608Saving storage space on storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • G06F3/0613Improving I/O performance in relation to throughput
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/064Management of blocks
    • G06F3/0641De-duplication techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]

Definitions

  • the present disclosure relates generally to management and storage of data, and more particularly, to a system and method for storing data on a cloud storage.
  • the mechanism of storing data over a “cloud” involves storage of data in a remote location which can be accessed and managed from an electronic device using a wireless connection. This allows a large amount of data to be stored at a remote location, thereby reducing the burden on the internal storage capacity of the electronic device.
  • the current mechanisms only address the need to manage data transfer between various cloud storage sites of an entity.
  • the current technology only addresses the need of reducing latency and loss of packets during transfer of data from one cloud storage site to another of a single entity.
  • the current solutions also provide mechanisms for content indexing of stored data at various cloud storage sites, removing duplication in a single cloud environment only.
  • an object of the present invention is to provide for a system and method to store data in a cloud storage.
  • a first aspect of the present invention relates to a method for storing at least one data in at least one cloud storage.
  • the method commences when a request is received from a user device for storing a first data on a first cloud storage.
  • the request is received using an application on the user device.
  • at least one value is determined based on an analysis of a database.
  • the analysis of the database comprises of comparing at least one entry of the database with the first data to determine if the first data is stored in at least one of a second cloud storage.
  • the second cloud storage is different from the first cloud storage.
  • a positive value is determined in an event the first data matches to at least one entry of the database and a negative value is determined in an event the first data does not match to any entry of the database.
  • a negative value is determined, the first data is automatically stored in the first cloud storage.
  • a notification is transmitted to the user device. Thereafter, a response for storing the first data in at least one of the first cloud storage and the second cloud storage is received from the user device. Thereafter, the first data is stored in at least one of the first cloud storage and the second cloud storage based on the response received from the user device.
  • the database is dynamically updated based on the storage of the first data.
  • the system commences of a user device configured to send a request to a server for storing a first data on a first cloud storage.
  • the request is sent using an application on the user device.
  • the server Upon receipt of the request from the user device, the server is configured to determine at least one value based on an analysis of a database.
  • the server is configured to analyze the database by comparing at least one entry of the database with the first data to determine if the first data is stored in at least one of a second cloud storage, the second cloud storage being different from the first cloud storage.
  • the server is configured to determine a positive value in an event the first data matches to at least one entry of the database and a negative value is determined in an event the first data does not match to any entry of the database.
  • a negative value is determined, the first data is automatically stored in the first cloud storage by the server.
  • a notification is transmitted to the user device using a wireless communication network. Thereafter, a response for storing the first data in at least one of the first cloud storage and the second cloud storage is received from the user device using the wireless communication network. Thereafter, the first data is stored in at least one of the first cloud storage and the second cloud storage based on the response received from the user device.
  • the database is dynamically updated based on the storage of the first data.
  • Figure 1 illustrates an architecture of a system for storing at least one data in at least one cloud storage, in accordance with exemplary embodiments of the present invention.
  • Figure 2 illustrates an overview of an implementation of a server for storing at least one data in at least one cloud storage, in accordance with exemplary embodiments of the present invention.
  • Figure 3 illustrates a flow diagram depicting an exemplary method for storing at least one data in at least one cloud storage, in accordance with exemplary embodiments of the present invention.
  • the present invention provides a method and system for storing at least one data in at least one cloud storage.
  • a request is received from a user device for storing a first data on a first cloud storage.
  • the request is received using an application on the user device.
  • at least one value is determined based on an analysis of a database.
  • the analysis comprises of comparing at least one entry of the database with the first data to determine if the first data is stored in at least one of a second cloud storage.
  • the second cloud storage is different from the first cloud storage. Based on the comparison, a positive value is determined in an event the first data matches to at least one entry of the database and a negative value is determined in an event the first data does not match to at least one entry of the database.
  • the first data is automatically stored in the first cloud storage.
  • a notification is transmitted to the user device.
  • a response for storing the first data in at least one of the first cloud storage and the second cloud storage is received from the user device.
  • the first data is stored in at least one of the first cloud storage and the second cloud storage based on the response received from the user device.
  • the database is dynamically updated based on the storage of the first data.
  • connect As used herein, “connect” , “configure” , “couple” and its cognate terms, such as “connects” , “connected” , “configured” and “coupled” may include a physical connection (such as a wired/wireless connection) , a logical connection (such as through logical gates of semiconducting device) , other suitable connections, or a combination of such connections, as may be obvious to a skilled person.
  • send As used herein, “send” , “transfer” , “transmit” , and their cognate terms like “sending” , “sent” , “transferring” , “transmitting” , “transferred” , “transmitted” , etc. include sending or transporting data or information from one unit or component to another unit or component, wherein the data or information may or may not be modified before or after sending, transferring, transmitting.
  • the system [100] comprises of a user device [102] , a server [104] and at least one cloud storage [106A, 106B.... 106Z] , a database [108] and a wireless communication network [110] .
  • the at least one cloud storage [106A, 106B.... 106Z] may be referred to separately as cloud storage [106A] , cloud storage [106B] and so on and collectively to as cloud storage [106] .
  • the user device [102] refers to any electrical, electronic, electromechanical and computing device.
  • the user device [102] may include, but is not limited to, a mobile phone, a smartphone, a tablet, a phone, a laptop, a wearable device, a personal digital assistant and any such device obvious to a person skilled in the art. It will be understood by those of ordinary skill in the art that the structure shown is merely illustrative and does not limit the structure of the system [100] .
  • Fig. 1 only one user device [102] , a server [104] and database [106] is shown, however the system [100] or user device [102] may comprise of multiple such units and modules or the system [100] may comprise any such numbers of said units and modules, obvious to a person skilled in the art to implement the features of the present invention. Also, there may be one or more subunits of said units and modules of the system [100] and the same is not shown in the Fig. 1 for the purpose of clarity. It will be understood by those of ordinary skill in the art that the structure shown is merely illustrative and does not limit the structure of the system [100] . The system [100] may also include more or less components than those illustrated in Figure 1 or have a different configuration than that illustrated in this Figure 1.
  • the user device [102] is configured to receive an input from the user.
  • An input may be received may be received from the user to open an application.
  • the invention encompasses that an input may be received may be received for storing a first data on a cloud storage.
  • the input received from the user may be to start an application to store a first data on a first cloud storage [106A] .
  • the user may click a soft button on a touch panel of the user device [102] to store a picture on the first cloud storage [106A] .
  • an input may be received from the user to retrieve the cloud storage [106] of a first data.
  • the user may click a soft button on a touch panel of the user device [102] to start an application and retrieve the cloud storage [106] storing a first data, such as a photo.
  • the user device [102] is configured to display at least one icon, application, graphics, text, media, video, web page or an application window of the user device [102] .
  • the user device [102] is configured to display at least one application to the user.
  • the user device [102] may be comprise of a multi-touch interface.
  • an application refers to any self-contained or a group of computer software package (s) that performs a specific function directly for the user or, in some cases, for another application in accordance with the working of the present invention.
  • An application can be programs designed to perform a group of coordinated functions, tasks, or activities for the benefit of the user of the application installed on an user device [102] , including any application that uses at least one of the IP communication protocol and the non-IP communication protocol for transmission.
  • the user device [102] is also configured to allow a user to interact with the user device [102] through graphical icons and visual indicators, such as secondary notation, and any combination thereof.
  • the invention encompasses that the user device [102] provides an interactive interface to the user.
  • the invention encompasses that the user device [102] may include a touch panel configured to collect the user’s input.
  • the invention further encompasses that the user device [102] may comprise of a touch panel, a soft keypad, a hard keypad (including buttons) and the like.
  • the user interface [102a] is further configured to display at least one notification to the user.
  • the notification may be received from the server [104] .
  • the notification may comprise of an option to the user to store the first data on a first cloud storage [106A] .
  • the notification may comprise of an option to the user to store the first data on a first cloud storage [106A] and delete the first data stored in a second cloud storage [106B] .
  • the notification may comprise of an option to the user to store the first data on a first cloud storage [106A] or not store the first data.
  • the invention encompasses that the user device [102] may receive an input as a response to the notification displayed to the user.
  • the response to a notification received from the user may be to store the data in a first cloud storage [106A] .
  • the response to a notification received from the user may be to not store the data in a first cloud storage [106A] , as it is determined to be already stored in a second cloud storage [106B] .
  • the user device [102] may be configured to receive the input from the user via a graphical user interface on the touch panel.
  • a “graphical user interface” may be a user interface that allows a user of the user device [102] to interact with the user device [102] through graphical icons and visual indicators, such as secondary notation, and any combination thereof, and may comprise of a touch panel configured to receive an input using a touch screen interface.
  • the user device [102] may include a touch panel configured to collect the user’s input via touch operation, thereon or near, and using a finger or a stylus.
  • the invention encompasses that the detection of the touch on a graphical user interface of the user device [102] can be realized by various types such as resistive, capacitive, infrared, and surface acoustic waves.
  • the user device [102] is configured to receive a selection of the option of the notification displayed to the user as a response.
  • the response may be the selection to store the data in the first cloud storage [106A] .
  • the response may be the selection of the user to store the first data on a first cloud storage [106A] and delete the first data stored in a second cloud storage [106B] .
  • the response may be the selection of the user to store the first data on a first cloud storage [106A] or not store the first data.
  • the user device [102] is further configured to transmit the response received from the user to the server [104] .
  • the user device [102] may transmit the response received from the user to store the data in the first cloud storage [106A] to the server [104] .
  • the user interface [102a] is further configured to display at least one cloud storage [106] storing the first data.
  • the at least one cloud storage [106] storing the first data may be displayed as a notification to the user on the user device [102] .
  • the server [104] is configured to receive a request from the user device [102] .
  • the request may be for storing a first data on a first cloud storage [106A] .
  • the request may be received using an application on a user device [102] .
  • the request may be received to retrieve at least one cloud storage [106] storing the first data.
  • the server [104] is further configured to determine at least one value based on the first data being stored in at least one of the first cloud storage [106A] and at least one second cloud storage [106B, 106C...106Z] .
  • the invention encompasses that the second cloud storage [106B, 106C...106Z] is different from the first cloud storage [106A] .
  • the invention further encompasses that the value determined may be at least one of a positive value and a negative value.
  • the server [104] is further configured to determine at least one value based on an analysis of at least one database [108] .
  • the invention encompasses that the analysis of the database [108] is by comparing at least one entry [108a, 108b, 108c.... 108z] of the at least one database [108] with the first data.
  • the invention further encompasses that the at least one cloud storage [106] storing the first data may be retrieved by analysis of the database [108] .
  • the server [104] is further configured to transmit at least one instruction to the database [108] .
  • the at least one instruction may be to analyze the database [108] .
  • the at least one instruction may be to compare the at least one entry [108a, 108b, .... 108z] with the first data.
  • the index value of the at least one entry [108a, 108b, .... 108z] is compared with an index value of the first data, such as an identification value of the data.
  • the invention encompasses that all the entries [108a, 108b, .... 108z] of the database [108] are compared to analyze the database [108] .
  • the server [104] is further configured to compare all the entries [108a, 108b, ....
  • the server [104] is configured to determine a positive value when the first data matches to at least one entry [108a, 108b, 108c.... 108z] of the database [108] .
  • the server [104] is configured to determine a negative value when the first data does not match to any entry [108a, 108b, 108c.... 108z] of the database [108] .
  • the server [104] is further configured to transmit at least one instruction to delete at least one entry [108a, 108b, .... 108z] , modify at least one entry [108a, 108b, .... 108z] and add at least one entry [108a, 108b, .... 108z] in the database [108] .
  • the server [104] is configured to add, modify or delete at least one entry [108a, 108b, .... 108z] in the database [108] based on the storing of the first data in at least one of the first cloud storage [106A] and second cloud storage [106B] .
  • the server [104] is configured to transmit a notification to the user device [102] .
  • the server [104] is also configured to receive a response from the user device [102] in an event a positive value is determined.
  • the response may be to store the first data in at least one of the first cloud storage [106A] and the second cloud storage [106B] .
  • the response may be a selection of the option of the notification displayed to the user.
  • the response received by the server [104] may be the selection to store the data in the first cloud storage [106A] .
  • the response received by the server [104] may be the selection of the user to store the first data on a first cloud storage [106A] and delete the first data stored in a second cloud storage [106B] .
  • the server [104] is further configured to store the first data in at least one of the first cloud storage [106A] and the second cloud storage [106B] based on determined value.
  • the server [104] is configured to store the first data in at least one of the first cloud storage [106A] and the second cloud storage [106B] based on the response received from the user device [102] .
  • the server [104] is further configured to determine the at least one cloud storage [106] storing the first data.
  • the server [104] is further configured to determine the at least one cloud storage [106] storing the first data based on the analysis of the database [108] .
  • the server [104] is further configured to determine the at least one cloud storage [106] storing the first data based on the positive value or a negative value determined by the server [104] .
  • all the entries [108a, 108b, .... 108z] of the database are compared sequentially by the server [104] to analyze the database [108] .
  • the server [104] may transmit a notification to the user device that the first data is not stored in any cloud storage [106] .
  • the server [104] may retrieve the at least one cloud storage [106] from the at least one entry [108a, 108b, .. 108z] in the database [108] .
  • the server [104] may then send the at least one cloud storage [106] retrieved from the at least one entry [108a, 108b, .. 108z] in the database [108] to the user device [102] as a notification.
  • the server [104] includes one or more processors, wherein server [104] refers to any logic circuitry for processing instructions.
  • the server [104] may be a general-purpose processor, a special purpose processor, a conventional processor, a digital signal processor, a plurality of microprocessors, one or more microprocessors in association with a DSP core, a controller, a microcontroller, Application Specific Integrated Circuits, Field Programmable Gate Array circuits, any other type of integrated circuits, etc.
  • the server [104] may perform signal coding data processing, input/output processing, and/or any other functionality that enables the working of the system according to the present disclosure. More specifically, the server [104] is a hardware processor/server.
  • the at least one cloud storage [106] is configured to store software programs, modules, data, instructions, documents, files, data or any other information that may be useful for the user.
  • the at least one cloud storage [106] is further configured to allow the server [104] to execute various functional instructions and data processing by running software programs and modules.
  • the at least one cloud storage [106] may include, but is not limited to, a volatile memory, non-volatile memory, a remote storage, high-speed random-access memory and/or non-volatile memory, such as one or more magnetic disk storage devices, one or more optical storage devices, and/or flash memory (e.g., NAND, NOR) or a combination thereof.
  • the invention encompasses that the at least one cloud storage [106] includes at least one cloud storage that is remotely configured relative to server [104] which may be connected to the user device [202] and the processor via the wireless communication network [110] .
  • the database [108] is configured to store at least one entry [108a, 108b, .... 108z] .
  • the at least one entry [108a, 108b, .... 108z] comprises of data corresponding to at least one cloud storage [106] and the corresponding at least one data.
  • the at least one entry [108a, 108b, .... 108z] in the database [108] comprises of the data and the at least one cloud storage [106] in which the data is stored.
  • the database [108] is further configured to be dynamically updated.
  • the invention encompasses that the database [108] is configured to dynamically delete at least one entry [108a, 108b, .... 108z] , modify at least one entry [108a, 108b, .... 108z] and add at least one entry [108a, 108b, .... 108z] .
  • the invention encompasses that the database [108] is configured to receive at least one instruction from the server [104] .
  • the at least one instruction may be to query the database [108] .
  • the at least one instruction may be to compare the at least one entry [108a, 108b, .... 108z] with the first data.
  • the invention encompasses that all the entries [108a, 108b, .... 108z] of the database [108] are compared to analyze the database [108] .
  • All the entries [108a, 108b, .... 108z] of the database [108] are compared to determine a positive value or a negative value by the server [104] .
  • all the entries [108a, 108b, .... 108z] of the database are compared sequentially to analyze the database [108] .
  • the at least one instruction may be to delete at least one entry [108a, 108b, .... 108z] , modify at least one entry [108a, 108b, .... 108z] and add at least one entry [108a, 108b, .... 108z] in the database [108] .
  • the database [108] is configured to allow the server [104] to execute various functional instructions and data processing by running software programs and modules.
  • the database [108] may include, but is not limited to, a volatile memory, non-volatile memory, a remote storage, a cloud storage, high-speed random-access memory and/or non-volatile memory, such as one or more magnetic disk storage devices, one or more optical storage devices, and/or flash memory (e.g., NAND, NOR) or a combination thereof.
  • database [108] may further include memory remotely configured relative to server [104] via the wireless communication network [110] .
  • the wireless communication network [108] is configured to connect all the components of the system [100] comprising of at least one user device [102] , server [104] , at least one cloud storage [106] and database [108] .
  • the wireless communication network [108] may be at least one of a short range wireless medium and a long range wireless medium for enabling communication amongst various components of the system (100) .
  • the short-range communication includes, but not limited to, a Bluetooth, IEEE 802.11 protocol, an infrared, and ZigBee
  • the long-range communication includes, but not limited to, radio access wireless networks such as 3G, LTE, 4G, 5G, etc.
  • the server [104] comprises of a transceiver [104a] , a processor [104b] and a storage unit [104c] .
  • the transceiver [104a] is configured to receive a request for storing a data on a cloud storage [106] .
  • a request for storing a first data on a first cloud storage [106A] may be received by the transceiver [104a] .
  • the invention encompasses that the request may be received using an application on a user device [102] .
  • the transceiver [104a] is configured to send the request received to the processor [104b] .
  • the request may be received to retrieve at least one cloud storage [106] storing the first data.
  • the transceiver [104a] is further configured to transmit a notification to the user device [102] .
  • the invention encompasses that the notification is transmitted to the user device [102] by the transceiver [104a] in an event a positive value is determined by the processor [104b] .
  • the transceiver [104a] is further configured to receive a response from the user device [102] .
  • the invention encompasses that the response received may be for storing the first data in at least one of the first cloud storage [106A] and the second cloud storage [106B] .
  • the transceiver [104a] is configured to send the response received to the storage unit [104c] .
  • the transceiver [104a] is further configured to transmit at least one instruction to the database [108] .
  • the at least one instruction may be to analyze the database [108] .
  • the at least one instruction may be to compare the at least one entry [108a, 108b, .... 108z] with the first data.
  • the index value of the at least one entry [108a, 108b, .... 108z] is compared with an index value of the first data, such as an identification value of the data.
  • the invention encompasses that all the entries [108a, 108b, .... 108z] of the database [108] are compared to analyze the database [108] .
  • the transceiver [104a] is further configured to transmit at least one instruction to delete at least one entry [108a, 108b, .... 108z] , modify at least one entry [108a, 108b, .... 108z] and add at least one entry [108a, 108b, .... 108z] in the database [108] .
  • the transceiver [104a] is configured to add, modify or delete at least one entry [108a, 108b, .... 108z] in the database [108] based on the storing of the first data in at least one of the first cloud storage [106A] and second cloud storage [106B] .
  • the transceiver [104a] is configured to transmit a notification to the user device [102] .
  • the transceiver [104a] is also configured to receive a response from the user device [102] in an event a positive value is determined.
  • the response may be to store the first data in at least one of the first cloud storage [106A] and the second cloud storage [106B] .
  • the response may be a selection of the option of the notification displayed to the user.
  • the response received by the transceiver [104a] may be the selection to store the data in the first cloud storage [106A] .
  • the response received by the transceiver [104a] may be the selection of the user to store the first data on a first cloud storage [106A] and delete the first data stored in a second cloud storage [106B] .
  • the processor [104b] connected to the transceiver [104a] , is configured to determine at least one value.
  • the invention encompasses that the value determined may be at least one of a positive value and a negative value.
  • the processor [104b] is configured to determine at least one value based on an analysis of at least one database [108] .
  • the invention encompasses that the processor [104b] is configured to determine at least one value based on the first data being stored in at least one of a second cloud storage [106B] , when the second cloud storage [106B] being different from the first cloud storage [106A] .
  • the processor [104b] is also configured to analyze the database [108] by comparing at least one entry [108a, 108b, ...108z] of the at least one database [108] with the first data.
  • the processor [104b] is configured to determine a positive value when the first data matches to at least one entry [108a, 108b, ...108z] of the database [108] .
  • the processor [104b] is configured to determine a negative value when the first data does not match to at least one entry [108a, 108b, ...108z] of the database [108] .
  • the processor [104b] is configured to compare all the entries [108a, 108b, .... 108z] of the database [108] to determine a positive value or a negative value. In an embodiment, all the entries [108a, 108b, .... 108z] of the database are compared sequentially by the processor [104b] to analyze the database [108] .
  • the processor [104b] is also configured send the determined value to at least one of the storage unit [104c] and the transceiver [104a] .
  • the processor [104b] is configured to send the determined negative value to the storage unit [104c] and the determined positive value to the transceiver [104a] .
  • the processor [104b] is further configured to determine the at least one cloud storage [106] storing the first data.
  • the processor [104b] is further configured to determine the at least one cloud storage [106] storing the first data based on the analysis of the database [108] .
  • the processor [104b] is configured to determine the at least one cloud storage [106] storing the first data based on the positive value or negative value determined by the processor [104b] .
  • all the entries [108a, 108b, .... 108z] of the database are compared sequentially by the processor [104b] to analyze the database [108] .
  • the processor [104b] may transmit a notification to the user device that the first data is not stored in any cloud storage [106] .
  • the processor [104b] may retrieve the at least one cloud storage [106] from the at least one entry [108a, 108b, .. 108z] in the database [108] .
  • the processor [104b] may then send the at least one cloud storage [106] retrieved from the at least one entry [108a, 108b, .. 108z] in the database [108] to the user device [102] as a notification, via the transceiver [104a] .
  • the storage unit [104c] is configured to store the first data in at least one of cloud storage [106] .
  • the storage unit [104c] is configured to store the first data in the first cloud storage [106A] and the second cloud storage [106B] based on determined value.
  • the storage unit [104c] is configured to automatically store the first data in the first cloud storage [106A] when a negative value is determined by the processor [104b] .
  • the storage unit [104c] is further configured to store the first data in at least one of the first cloud storage [106A] and the second cloud storage [106B] based on the response received from the user device [102] .
  • the storage unit [104c] is configured to store the first data in the first cloud storage [106A] when a positive value is determined by the processor [104b] and a response is received from the user device [102] .
  • Figure 3 illustrates a flow diagram depicting an exemplary method [300] for storing at least one data in at least one cloud storage [106A, 106B.... 106Z] is disclosed in accordance with exemplary embodiments of the present invention.
  • the method begins at step 302, when a request for storing a first data on a first cloud storage [106A] is received from a user device [102] .
  • the request for storing a first data on a first cloud storage [106A] is received as an input from the user by the user device [102] .
  • the invention encompasses that the request is received using an application on the user device [102] .
  • the user device [102] may receive an input from the user to start an application.
  • the user device [102] may then receive an input for storing a first data on a first cloud storage [106A] .
  • the user may click a soft button on a touch panel of the user device [102] to open an application, such as Google Photos, on the graphical user interface of the user device [102] .
  • the user may then give an input to store a photo on the first cloud storage [106A] , such as the Google Cloud Storage.
  • the request is then received by the server [104] from the user device [102] via the wireless communication network [110] .
  • At step 304 upon receipt of the request from the user device [102] , at least one value is determined based on an analysis of a database [108] .
  • the at least one value is determined by the processor [104b] of the server [104] .
  • the invention encompasses that the at least one value is based on the first data being stored in the first cloud storage [106A] and at least one of a second cloud storage [106B, 106C...106Z] is determined.
  • the invention encompasses that the second cloud storage [106B, 106C...106Z] is different from the first cloud storage [106A] .
  • the invention further encompasses that the value determined may be at least one of a positive value and a negative value.
  • At least one value is determined by the server [104] based on an analysis of the database [108] .
  • the invention encompasses that the analysis of the database [108] is by comparing at least one entry [108a, 108b, 108c.... 108z] of the at least one database [108] with the first data.
  • the analysis of the database [108] is based on transmission of at least one instruction to the database [108] .
  • the at least one instruction may be to compare the at least one entry [108a, 108b, .. 108z] with the first data.
  • the invention encompasses that all the entries [108a, 108b, .. 108z] of the database [108] are compared to analyze the database [108] .
  • the invention encompasses that a positive value or a negative value is determined by the server [104] based on a comparison of all the entries [108a, 108b, .... 108z] of the database [108] .
  • all the entries [108a, 108b, .... 108z] of the database [108] are compared sequentially by the server [104] to analyze the database [108] .
  • a positive value is determined by the server [104] when the first data matches to at least one entry [108a, 108b, 108c.... 108z] of the database [108] .
  • a negative value is determined by the server [104] when the first data does not match to any entry [108a, 108b, 108c.... 108z] of the database [108] .
  • the server [104] may sequentially compare all the entries [108a, 108b, .... 108z] of the database [108] to determine if the photo is already stored in at least one cloud storage [106] .
  • a negative value may be determined if the photo doesn’t match to any entry in the database [108] .
  • a positive value may be determined is the photo matches to an entry, say entry [108m] , in the database [108] indicating that the photo is already stored in a second cloud storage [106B] , say Microsoft One Drive.
  • At least one cloud storage [106] is determined for storing the first data by the server [104] .
  • the at least one cloud storage [106] storing the first data is determined by the server [104] based on the analysis of the database [108] .
  • the at least one cloud storage [106] storing the first data is determined based on the positive value or negative value determined by the server [104] .
  • all the entries [108a, 108b, .... 108z] of the database are compared sequentially by the server [104] to analyze the database [108] .
  • a negative value is determined by the server [104]
  • the first data is automatically stored in the first cloud storage [106A] .
  • the first data is automatically stored in the first cloud storage [106A] by the storage unit [104c] .
  • the invention encompasses that the invention then ends.
  • the photo is automatically stored on the first cloud storage [106A] , such as the Google Cloud Storage by the storage unit [104c] .
  • a notification for successful storing of the first data in the first cloud storage [106A] may be displayed to the user.
  • a notification indicating the successful storage of the photo on the first cloud storage [106A] such as the Google Cloud Storage is displayed to the user.
  • the invention in case a negative value is determined by the server [104] , the invention encompasses that a notification may be transmitted to the user device [102] that the first data is not stored in any cloud storage [106] .
  • a notification is transmitted to the user device [102] .
  • the notification is transmitted to the user device [102] by the server [104] .
  • the notification may comprise of an option to the user to store the first data on a first cloud storage [106A] .
  • the notification may comprise of an option to the user to store the first data on a first cloud storage [106A] and delete the first data stored in a second cloud storage [106B] .
  • the notification may comprise of an option to the user to store the first data on a first cloud storage [106A] or not store the first data.
  • a notification may be displayed to the user giving an option to the user to store the photo in the first cloud storage [106a] , such as Google Photos, and delete already stored in a second cloud storage [106B] , say Microsoft One Drive.
  • the invention in case a positive value is determined by the server [104] , the invention encompasses that the at least one cloud storage [106] from the at least one entry [108a, 108b, .. 108z] in the database [108] is retrieved by the server [104] .
  • the at least one cloud storage [106] retrieved from the at least one entry [108a, 108b, .. 108z] in the database [108] is then transmitted to the user device [102] as a notification.
  • a response for storing the first data in at least one of the first cloud storage [106A] and the second cloud storage [106B] is received from the user device [102] .
  • the response for storing the first data is received by the server [104] .
  • the response may be a selection of an option of the notification displayed to the user on the user device [102] .
  • the response received by the server [104] may be the selection to store the data in the first cloud storage [106A] .
  • the response received by the server [104] may be the selection of the user to store the first data on a first cloud storage [106A] and delete the first data stored in a second cloud storage [106B] .
  • a response may be received from the user to store the data in the first data, say a photo, on a first cloud storage [106A] , say Google Photos, and delete the first data stored in a second cloud storage [106B] , say Microsoft One Drive.
  • the response from the user device [102] is received by the server [104] .
  • the first data is stored in at least one of the first cloud storage [106A] and the second cloud storage [106B] based on the response received from the user device [102] .
  • the first data is stored in the first cloud storage [106A] when a negative value is determined by the processor [104b] of the server [104] and a response is received from the user device [102] .
  • the first data say a photo
  • the first data may be stored on a first cloud storage [106A] , say Google Photos, and be deleted from the second cloud storage [106B] , say Microsoft One Drive.
  • the invention encompasses that the database [108] may be dynamically updated based on storing the first data in at least one of the first cloud storage [106A] and the second cloud storage [106B] .
  • the database [108] may be dynamically updated based on storing the first data in at least one of the first cloud storage [106A] and the second cloud storage [106B] .
  • the first data say a photo
  • a first cloud storage [106A] say Google Photos
  • deleting it from the second cloud storage [106B] say Microsoft One Drive
  • an entry [108z] may be made in the database [108] indicating that the first data is stored in the first cloud storage [106A] , say Google Photos, and the entry [108m] relating to the first data being stored in the second cloud storage [106B] , say Microsoft One Drive, be deleted.
  • the invention begins when a request for storing a first data, such as a video, on a first cloud storage [106A] is received from a user device [102] .
  • the request may be received when the user clicks on a soft button on a touch panel of the user device [102] to open an application on the graphical user interface of the user device [102] .
  • the user may then give an input to store the video on the first cloud storage [106A] , such as the Dropbox.
  • the request to store the video on the Dropbox cloud storage [106A] is then received by the server [104] from the user device [102] via the wireless communication network [110] .
  • At least one value is determined by the server [104] based on an analysis of a database [108] .
  • the at least one value is based on the video being stored in the Dropbox cloud storage [106A] and at least one of a second cloud storage [106B, 106C...106Z] .
  • the second cloud storage [106B, 106C...106Z] is different from the Dropbox cloud storage [106A] .
  • the value determined may be at least one of a positive value and a negative value.
  • the analysis of the database [108] is by comparing all the entries [108a, 108b, 108c.... 108z] of the database [108] with the video, such as a video id. All the entries [108a, 108b, .... 108z] of the database [108] are compared sequentially by the server [104] to analyze the database [108] to determine if the video is already stored in at least one cloud storage [106] .
  • a positive value or a negative value is determined by the server [104] based on a comparison of all the entries [108a, 108b, .... 108z] of the database [108] .
  • a positive value is determined by the server [104] when the video id matches to the id of at least one entry [108a, 108b, 108c.... 108z] of the database [108] .
  • a negative value is determined by the server [104] when the video id does not match to any id of all the entries [108a, 108b, 108c.... 108z] of the database [108] .
  • the video is automatically stored in the Dropbox cloud storage [106A] .
  • a notification for successful storing of the video in the Dropbox cloud storage [106A] may be displayed to the user.
  • the database [108] may be dynamically updated based on storing the video in the Dropbox cloud storage [106A] by adding an entry [108z] in the database [108] indicating that the video is stored in the Dropbox cloud storage [106A] .
  • the invention begins when a request for storing a first data, such as a file, on a first cloud storage [106A] is received from a user device [102] .
  • the request may be received when the user clicks on a soft button on a touch panel of the user device [102] to open an application on the graphical user interface of the user device [102] .
  • the user may then give an input to store the video on the first cloud storage [106A] , such as the Amazon Cloud Storage.
  • the request to store the file on the Amazon cloud storage [106A] is then received by the server [104] from the user device [102] via the wireless communication network [110] .
  • At least one value is determined by the server [104] based on an analysis of a database [108] .
  • the at least one value is based on the video being stored in the Amazon cloud storage [106A] and at least one of a second cloud storage [106B, 106C...106Z] .
  • the second cloud storage [106B, 106C...106Z] is different from the Amazon cloud storage [106A] .
  • the value determined may be at least one of a positive value and a negative value.
  • the analysis of the database [108] is by comparing all the entries [108a, 108b, 108c.... 108z] of the database [108] with the file, such as a file id. All the entries [108a, 108b, .... 108z] of the database [108] are compared sequentially by the server [104] to analyze the database [108] to determine if the file is already stored in at least one cloud storage [106] .
  • a positive value or a negative value is determined by the server [104] based on a comparison of all the entries [108a, 108b, .... 108z] of the database [108] .
  • a positive value is determined by the server [104] when the file id matches to the id of at least one entry [108a, 108b, 108c.... 108z] of the database [108] .
  • a negative value is determined by the server [104] when the file id does not match to any id of all the entries [108a, 108b, 108c.... 108z] of the database [108] .
  • a notification is transmitted to the user device [102] .
  • the notification may comprise of an option to the user to store the file on the Amazon cloud storage [106A] when the file is already stored in a second cloud storage [106B] , such as the Apple iCloud.
  • the notification may comprise of an option to the user to store the file on the Amazon cloud storage [106A] and delete the file stored in the Apple iCloud [106B] .
  • a response for storing the file in at least one of the Amazon cloud storage [106A] and the Apple iCloud [106B] is received from the user device [102] .
  • the response may be a selection of an option of the notification displayed to the user on the user device [102] to store the file on the Amazon cloud storage [106A] when the file is already stored in the Apple iCloud [106B] .
  • the response may also be the selection of the user to store the file on the Amazon cloud storage [106A] and delete the file stored in the Apple iCloud [106B] .
  • the response from the user device [102] is received by the server [104] .
  • the file is stored in the Amazon cloud storage [106A] . Further, the file may also be stored on the Amazon cloud storage [106A] and deleted from the Apple iCloud [106B] .
  • the database [108] may be dynamically updated based on storing the file in the Amazon cloud storage [106A] by adding an entry [108z] in the database [108] indicating that the file is stored in the Amazon cloud storage [106A] . Also, the database [108] may be dynamically updated based on storing the file in the Amazon cloud storage [106A] by adding an entry [108z] in the database [108] indicating that the file is stored in the Amazon cloud storage [106A] and the entry [108m] relating to the file being stored in the Apple iCloud [106B] is deleted.
  • the present disclosure provides for a method and system for storing at least one data in at least one cloud storage [106] .
  • the present invention further ensures that multiple copies of the same data are not stored in different cloud storages [106] .
  • the different cloud storages [106] could be owned by different entities without any link between them.
  • the present invention provides for saving cloud storage [106] space by only allowing a single copy of a data to be stored in different cloud storages [106] . Therefore, the present invention requires that multiple retentions of the data are allowed to be searched between different cloud storages [106] based on an analysis of a database and results in significant technical advancement over the prior art systems.
  • the present invention also provides for an efficient manner to retrieve the cloud storage [106] storing a particular data.
  • the units, interfaces, modules, and/or components depicted in the figures and described herein may be present in the form of a hardware, a software and a combination thereof. Connection/sshown between these units/components/modules/interfaces in the exemplary system architecture may interact with each other through various wired links, wireless links, logical links and/or physical links. Further, the units/components/modules/interfaces may be connected in other possible ways.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

A method relates to storing data in a cloud storage, and commences when a request is received from a user device for storing a first data on a first cloud storage; Thereafter, a value is determined based on an analysis of a database to determine if the first data is stored in a second cloud storage being different from the first cloud storage; A positive value is determined when the first data matches to an entry of the database and a negative value is determined when the first data does not match to any entry of the database; In case of a negative value, the first data is automatically stored in the first cloud storage; In case of a positive value, the first data is stored in the first cloud storage or the second cloud storage based on a response received from the user device.

Description

[Title established by the ISA under Rule 37.2] SYSTEM AND METHOD FOR STORING DATA ON CLOUD STORAGE TECHNICAL FIELD
The present disclosure relates generally to management and storage of data, and more particularly, to a system and method for storing data on a cloud storage.
BACKGROUND
The following description of related art is intended to provide background information pertaining to the field of the disclosure. This section may include certain aspects of the art that may be related to various features of the present disclosure. However, it should be appreciated that this section be used only to enhance the understanding of the reader with respect to the overall field of the invention, and not as admissions of prior art.
With the ever-increasing connectivity between devices across the globe, there has been a surge in the amount of data being shared between the devices. Further, the fact that a mobile device is now capable to execute a plethora of tasks, there was an urgent need to meet the demands of the user to store the large quantities of data on the devices. However, due to the limited size and physical constraints of electronic devices, the amount of space for storage of data on the device itself was not sufficient.
Thereafter, in order to meet the increasing demands of the users, there has been an increase in storing data over a “cloud” . The mechanism of storing data over a “cloud” involves storage of data in a remote location which can be accessed and managed from an electronic device using a wireless connection. This allows a large amount of data to be stored at a remote location, thereby reducing the burden on the internal storage capacity of the electronic device.
Many companies have acknowledged the advantages of utilizing cloud storage and have set up their own separate cloud storages, such as Amazon, Google and Microsoft to name a few. The current systems allow the user to upload in a cloud storage of a particular entity only and the data can be searched through the entity’s services. Such services often allow the user to create an account with the entity and allow uploading and searching of data in that particular cloud storage.
It is further observed that the current mechanisms only address the need to manage data transfer between various cloud storage sites of an entity. Particularly, the current technology only addresses the need of reducing latency and loss of packets during transfer of data from one cloud storage site to another of a single entity. The current solutions also provide mechanisms for content indexing of stored data at various cloud storage sites, removing duplication in a single cloud environment only.
It is pertinent to note that all the current mechanisms only allow uploading and management of data stored in a cloud storage of a particular entity only. It is observed that the various cloud storages of different entities are managed and stored separately without any link between various entities. Hence, with the current mechanism, a user can store the same file in a cloud storage of a particular entity without been provided with a notification that multiple renditions of the same file exist in various other cloud storages managed by different entities. For example, a user can store a photo in a cloud storage owned and managed by Amazon and also in a separate cloud storage owned and managed by Google. This duplication of data utilizes a lot of space on the cloud storage and leads to underutilization of the cloud storage.
Therefore, there exists an imperative need to manage all the cloud storages of different entities accessed by the user. A user must be able to retrieve the names of all the cloud storages where a particular data is stored. Further, a user must be notified if the user is trying to store the same document again in a separate cloud storage of a different entity, thereby creating multiple renditions of the same data.
Therefore, it is apparent from the aforementioned problems and limitations, that there exists a need to provide for a mechanism to store data in a cloud storage. Particularly, there is a need to reduce the duplication of data on different cloud storages, and that there exists a need to provide for a mechanism to that notifies the user if a data is tried to be uploaded by the user in a particular cloud storage of an entity which is already in another cloud storage of a different entity. There also exists a need to provide an efficient and reliable mechanism to retrieve/identify the names of all the different cloud storages where a particular data is stored.
SUMMARY OF THE INVENTION
This section is provided to introduce certain objects and aspects of the present invention in a simplified form that are further described below in the detailed description. This summary is not intended to identify the key features or the scope of the claimed subject matter. In order to overcome at least a few problems associated with the known solutions as provided in the previous section, an object of the present invention is to provide for a system and method to store data in a cloud storage.
It is also an object of the present invention to reduce the duplication of data on different cloud storages.
It is yet an object of the present invention to provide for a mechanism to that notifies the user if a data is tried to be uploaded by the user in a particular cloud storage of an entity which is already in another cloud storage of a different entity.
It is yet an object of the present invention to provide for an efficient and reliable mechanism to retrieve/identify the names of all the different cloud storages where a particular data is stored.
In view of the aforesaid objects of the present invention, a first aspect of the present invention relates to a method for storing at least one data in at least one cloud storage. The method commences when a request is received from a user device for storing a first data on a first cloud storage. The request is received using an application on the user device. Upon receipt of the request, at least one value is determined based on an analysis of a database. The analysis of the database comprises of comparing at least one entry of the database with the first data to determine if the first data is stored in at least one of a second cloud storage. As used herein, the second cloud storage is different from the first cloud storage. Based on the comparison, a positive value is determined in an event the first data matches to at least one entry of the database and a negative value is determined in an event the first data does not match to any entry of the database. In an event a negative value is determined, the first data is automatically stored in the first cloud storage. In an event a positive value is determined, a notification is transmitted to the user device. Thereafter, a response for storing the first data in at least one of the first cloud storage and the second cloud storage is received from the user device. Thereafter, the first data is stored in at least one of the first cloud storage and the second cloud storage based on the response received from the user device. Finally, the database is dynamically updated based on the storage of the first data.
Another aspect of the invention relates to a system for storing at least one data in at least one cloud storage. The system commences of a user device configured to send a request to a server for storing a first data on a first cloud storage. The request is sent using an application on the user device. Upon receipt of the request from the user device, the server is configured to determine at least one value based on an analysis of a database. The server is configured to analyze the database by comparing at least one entry of the database with the first data to determine if the first data is stored in at least one of a second cloud storage, the second cloud storage being different from the first cloud storage. Based on the comparison, the server is configured to determine a positive value in an event the first data matches to at least one entry of the database and a negative value is determined in an event the first data does not match to any entry of the database. In an event a negative value is determined, the first data is automatically stored in the first cloud storage by the server. In an event a positive value is determined, a notification is transmitted to the user device using a wireless communication network. Thereafter, a response for storing the first data in at least one of the first cloud storage and the second cloud storage is received from the user device using the wireless communication network. Thereafter, the first data is stored in at least one of the first cloud storage and the second cloud storage based on the response received from the user device. Finally, the database is dynamically updated based on the storage of the first data.
BRIEF DESCRIPTION OF THE DRAWINGS
The accompanying drawings, which are incorporated herein, and constitute a part of this disclosure, illustrate exemplary embodiments of the disclosed methods and  systems in which like reference numerals refer to the same parts throughout the different drawings. Components in the drawings are not necessarily to scale, emphasis instead being placed upon clearly illustrating the principles of the present disclosure. Some drawings may indicate the components using block diagrams and may not represent the internal circuitry of each component. It will be appreciated by those skilled in the art that disclosure of such drawings includes disclosure of electrical components or circuitry commonly used to implement such components. Although exemplary connections between sub-components have been shown in the accompanying drawings, it will be appreciated by those skilled in the art, that other connections may also be possible, without departing from the scope of the invention. All sub-components within a component may be connected to each other, unless otherwise indicated.
Figure 1 illustrates an architecture of a system for storing at least one data in at least one cloud storage, in accordance with exemplary embodiments of the present invention.
Figure 2 illustrates an overview of an implementation of a server for storing at least one data in at least one cloud storage, in accordance with exemplary embodiments of the present invention.
Figure 3 illustrates a flow diagram depicting an exemplary method for storing at least one data in at least one cloud storage, in accordance with exemplary embodiments of the present invention.
The foregoing shall be more apparent from the following more detailed description of the invention.
DETAILED DESCRIPTION OF THE INEVNTION
In the following description, for the purposes of explanation, various specific details are set forth in order to provide a thorough understanding of the embodiments of the present invention. It will be apparent, however, that embodiments of the present invention may be practiced without these specific details. Several features described hereafter can each be used independently of one another or with any combination of other features. An individual feature may not address any of the problems discussed above or might address only some of the problems discussed above. Some of the problems discussed above might not be fully addressed by any of the features described herein. Example embodiments of the present invention are described below, as illustrated in various drawings.
The present invention provides a method and system for storing at least one data in at least one cloud storage. A request is received from a user device for storing a first data on a first cloud storage. The request is received using an application on the user device. Upon receipt of the request, at least one value is determined based on an analysis of a database. The analysis comprises of comparing at least one entry of the  database with the first data to determine if the first data is stored in at least one of a second cloud storage. As used herein, the second cloud storage is different from the first cloud storage. Based on the comparison, a positive value is determined in an event the first data matches to at least one entry of the database and a negative value is determined in an event the first data does not match to at least one entry of the database. In an event a negative value is determined, the first data is automatically stored in the first cloud storage. In an event a positive value is determined, a notification is transmitted to the user device. Thereafter, a response for storing the first data in at least one of the first cloud storage and the second cloud storage is received from the user device. Finally, the first data is stored in at least one of the first cloud storage and the second cloud storage based on the response received from the user device. Thereafter, the database is dynamically updated based on the storage of the first data.
As used herein, “connect” , “configure” , “couple” and its cognate terms, such as “connects” , “connected” , “configured” and “coupled” may include a physical connection (such as a wired/wireless connection) , a logical connection (such as through logical gates of semiconducting device) , other suitable connections, or a combination of such connections, as may be obvious to a skilled person.
As used herein, “send” , “transfer” , “transmit” , and their cognate terms like “sending” , “sent” , “transferring” , “transmitting” , “transferred” , “transmitted” , etc. include sending or transporting data or information from one unit or component to another unit or component, wherein the data or information may or may not be modified before or after sending, transferring, transmitting.
Referring to Figure 2, an exemplary implementation of a system for storing at least one data in at least one cloud storage. As shown, the system [100] comprises of a user device [102] , a server [104] and at least one cloud storage [106A, 106B…. 106Z] , a database [108] and a wireless communication network [110] . As used herein, the at least one cloud storage [106A, 106B…. 106Z] may be referred to separately as cloud storage [106A] , cloud storage [106B] and so on and collectively to as cloud storage [106] .
As used herein, the user device [102] refers to any electrical, electronic, electromechanical and computing device. The user device [102] may include, but is not limited to, a mobile phone, a smartphone, a tablet, a phone, a laptop, a wearable device, a personal digital assistant and any such device obvious to a person skilled in the art. It will be understood by those of ordinary skill in the art that the structure shown is merely illustrative and does not limit the structure of the system [100] .
Also, in Fig. 1 only one user device [102] , a server [104] and database [106] is shown, however the system [100] or user device [102] may comprise of multiple such units and modules or the system [100] may comprise any such numbers of said units and modules, obvious to a person skilled in the art to implement the features of the present  invention. Also, there may be one or more subunits of said units and modules of the system [100] and the same is not shown in the Fig. 1 for the purpose of clarity. It will be understood by those of ordinary skill in the art that the structure shown is merely illustrative and does not limit the structure of the system [100] . The system [100] may also include more or less components than those illustrated in Figure 1 or have a different configuration than that illustrated in this Figure 1.
The user device [102] is configured to receive an input from the user. An input may be received may be received from the user to open an application. The invention encompasses that an input may be received may be received for storing a first data on a cloud storage. In an embodiment, the input received from the user may be to start an application to store a first data on a first cloud storage [106A] . For example, the user may click a soft button on a touch panel of the user device [102] to store a picture on the first cloud storage [106A] . In another embodiment, an input may be received from the user to retrieve the cloud storage [106] of a first data. For example, the user may click a soft button on a touch panel of the user device [102] to start an application and retrieve the cloud storage [106] storing a first data, such as a photo.
The user device [102] is configured to display at least one icon, application, graphics, text, media, video, web page or an application window of the user device [102] . The user device [102] is configured to display at least one application to the user. The user device [102] may be comprise of a multi-touch interface. As used herein, an application refers to any self-contained or a group of computer software package (s) that performs a specific function directly for the user or, in some cases, for another application in accordance with the working of the present invention. An application can be programs designed to perform a group of coordinated functions, tasks, or activities for the benefit of the user of the application installed on an user device [102] , including any application that uses at least one of the IP communication protocol and the non-IP communication protocol for transmission.
The user device [102] is also configured to allow a user to interact with the user device [102] through graphical icons and visual indicators, such as secondary notation, and any combination thereof. The invention encompasses that the user device [102] provides an interactive interface to the user. The invention encompasses that the user device [102] may include a touch panel configured to collect the user’s input. The invention further encompasses that the user device [102] may comprise of a touch panel, a soft keypad, a hard keypad (including buttons) and the like.
The user interface [102a] is further configured to display at least one notification to the user. The notification may be received from the server [104] . In a preferred embodiment, the notification may comprise of an option to the user to store the first data on a first cloud storage [106A] . In another embodiment, the notification may comprise of an option to the user to store the first data on a first cloud storage [106A] and delete the first data stored in a second cloud storage [106B] . In yet another embodiment, the notification may comprise of an option to the user to store the first  data on a first cloud storage [106A] or not store the first data.
Further, the invention encompasses that the user device [102] may receive an input as a response to the notification displayed to the user. In an embodiment, the response to a notification received from the user may be to store the data in a first cloud storage [106A] . In another embodiment, the response to a notification received from the user may be to not store the data in a first cloud storage [106A] , as it is determined to be already stored in a second cloud storage [106B] . The user device [102] may be configured to receive the input from the user via a graphical user interface on the touch panel. As used herein, a “graphical user interface” may be a user interface that allows a user of the user device [102] to interact with the user device [102] through graphical icons and visual indicators, such as secondary notation, and any combination thereof, and may comprise of a touch panel configured to receive an input using a touch screen interface. For example, the user device [102] may include a touch panel configured to collect the user’s input via touch operation, thereon or near, and using a finger or a stylus. The invention encompasses that the detection of the touch on a graphical user interface of the user device [102] can be realized by various types such as resistive, capacitive, infrared, and surface acoustic waves.
The user device [102] is configured to receive a selection of the option of the notification displayed to the user as a response. In a preferred embodiment, the response may be the selection to store the data in the first cloud storage [106A] . In another embodiment, the response may be the selection of the user to store the first data on a first cloud storage [106A] and delete the first data stored in a second cloud storage [106B] . In yet another embodiment, the response may be the selection of the user to store the first data on a first cloud storage [106A] or not store the first data.
The user device [102] is further configured to transmit the response received from the user to the server [104] . For example, the user device [102] may transmit the response received from the user to store the data in the first cloud storage [106A] to the server [104] .
The user interface [102a] is further configured to display at least one cloud storage [106] storing the first data. In a preferred embodiment, the at least one cloud storage [106] storing the first data may be displayed as a notification to the user on the user device [102] .
The server [104] is configured to receive a request from the user device [102] . The request may be for storing a first data on a first cloud storage [106A] . The request may be received using an application on a user device [102] . In another embodiment, the request may be received to retrieve at least one cloud storage [106] storing the first data.
The server [104] is further configured to determine at least one value based on the first data being stored in at least one of the first cloud storage [106A] and at least one second cloud storage [106B, 106C…106Z] . The invention encompasses that the  second cloud storage [106B, 106C…106Z] is different from the first cloud storage [106A] . The invention further encompasses that the value determined may be at least one of a positive value and a negative value.
In a preferred embodiment, the server [104] is further configured to determine at least one value based on an analysis of at least one database [108] . The invention encompasses that the analysis of the database [108] is by comparing at least one entry [108a, 108b, 108c…. 108z] of the at least one database [108] with the first data. The invention further encompasses that the at least one cloud storage [106] storing the first data may be retrieved by analysis of the database [108] .
The server [104] is further configured to transmit at least one instruction to the database [108] . In a preferred embodiment, the at least one instruction may be to analyze the database [108] . The at least one instruction may be to compare the at least one entry [108a, 108b, …. 108z] with the first data. In a preferred embodiment, the index value of the at least one entry [108a, 108b, …. 108z] is compared with an index value of the first data, such as an identification value of the data. The invention encompasses that all the entries [108a, 108b, …. 108z] of the database [108] are compared to analyze the database [108] . The server [104] is further configured to compare all the entries [108a, 108b, …. 108z] of the database [108] to determine a positive value or a negative value by the server [104] . In an embodiment, all the entries [108a, 108b, …. 108z] of the database are compared sequentially by the server [104] to analyze the database [108] . The server [104] is configured to determine a positive value when the first data matches to at least one entry [108a, 108b, 108c…. 108z] of the database [108] . The server [104] is configured to determine a negative value when the first data does not match to any entry [108a, 108b, 108c…. 108z] of the database [108] .
The server [104] is further configured to transmit at least one instruction to delete at least one entry [108a, 108b, …. 108z] , modify at least one entry [108a, 108b, …. 108z] and add at least one entry [108a, 108b, …. 108z] in the database [108] . The server [104] is configured to add, modify or delete at least one entry [108a, 108b, …. 108z] in the database [108] based on the storing of the first data in at least one of the first cloud storage [106A] and second cloud storage [106B] .
Further, the server [104] is configured to transmit a notification to the user device [102] . The server [104] is also configured to receive a response from the user device [102] in an event a positive value is determined. In a preferred embodiment, the response may be to store the first data in at least one of the first cloud storage [106A] and the second cloud storage [106B] . The response may be a selection of the option of the notification displayed to the user. In a preferred embodiment, the response received by the server [104] may be the selection to store the data in the first cloud storage [106A] . In another embodiment, the response received by the server [104] may be the selection of the user to store the first data on a first cloud storage [106A] and delete the first data stored in a second cloud storage [106B] .
The server [104] is further configured to store the first data in at least one of the first cloud storage [106A] and the second cloud storage [106B] based on determined value. In a preferred embodiment, the server [104] is configured to store the first data in at least one of the first cloud storage [106A] and the second cloud storage [106B] based on the response received from the user device [102] .
The server [104] is further configured to determine the at least one cloud storage [106] storing the first data. The server [104] is further configured to determine the at least one cloud storage [106] storing the first data based on the analysis of the database [108] . The server [104] is further configured to determine the at least one cloud storage [106] storing the first data based on the positive value or a negative value determined by the server [104] . In an embodiment, all the entries [108a, 108b, …. 108z] of the database are compared sequentially by the server [104] to analyze the database [108] . In an event a negative value is determined by the server [104] , the server [104] may transmit a notification to the user device that the first data is not stored in any cloud storage [106] . In an event a positive value is determined by the server [104] , the server [104] may retrieve the at least one cloud storage [106] from the at least one entry [108a, 108b, .. 108z] in the database [108] . The server [104] may then send the at least one cloud storage [106] retrieved from the at least one entry [108a, 108b, .. 108z] in the database [108] to the user device [102] as a notification.
As used herein, the server [104] includes one or more processors, wherein server [104] refers to any logic circuitry for processing instructions. The server [104] may be a general-purpose processor, a special purpose processor, a conventional processor, a digital signal processor, a plurality of microprocessors, one or more microprocessors in association with a DSP core, a controller, a microcontroller, Application Specific Integrated Circuits, Field Programmable Gate Array circuits, any other type of integrated circuits, etc. The server [104] may perform signal coding data processing, input/output processing, and/or any other functionality that enables the working of the system according to the present disclosure. More specifically, the server [104] is a hardware processor/server.
The at least one cloud storage [106] is configured to store software programs, modules, data, instructions, documents, files, data or any other information that may be useful for the user. The at least one cloud storage [106] is further configured to allow the server [104] to execute various functional instructions and data processing by running software programs and modules. The at least one cloud storage [106] may include, but is not limited to, a volatile memory, non-volatile memory, a remote storage, high-speed random-access memory and/or non-volatile memory, such as one or more magnetic disk storage devices, one or more optical storage devices, and/or flash memory (e.g., NAND, NOR) or a combination thereof. The invention encompasses that the at least one cloud storage [106] includes at least one cloud storage that is remotely configured relative to server [104] which may be connected to the user device [202] and the processor via the wireless communication network [110] .
The database [108] is configured to store at least one entry [108a, 108b, …. 108z] . The at least one entry [108a, 108b, …. 108z] comprises of data corresponding to at least one cloud storage [106] and the corresponding at least one data. In a preferred embodiment, the at least one entry [108a, 108b, …. 108z] in the database [108] comprises of the data and the at least one cloud storage [106] in which the data is stored.
The database [108] is further configured to be dynamically updated. The invention encompasses that the database [108] is configured to dynamically delete at least one entry [108a, 108b, …. 108z] , modify at least one entry [108a, 108b, …. 108z] and add at least one entry [108a, 108b, …. 108z] .
The invention encompasses that the database [108] is configured to receive at least one instruction from the server [104] . In a preferred embodiment, the at least one instruction may be to query the database [108] . The at least one instruction may be to compare the at least one entry [108a, 108b, …. 108z] with the first data. The invention encompasses that all the entries [108a, 108b, …. 108z] of the database [108] are compared to analyze the database [108] . All the entries [108a, 108b, …. 108z] of the database [108] are compared to determine a positive value or a negative value by the server [104] . In an embodiment, all the entries [108a, 108b, …. 108z] of the database are compared sequentially to analyze the database [108] .
In another embodiment, the at least one instruction may be to delete at least one entry [108a, 108b, …. 108z] , modify at least one entry [108a, 108b, …. 108z] and add at least one entry [108a, 108b, …. 108z] in the database [108] .
The database [108] is configured to allow the server [104] to execute various functional instructions and data processing by running software programs and modules. The database [108] may include, but is not limited to, a volatile memory, non-volatile memory, a remote storage, a cloud storage, high-speed random-access memory and/or non-volatile memory, such as one or more magnetic disk storage devices, one or more optical storage devices, and/or flash memory (e.g., NAND, NOR) or a combination thereof. In some embodiments, database [108] may further include memory remotely configured relative to server [104] via the wireless communication network [110] .
The wireless communication network [108] is configured to connect all the components of the system [100] comprising of at least one user device [102] , server [104] , at least one cloud storage [106] and database [108] . The wireless communication network [108] may be at least one of a short range wireless medium and a long range wireless medium for enabling communication amongst various components of the system (100) . As used herein, the short-range communication includes, but not limited to, a Bluetooth, IEEE 802.11 protocol, an infrared, and ZigBee, and the long-range communication includes, but not limited to, radio access wireless networks such as 3G, LTE, 4G, 5G, etc.
Although only one user device [102] has been shown in the Fig. 1, it will be appreciated by those skilled in the art that the invention may be implemented in any number of user devices [102] .
Referring to Figure 2 that illustrates an architecture of the server [104] , in accordance with exemplary embodiments of the present invention. As shown in figure 2, the server [104] comprises of a transceiver [104a] , a processor [104b] and a storage unit [104c] .
The transceiver [104a] is configured to receive a request for storing a data on a cloud storage [106] . In a preferred embodiment, a request for storing a first data on a first cloud storage [106A] may be received by the transceiver [104a] . The invention encompasses that the request may be received using an application on a user device [102] . The transceiver [104a] is configured to send the request received to the processor [104b] . In another embodiment, the request may be received to retrieve at least one cloud storage [106] storing the first data.
The transceiver [104a] is further configured to transmit a notification to the user device [102] . In a preferred embodiment, the invention encompasses that the notification is transmitted to the user device [102] by the transceiver [104a] in an event a positive value is determined by the processor [104b] . The transceiver [104a] is further configured to receive a response from the user device [102] . In a preferred embodiment, the invention encompasses that the response received may be for storing the first data in at least one of the first cloud storage [106A] and the second cloud storage [106B] . The transceiver [104a] is configured to send the response received to the storage unit [104c] .
The transceiver [104a] is further configured to transmit at least one instruction to the database [108] . In a preferred embodiment, the at least one instruction may be to analyze the database [108] . The at least one instruction may be to compare the at least one entry [108a, 108b, …. 108z] with the first data. In a preferred embodiment, the index value of the at least one entry [108a, 108b, …. 108z] is compared with an index value of the first data, such as an identification value of the data. The invention encompasses that all the entries [108a, 108b, …. 108z] of the database [108] are compared to analyze the database [108] .
The transceiver [104a] is further configured to transmit at least one instruction to delete at least one entry [108a, 108b, …. 108z] , modify at least one entry [108a, 108b, …. 108z] and add at least one entry [108a, 108b, …. 108z] in the database [108] . The transceiver [104a] is configured to add, modify or delete at least one entry [108a, 108b, …. 108z] in the database [108] based on the storing of the first data in at least one of the first cloud storage [106A] and second cloud storage [106B] .
Further, the transceiver [104a] is configured to transmit a notification to the user device [102] . The transceiver [104a] is also configured to receive a response from the user device [102] in an event a positive value is determined. In a preferred  embodiment, the response may be to store the first data in at least one of the first cloud storage [106A] and the second cloud storage [106B] . The response may be a selection of the option of the notification displayed to the user. In a preferred embodiment, the response received by the transceiver [104a] may be the selection to store the data in the first cloud storage [106A] . In another embodiment, the response received by the transceiver [104a] may be the selection of the user to store the first data on a first cloud storage [106A] and delete the first data stored in a second cloud storage [106B] .
The processor [104b] , connected to the transceiver [104a] , is configured to determine at least one value. The invention encompasses that the value determined may be at least one of a positive value and a negative value. The processor [104b] is configured to determine at least one value based on an analysis of at least one database [108] .
The invention encompasses that the processor [104b] is configured to determine at least one value based on the first data being stored in at least one of a second cloud storage [106B] , when the second cloud storage [106B] being different from the first cloud storage [106A] .
The processor [104b] is also configured to analyze the database [108] by comparing at least one entry [108a, 108b, …108z] of the at least one database [108] with the first data. The processor [104b] is configured to determine a positive value when the first data matches to at least one entry [108a, 108b, …108z] of the database [108] . The processor [104b] is configured to determine a negative value when the first data does not match to at least one entry [108a, 108b, …108z] of the database [108] . The processor [104b] is configured to compare all the entries [108a, 108b, …. 108z] of the database [108] to determine a positive value or a negative value. In an embodiment, all the entries [108a, 108b, …. 108z] of the database are compared sequentially by the processor [104b] to analyze the database [108] .
The processor [104b] is also configured send the determined value to at least one of the storage unit [104c] and the transceiver [104a] . In a preferred embodiment, the processor [104b] is configured to send the determined negative value to the storage unit [104c] and the determined positive value to the transceiver [104a] .
The processor [104b] is further configured to determine the at least one cloud storage [106] storing the first data. The processor [104b] is further configured to determine the at least one cloud storage [106] storing the first data based on the analysis of the database [108] . The processor [104b] is configured to determine the at least one cloud storage [106] storing the first data based on the positive value or negative value determined by the processor [104b] . In an embodiment, all the entries [108a, 108b, …. 108z] of the database are compared sequentially by the processor [104b] to analyze the database [108] . In an event a negative value is determined by the processor [104b] , the processor [104b] may transmit a notification to the user device that the first data is not stored in any cloud storage [106] . In an event a positive value  is determined by the processor [104b] , the processor [104b] may retrieve the at least one cloud storage [106] from the at least one entry [108a, 108b, .. 108z] in the database [108] . The processor [104b] may then send the at least one cloud storage [106] retrieved from the at least one entry [108a, 108b, .. 108z] in the database [108] to the user device [102] as a notification, via the transceiver [104a] .
The storage unit [104c] is configured to store the first data in at least one of cloud storage [106] . In a preferred embodiment, the storage unit [104c] is configured to store the first data in the first cloud storage [106A] and the second cloud storage [106B] based on determined value. In a preferred embodiment, the storage unit [104c] is configured to automatically store the first data in the first cloud storage [106A] when a negative value is determined by the processor [104b] .
The storage unit [104c] is further configured to store the first data in at least one of the first cloud storage [106A] and the second cloud storage [106B] based on the response received from the user device [102] . In a preferred embodiment, the storage unit [104c] is configured to store the first data in the first cloud storage [106A] when a positive value is determined by the processor [104b] and a response is received from the user device [102] .
Figure 3 illustrates a flow diagram depicting an exemplary method [300] for storing at least one data in at least one cloud storage [106A, 106B…. 106Z] is disclosed in accordance with exemplary embodiments of the present invention.
The method begins at step 302, when a request for storing a first data on a first cloud storage [106A] is received from a user device [102] . In a preferred embodiment, the request for storing a first data on a first cloud storage [106A] is received as an input from the user by the user device [102] .
The invention encompasses that the request is received using an application on the user device [102] . The user device [102] may receive an input from the user to start an application. The user device [102] may then receive an input for storing a first data on a first cloud storage [106A] . For example, the user may click a soft button on a touch panel of the user device [102] to open an application, such as Google Photos, on the graphical user interface of the user device [102] . The user may then give an input to store a photo on the first cloud storage [106A] , such as the Google Cloud Storage.
The request is then received by the server [104] from the user device [102] via the wireless communication network [110] .
At step 304, upon receipt of the request from the user device [102] , at least one value is determined based on an analysis of a database [108] . The at least one value is determined by the processor [104b] of the server [104] . The invention encompasses that the at least one value is based on the first data being stored in the first cloud  storage [106A] and at least one of a second cloud storage [106B, 106C…106Z] is determined. The invention encompasses that the second cloud storage [106B, 106C…106Z] is different from the first cloud storage [106A] . The invention further encompasses that the value determined may be at least one of a positive value and a negative value.
In a preferred embodiment, at least one value is determined by the server [104] based on an analysis of the database [108] . The invention encompasses that the analysis of the database [108] is by comparing at least one entry [108a, 108b, 108c…. 108z] of the at least one database [108] with the first data. The analysis of the database [108] is based on transmission of at least one instruction to the database [108] . The at least one instruction may be to compare the at least one entry [108a, 108b, .. 108z] with the first data. The invention encompasses that all the entries [108a, 108b, .. 108z] of the database [108] are compared to analyze the database [108] .
The invention encompasses that a positive value or a negative value is determined by the server [104] based on a comparison of all the entries [108a, 108b, …. 108z] of the database [108] . In an embodiment, all the entries [108a, 108b, …. 108z] of the database [108] are compared sequentially by the server [104] to analyze the database [108] . A positive value is determined by the server [104] when the first data matches to at least one entry [108a, 108b, 108c…. 108z] of the database [108] . A negative value is determined by the server [104] when the first data does not match to any entry [108a, 108b, 108c…. 108z] of the database [108] .
For example, the server [104] may sequentially compare all the entries [108a, 108b, …. 108z] of the database [108] to determine if the photo is already stored in at least one cloud storage [106] . A negative value may be determined if the photo doesn’t match to any entry in the database [108] . In another example, a positive value may be determined is the photo matches to an entry, say entry [108m] , in the database [108] indicating that the photo is already stored in a second cloud storage [106B] , say Microsoft One Drive.
In an embodiment, at least one cloud storage [106] is determined for storing the first data by the server [104] . The at least one cloud storage [106] storing the first data is determined by the server [104] based on the analysis of the database [108] . The at least one cloud storage [106] storing the first data is determined based on the positive value or negative value determined by the server [104] . In an embodiment, all the entries [108a, 108b, …. 108z] of the database are compared sequentially by the server [104] to analyze the database [108] .
At step 306, in an event a negative value is determined by the server [104] , the first data is automatically stored in the first cloud storage [106A] . The first data is automatically stored in the first cloud storage [106A] by the storage unit [104c] . The invention encompasses that the invention then ends. For example, in case a negative value is determined, the photo is automatically stored on the first cloud storage  [106A] , such as the Google Cloud Storage by the storage unit [104c] . The invention then ends. In an embodiment, a notification for successful storing of the first data in the first cloud storage [106A] may be displayed to the user. For example, a notification indicating the successful storage of the photo on the first cloud storage [106A] , such as the Google Cloud Storage is displayed to the user.
In an embodiment, in case a negative value is determined by the server [104] , the invention encompasses that a notification may be transmitted to the user device [102] that the first data is not stored in any cloud storage [106] .
At step 308, in an event a positive value is determined by the server [104] , a notification is transmitted to the user device [102] . The notification is transmitted to the user device [102] by the server [104] . In a preferred embodiment, the notification may comprise of an option to the user to store the first data on a first cloud storage [106A] . In another embodiment, the notification may comprise of an option to the user to store the first data on a first cloud storage [106A] and delete the first data stored in a second cloud storage [106B] . In yet another embodiment, the notification may comprise of an option to the user to store the first data on a first cloud storage [106A] or not store the first data. For example, a notification may be displayed to the user giving an option to the user to store the photo in the first cloud storage [106a] , such as Google Photos, and delete already stored in a second cloud storage [106B] , say Microsoft One Drive.
In an embodiment, in case a positive value is determined by the server [104] , the invention encompasses that the at least one cloud storage [106] from the at least one entry [108a, 108b, .. 108z] in the database [108] is retrieved by the server [104] . The at least one cloud storage [106] retrieved from the at least one entry [108a, 108b, .. 108z] in the database [108] is then transmitted to the user device [102] as a notification.
At step 310, a response for storing the first data in at least one of the first cloud storage [106A] and the second cloud storage [106B] is received from the user device [102] . The response for storing the first data is received by the server [104] . The response may be a selection of an option of the notification displayed to the user on the user device [102] . In a preferred embodiment, the response received by the server [104] may be the selection to store the data in the first cloud storage [106A] . In another embodiment, the response received by the server [104] may be the selection of the user to store the first data on a first cloud storage [106A] and delete the first data stored in a second cloud storage [106B] . For example, a response may be received from the user to store the data in the first data, say a photo, on a first cloud storage [106A] , say Google Photos, and delete the first data stored in a second cloud storage [106B] , say Microsoft One Drive.
The response from the user device [102] is received by the server [104] .
Finally, at step 312, the first data is stored in at least one of the first cloud storage [106A] and the second cloud storage [106B] based on the response received from the  user device [102] . In a preferred embodiment, the first data is stored in the first cloud storage [106A] when a negative value is determined by the processor [104b] of the server [104] and a response is received from the user device [102] . For example, based on the response received from the user device [102] , the first data, say a photo, may be stored on a first cloud storage [106A] , say Google Photos, and be deleted from the second cloud storage [106B] , say Microsoft One Drive.
The invention encompasses that the database [108] may be dynamically updated based on storing the first data in at least one of the first cloud storage [106A] and the second cloud storage [106B] . For example, based on storing the first data, say a photo, on a first cloud storage [106A] , say Google Photos, deleting it from the second cloud storage [106B] , say Microsoft One Drive, an entry [108z] may be made in the database [108] indicating that the first data is stored in the first cloud storage [106A] , say Google Photos, and the entry [108m] relating to the first data being stored in the second cloud storage [106B] , say Microsoft One Drive, be deleted.
In an exemplary embodiment, the invention begins when a request for storing a first data, such as a video, on a first cloud storage [106A] is received from a user device [102] . The request may be received when the user clicks on a soft button on a touch panel of the user device [102] to open an application on the graphical user interface of the user device [102] . The user may then give an input to store the video on the first cloud storage [106A] , such as the Dropbox. The request to store the video on the Dropbox cloud storage [106A] is then received by the server [104] from the user device [102] via the wireless communication network [110] .
Upon receipt of the request from the user device [102] , at least one value is determined by the server [104] based on an analysis of a database [108] . The at least one value is based on the video being stored in the Dropbox cloud storage [106A] and at least one of a second cloud storage [106B, 106C…106Z] . The second cloud storage [106B, 106C…106Z] is different from the Dropbox cloud storage [106A] . The value determined may be at least one of a positive value and a negative value. The analysis of the database [108] is by comparing all the entries [108a, 108b, 108c…. 108z] of the database [108] with the video, such as a video id. All the entries [108a, 108b, …. 108z] of the database [108] are compared sequentially by the server [104] to analyze the database [108] to determine if the video is already stored in at least one cloud storage [106] .
Thereafter, a positive value or a negative value is determined by the server [104] based on a comparison of all the entries [108a, 108b, …. 108z] of the database [108] . A positive value is determined by the server [104] when the video id matches to the id of at least one entry [108a, 108b, 108c…. 108z] of the database [108] . A negative value is determined by the server [104] when the video id does not match to any id of all the entries [108a, 108b, 108c…. 108z] of the database [108] .
In case a negative value is determined by the server [104] , the video is automatically  stored in the Dropbox cloud storage [106A] . A notification for successful storing of the video in the Dropbox cloud storage [106A] may be displayed to the user. The database [108] may be dynamically updated based on storing the video in the Dropbox cloud storage [106A] by adding an entry [108z] in the database [108] indicating that the video is stored in the Dropbox cloud storage [106A] .
In another exemplary embodiment, the invention begins when a request for storing a first data, such as a file, on a first cloud storage [106A] is received from a user device [102] . The request may be received when the user clicks on a soft button on a touch panel of the user device [102] to open an application on the graphical user interface of the user device [102] . The user may then give an input to store the video on the first cloud storage [106A] , such as the Amazon Cloud Storage. The request to store the file on the Amazon cloud storage [106A] is then received by the server [104] from the user device [102] via the wireless communication network [110] .
Upon receipt of the request from the user device [102] , at least one value is determined by the server [104] based on an analysis of a database [108] . The at least one value is based on the video being stored in the Amazon cloud storage [106A] and at least one of a second cloud storage [106B, 106C…106Z] . The second cloud storage [106B, 106C…106Z] is different from the Amazon cloud storage [106A] . The value determined may be at least one of a positive value and a negative value. The analysis of the database [108] is by comparing all the entries [108a, 108b, 108c…. 108z] of the database [108] with the file, such as a file id. All the entries [108a, 108b, …. 108z] of the database [108] are compared sequentially by the server [104] to analyze the database [108] to determine if the file is already stored in at least one cloud storage [106] .
Thereafter, a positive value or a negative value is determined by the server [104] based on a comparison of all the entries [108a, 108b, …. 108z] of the database [108] . A positive value is determined by the server [104] when the file id matches to the id of at least one entry [108a, 108b, 108c…. 108z] of the database [108] . A negative value is determined by the server [104] when the file id does not match to any id of all the entries [108a, 108b, 108c…. 108z] of the database [108] .
In case a positive value is determined by the server [104] , a notification is transmitted to the user device [102] . The notification may comprise of an option to the user to store the file on the Amazon cloud storage [106A] when the file is already stored in a second cloud storage [106B] , such as the Apple iCloud. The notification may comprise of an option to the user to store the file on the Amazon cloud storage [106A] and delete the file stored in the Apple iCloud [106B] .
Thereafter, a response for storing the file in at least one of the Amazon cloud storage [106A] and the Apple iCloud [106B] is received from the user device [102] . The response may be a selection of an option of the notification displayed to the user on the user device [102] to store the file on the Amazon cloud storage [106A] when the  file is already stored in the Apple iCloud [106B] . The response may also be the selection of the user to store the file on the Amazon cloud storage [106A] and delete the file stored in the Apple iCloud [106B] . The response from the user device [102] is received by the server [104] .
Finally, based on the response received from the user device [102] , the file is stored in the Amazon cloud storage [106A] . Further, the file may also be stored on the Amazon cloud storage [106A] and deleted from the Apple iCloud [106B] .
The database [108] may be dynamically updated based on storing the file in the Amazon cloud storage [106A] by adding an entry [108z] in the database [108] indicating that the file is stored in the Amazon cloud storage [106A] . Also, the database [108] may be dynamically updated based on storing the file in the Amazon cloud storage [106A] by adding an entry [108z] in the database [108] indicating that the file is stored in the Amazon cloud storage [106A] and the entry [108m] relating to the file being stored in the Apple iCloud [106B] is deleted.
As evident from the above description, the present disclosure provides for a method and system for storing at least one data in at least one cloud storage [106] . The present invention further ensures that multiple copies of the same data are not stored in different cloud storages [106] . Particularly, the different cloud storages [106] could be owned by different entities without any link between them. Hence, the present invention provides for saving cloud storage [106] space by only allowing a single copy of a data to be stored in different cloud storages [106] . Therefore, the present invention requires that multiple retentions of the data are allowed to be searched between different cloud storages [106] based on an analysis of a database and results in significant technical advancement over the prior art systems. The present invention also provides for an efficient manner to retrieve the cloud storage [106] storing a particular data.
The units, interfaces, modules, and/or components depicted in the figures and described herein may be present in the form of a hardware, a software and a combination thereof. Connection/sshown between these units/components/modules/interfaces in the exemplary system architecture may interact with each other through various wired links, wireless links, logical links and/or physical links. Further, the units/components/modules/interfaces may be connected in other possible ways.
While considerable emphasis has been placed herein on the disclosed embodiments, it will be appreciated by those skilled in the art that many changes can be made to the embodiments disclosed herein without departing from the principles and scope of the present invention.

Claims (19)

  1. A method for storing at least one data in at least one cloud storage [106] , the method comprising,
    - receiving, from a user device [102] , a request for storing a first data on a first cloud storage [106A] , wherein the request is received using an application on the user device [102] ,
    - determining, by a processor [104b] , at least one value based on the first data being stored in at least one of a second cloud storage [106B] , the second cloud storage [106B] being different from the first cloud storage [106A] ,
    - storing, by the storage unit [104c] , the first data in at least one of the first cloud storage [106A] and the second cloud storage [106B] based on the determined value.
  2. The method as claimed in claim 1, wherein the value determined may be at least one of a positive value and a negative value.
  3. The method as claimed in claim 2, further comprising,
    - transmitting, by a transceiver [104a] , a notification, on the user device [102] , in an event a positive value is determined, and
    - receiving, by a transceiver [104a] , a response, from the user device [102] , for storing the first data in at least one of the first cloud storage [106A] and the second cloud storage [106B] .
  4. The method as claimed in claim 3, further comprising storing, by the storage unit [104c] , the first data in at least one of the first cloud storage [106A] and the second cloud storage [106B] based on the response received from the user device [102] .
  5. The method as claimed in claim 1, wherein at least one value is determined, by the processor [104b] , based on an analysis of at least one database [108] .
  6. The method as claimed in claim 5, wherein analysis of the at least one database [108] , by the processor [104b] , comprises of comparing at least one entry [108a, 108b, 108c.... 108z] of the at least one database [108] with the first data.
  7. The method as claimed in claim 2, wherein a positive value is determined, by the processor [104b] , when the first data matches to at least one entry [108a, 108b, 108c.... 108z] of the at least one database [108] .
  8. The method as claimed in claim 2, wherein a negative value is determined, by the processor [104b] , when the first data does not match to at least one entry [108a, 108b, 108c.... 108z] of the at least one database [108] .
  9. The method as claimed in claim 3, wherein the at least one database [108] is dynamically updated.
  10. A system [100] for storing at least one data stored in at least one cloud storage [106] , the system [100] comprising,
    - a transceiver [104a] configured to receive a request for storing a first data on a first cloud storage [106A] , wherein the request is received using an application on a user device [102] ,
    - a processor [104b] , connected to the transceiver [104a] , configured to determine at least one value based on the first data being stored in at least one of a second cloud storage [106B] , the second cloud storage [106B] being different from the first cloud storage [106A] , and
    - a storage unit [104c] , connected to the processor [104b] , configured to store the first data in at least one of the first cloud storage [106A] and the second cloud storage [106B] based on determined value.
  11. The system as claimed in claim 10, wherein the value determined may be at least one of a positive value and a negative value.
  12. The system as claimed in claim 11, wherein the transceiver [104a] is further configured to transmit a notification, to the user device [102] , in an event a negative value is determined, and receive a response, from the user device [102] , for storing the first data in at least one of the first cloud storage [106A] and the second cloud storage [106B] .
  13. The system as claimed in claim 11, wherein the storage unit [104c] is further configured to store the first data in at least one of the first cloud storage [106A] and the second cloud storage [106B] based on the response received from the user device [102] .
  14. The system as claimed in claim 10, wherein the processor [104c] is configured to determine at least one value based on an analysis of at least one database [108] .
  15. The system as claimed in claim 10, wherein the processor [104c] is configured to compare at least one entry [108a, 108b, 108c.... 108z] of the at least one database [108] with the first data.
  16. The system as claimed in claim 11, wherein the processor [104c] is configured to determine a positive value when the first data matches to at least one entry [108a, 108b, 108c.... 108z] of the at least one database [108] .
  17. The system as claimed in claim 11, wherein the processor [104b] is configured to determine a negative value when the first data does not match to at least one entry [108a, 108b, 108c.... 108z] of the at least one database [108] .
  18. The system as claimed in claim 14, wherein the at least one database [108] comprises of at least one entry [108a, 108b, 108c.... 108z] comprising of at least one cloud storage [106] and the corresponding at least one data.
  19. The system as claimed in claim 14, wherein the at least one database [108] is dynamically updated.
PCT/CN2021/081125 2020-04-22 2021-03-16 System and method for storing data on cloud storage WO2021213085A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
IN202041017205 2020-04-22
IN202041017205 2020-04-22

Publications (1)

Publication Number Publication Date
WO2021213085A1 true WO2021213085A1 (en) 2021-10-28

Family

ID=78271113

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2021/081125 WO2021213085A1 (en) 2020-04-22 2021-03-16 System and method for storing data on cloud storage

Country Status (1)

Country Link
WO (1) WO2021213085A1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017155791A1 (en) * 2016-03-10 2017-09-14 Microsoft Technology Licensing, Llc Managing multiple cloud stores through a web service
US20180217757A1 (en) * 2017-01-30 2018-08-02 International Business Machines Corporation Optimizing off-loaded input/output (i/o) requests
US20190155512A1 (en) * 2017-11-17 2019-05-23 International Business Machines Corporation Policy-based optimization of cloud resources on tiered storage operations
US20200034451A1 (en) * 2018-07-24 2020-01-30 EMC IP Holding Company LLC Data deduplication for elastic cloud storage devices

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017155791A1 (en) * 2016-03-10 2017-09-14 Microsoft Technology Licensing, Llc Managing multiple cloud stores through a web service
US20180217757A1 (en) * 2017-01-30 2018-08-02 International Business Machines Corporation Optimizing off-loaded input/output (i/o) requests
US20190155512A1 (en) * 2017-11-17 2019-05-23 International Business Machines Corporation Policy-based optimization of cloud resources on tiered storage operations
US20200034451A1 (en) * 2018-07-24 2020-01-30 EMC IP Holding Company LLC Data deduplication for elastic cloud storage devices

Similar Documents

Publication Publication Date Title
US10803016B2 (en) Predictive models of file access patterns by application and file type
Zhang et al. Design and implementation of embedded un-interruptible power supply system (EUPSS) for web-based mobile application
US8527660B2 (en) Data synchronization by communication of modifications
CN106068521B (en) Communications status about the application for closing rule policy update
RU2468421C2 (en) Technique for sharing information between applications
US7610350B2 (en) Wireless information transmission system and method
US11256773B2 (en) Document online preview method and device
US9996549B2 (en) Method to construct a file system based on aggregated metadata from disparate sources
KR20060044313A (en) Intergration architecture for non-integrated tools
US20140372369A1 (en) Managing Changes to Shared Electronic Documents Using Change History
JP2004086895A (en) System and method for enabling components on arbitrary networks to communicate
JP2012518835A (en) Composition and distribution of content at the time of capture
US11991094B2 (en) Metadata driven static determination of controller availability
US20200153889A1 (en) Method for uploading and downloading file, and server for executing the same
JP2015517165A (en) User interface web service
WO2003046727A1 (en) Information providing system, information providing method, and information providing program
Abbani et al. A distributed reconfigurable active SSD platform for data intensive applications
CN108829753A (en) A kind of information processing method and device
CN108140039B (en) Streaming records from database access of parallel batches
US20090007148A1 (en) Search tool that aggregates disparate tools unifying communication
WO2021213085A1 (en) System and method for storing data on cloud storage
WO2021012554A1 (en) Method and apparatus for updating data field in block chain, medium, and electronic device
WO2022151835A1 (en) Sample message processing method and apparatus
US10684898B2 (en) In-line event handlers across domains
WO2018094930A1 (en) Screen image-based method for acquiring user behavior information, and terminal

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 21793223

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 21793223

Country of ref document: EP

Kind code of ref document: A1