Abstract:
The present invention provides a cloud data storage system and the method thereof. The system according to the present invention can acquire the statuses of the data source and the client device to generate a usage status data, and the usage status data are generated according to the requirements of the current connection and the files to be accessed. The data source can actively search the usage status data and enable the connection. Then, the system determines whether to access the digital content from the data source in order to transmit the digital content to the client device. The present invention provides a system and method which will not occupy the resources of the system, and will notify the client device that the physical storage device is in connection status and usable again after the physical storage device is temporarily disconnected or shut down.

Description:
RELATED APPLICATION 
       [0001]    This application claims priority to Taiwan Application Serial Number 105,100,239, filed Jan. 6, 2016, which is herein incorporated by reference. 
       FIELD OF THE INVENTION 
       [0002]    The present invention relates to a cloud data storage system and method thereof, in particular to a method allowing a client device to access data from a data source via a system. 
       DESCRIPTION OF THE PRIOR ART 
       [0003]    In the current network age, the demand of accessing digital data keeps growing, no matter for an individual or a company. In order to provide more convenient services, various cloud storages with the functions similar to Dropbox or Google Drive are provided by the service providers, which gradually become the major data storage or synchronous backup space. Most of these services will not charge, and the storage spaces provided by these services can satisfy the requirements of most people. However, if a customer needs to access a large amount of data from these free cloud storages or the data of the customer is confidential, the access speed, amount of data access and security of these free cloud storages are not reliable because the physical devices of these free cloud storages are installed on the servers not owned by the customer. 
         [0004]    For the purpose of overcoming the above shortcomings, various private cloud services are developed. A user can purchase some physical devices for personal use and install these devices in the user&#39;s home or business premise to serve as the cloud storage. However, these physical devices are of high cost; besides, if the user wants to connect to the physical devices via the system and access data from the physical devices, these physical devices should be in connection status, or the user cannot access the data from them, which will occupy a lot of resources of the system. Further, when these physical devices are temporarily disconnected or shut down, the user cannot remotely access the files from the cloud storage. Moreover, the user will not be notified that he can access the data for the cloud storage even if the physical devices are turned on and in connection status. Obviously, the aforementioned private cloud is very expensive and inconvenient, so it needs to be further improved. 
       SUMMARY OF THE INVENTION 
       [0005]    The present invention provides a cloud data storage system and the method thereof; the primary object of the present invention is to overcome the problems of the prior art, and provide a system and method which will not occupy the resources of the system, and the storage device will actively make a request to connect to the system. 
         [0006]    Another object of the present invention is to overcome the problems of the prior art, and provide a system and method which can avoid additional cost because users do not need to purchase physical storage devices. 
         [0007]    Another object of the present invention is to overcome the problems of the prior art, and provide a system and method which will notify the client device that the physical storage device is in connection status and accessible again after the physical storage device is temporarily disconnected or shut down. 
         [0008]    The present invention provides a cloud data storage system, which includes a data source access unit, and the data source access unit can connect to an external data source via the network, and the data source is a device capable of storing digital content, such as computer, server and the like. The aforementioned digital content may be various different kinds of data, such as video, audio, figure, document file, system resource file or streaming data, etc. 
         [0009]    The system according to the present invention includes a client device access unit, and the client device access unit can connect to an external client device for the client device to access the digital content from the data source via the data source access unit. The client device may be an application or interface capable of being installed on various devices (such as mobile device, computer or server), and the data source may also be an application or interface capable of being installed on various devices. 
         [0010]    The system according to the present invention further includes an access status unit, and the access status unit connects to the data source access unit and the client device access unit. The access status unit acquires the statuses of the data source and the client device via the data source access unit and the client device access unit connecting to the access status unit (i.e. the current connection status) so as to generate a usage status data. The access status unit determines whether the data source access unit connects to the data source according to the usage status data; besides, the access status unit determines whether the client device can access the digital content from the data source via the data source access unit according to the usage status data. 
         [0011]    The usage status data of the system according to the present invention stores a plurality of indication flags, and the aforementioned indication flags are various indicators, values or paths which stand for different system statuses and scheduled tasks. The usage status data include three flags, including a first indication flag, a second indication flag and a third indication flag. The first indication flag records the current connection status between the data source access unit and the data source (e.g. in connection status or not in connection status). The second indication flag records the digital content which the client device requests from the data source. The third indication flag records whether the access status unit should connect to the data source via the data source access unit (e.g. it is necessary to be in connection status to transmit files or it is not necessary to be in connection status if no data needs to be transmitted). 
         [0012]    More specifically, the client device connects to the access status unit via the client device access unit. When being in connection status, the client device can request the access status unit to provide the data inventory or data list of the data source, and the access status unit can ask for the data inventory or data list from the data source via the data source access unit. The data source transmits the data inventory or data list of the data source to the client device via the data source access unit, the access status unit and the client device access unit. 
         [0013]    Moreover, the transmission connection between the data source and the data source access unit is not always enabled; the data source actively checks the usage status data of the access status unit via the data source access unit on a periodical basis or by a predetermined time interval. If the third indication flag shows that it is necessary to enable the transmission connection and the second indication flag records the access request (e.g. requested file, data or path, etc.) transmitted from the client device to the data source after checked by the data source, the data source actively enables the transmission connection with the data source access unit; further, the data source transmits the data corresponding to the access request recorded by the second indication flag to the access status unit via the data source access unit. After the transmission connection is enabled, the data source can directly receive the access request from the client device via the access status unit, and then transmit the data. If the data source has yet to receive the access request again within a predetermined time period, the data source disables the transmission connection with the data source access unit. 
         [0014]    When the data source transmits the data to the access status unit, the access status unit will temporarily store the data, and then transmit the data to the client device via the client device access unit. If the client device has yet to enable the transmission connection for now, the access status unit transmits a file reception notification via the client device access unit and the remote notification approach provided by the client device service provider, such as Apple Push Notification Service (APNS) provided by Apple, Google Cloud Messaging (GCM) provided by Google, Baidu Cloud Push provided by Baidu, Amazon Device Messaging (ADM) provided by Amazon or Windows Push Notification Service(WNS) provided by Microsoft, so as to notify the client device that the client device can enable the transmission connection to receive the data requested before. If the client device has yet to enable the transmission connection after a predetermined time period, the access status unit deletes the data in order to save the resources of the system and achieve high data security. 
         [0015]    The present invention provides a cloud system for users to connect to in order to access the digital content stored in another data storage. The advantage of the system is that the users do not need to purchase the storage device corresponding to the service of the system; in other words, the users can access the files from different storage devices in connection status only by the application installed on a smart phone or a tablet computer. Besides, the system according to the present invention does not always enable the transmission connection with the storage device; the storage device will actively make a request and then enable the transmission connection if necessary, which can prevent from unnecessary resource waste. Further, when the storage device is not in connection status but the client device needs to access data therefrom, the system according to the present invention records the request and the storage device actively make a request to enable the transmission connection. The storage device transmits the data right after the storage device actively enables the transmission connection; afterward, the system according to the present invention will notify the client device that the storage device has transmitted the data to the client device; then, the client device can access the data after enabling the transmission connection. In addition, the system according to the present invention also supports the transmission resuming function after the client device or the data source is in connection status again after being disconnected. To sum up, the present invention is a file transmission system with perfect functions, of high security, capable of saving resources and without additional hardware devices. 
         [0016]    Further scope of applicability of the present application will become more apparent from the detailed description given hereinafter. However, it should be understood that the detailed description and specific examples, while indicating exemplary embodiments of the present invention, are given by way of illustration only, since various changes and modifications within the spirit and scope of the present invention will become apparent to those skilled in the art from this detailed description. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0017]    The present invention will become more fully understood from the detailed description given herein below and the accompanying drawings which are given by way of illustration only, and thus are not limitative of the present invention and wherein: 
           [0018]      FIG. 1  is a structure schematic view of a cloud data storage system in accordance with the present invention. 
           [0019]      FIG. 2  is a flow chart of a cloud data storage method in accordance with the present invention for asking for a file list. 
           [0020]      FIG. 3  is a flow chart of a cloud data storage method for a client device to ask for a file list when a data source is not in connection status. 
           [0021]      FIG. 4  is a flow chart of a cloud data storage method for a client device to ask for a file list when a data source is in connection status. 
           [0022]      FIG. 5  is a flow chart of a cloud data storage method for uploading files. 
       
    
    
     DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT 
       [0023]    In the following detailed description, for purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of the disclosed embodiments. It will be apparent, however, that one or more embodiments may be practiced without these specific details. In other instances, well-known structures and devices are schematically shown in order to simplify the drawing. 
         [0024]    As shown in  FIG. 1 , the structure of a cloud data storage system is as follows: the cloud data transmission system  1  includes a client device access unit  101  and a data source access unit  102 . The client device access unit  101  and the data source access unit  102  connect to each other via the access status unit  103 . The client device access unit  101  can connect to an external client device via the network, and the data source access  102  can connect to an external data source via the network. The access status unit  103  can acquire the statuses of the data source  2  and the client device  3  to generate a usage status data according to the client device access unit  101  and the data source access unit  102 . 
         [0025]    Regarding the cloud data storage method according to the present invention, the initial status step is that the client device asks for a file list from the data source via the system, and mainly includes the following steps, as shown in  FIG. 2 : 
         [0026]    Step S 201 : an external client device connects to the system, and the system connects to the client device via a client device access unit; 
         [0027]    Step S 202 : the client device asks for a file list of a data source from the system; 
         [0028]    Step S 203 : an access status unit of the system asks for the file list form the data source via the data source access unit; 
         [0029]    Step S 204 : the data source transmits the file list to the access status unit of the system; and 
         [0030]    Step S 205 : the access status unit of the system transmits the file list to the client device. The client device also uses the same steps to update the file list from the data source via the system; the system according to the present invention only provides an approach for the data source to provide the file list for the client device, but will not store the file list in order to achieve high information security. 
         [0031]    According to the cloud data storage method of the present invention, the client device can acquire the file list of the data source after Step S 205  “the access status unit transmits the file list to the client device”. 
         [0032]    According to the present invention, the transmission connection between the data source and the system is not always enabled; in other words, the data source will check the usage status data of the access status unit of the system by a predetermined time interval so as to determine whether to temporarily enable the transmission connection. If the client device asks for a file from the data source via the system but the transmission connection of the data source has yet to be enabled, the method proceeds to the following steps, as shown in  FIG. 3 : 
         [0033]    Step S 301 : the client device connects to the system, and the system connects the client device access unit to the client device; 
         [0034]    Step S 302 : the client device asks for a file “K” of the file list from the system; 
         [0035]    Step S 303 : the transmission connection between the system and the data source has yet to be enabled, so the access status unit modifies the second indication flag of the usage status data as “Need to access the file K”, and the access status unit modifies the third indication flag of the usage status data as “Need to enable the transmission connection”; 
         [0036]    Step S 304 : after a period of time, the data source actively searches the third indication flag of the usage status data from the system, and then checks the second indication flag; 
         [0037]    Step S 305 : the data source knows that the transmission connection should be enabled, and the data source actively enables the transmission connection with a data source access unit inside the system; 
         [0038]    Step S 306 : the access status unit modifies the first indication flag of the usage status data as “In connection status”; 
         [0039]    Step S 307 : the data source transmits the file “K” to the access status unit via the data source access unit of the system; 
         [0040]    After Step S 307 , two conditions may take place, and the follow-up step of one of the two conditions is: 
         [0041]    Step S 308 : if the client device has enabled the transmission connection, the access status unit of the system transmits the file “K” to the client device via the client device access unit. 
         [0042]    The follow-up steps of the other of the two conditions are: 
         [0043]    Step S 309 : if the client device has yet to enable the transmission connection, the access status unit of the system transmits a file reception notification to the client device via a remote notification approach; and 
         [0044]    Step S 310 : the client device enables the transmission connection with the client device access unit after receiving the file reception notification; then, the access status unit of the system transmits the file “K” to the client device via the client device access unit. 
         [0045]    Besides, after Step S 307 , the data source disables the transmission connection if the data source has yet to receive the access request within a predetermined time period after the data source enables the transmission connection. 
         [0046]    According to the cloud data storage method of the present invention, if the status of the first indication flag is “In connection status”, it means that the transmission connection between the data source and the system is enabled. When the client device asks for another file from the data source via the system, the method will proceed to the following major steps, as shown in  FIG. 4 : 
         [0047]    Step S 401 : the client device requests for a file “T” of the file list from the system; 
         [0048]    Step S 402 : the access status unit of the system checks the first indication flag, and the first indication flag shows “In connection status”; 
         [0049]    Step S 403 : the access status unit of the system requests the file “T” from the data source via the data source access unit. 
         [0050]    Step S 404 : the data source transmits the file “T” to the access status unit via the data source access unit of the system; and 
         [0051]    Step S 405 : the access status unit of the system transmits the file “T” to the client device via the client device access unit. 
         [0052]    According to the cloud data storage method of the present invention, if the client device wants to upload a file to the data source via the system, the steps are as follows; please refer to  FIG. 5 : 
         [0053]    Step S 501 : the client device connects to the system, and the access status unit of the system connects to the client device via the client device access unit; 
         [0054]    Step S 502 : the client device uploads a file “M” to the access status unit of the system via the client device access unit; 
         [0055]    Step S 503 : the access status unit checks the first indication flag; 
         [0056]    Step S 503  means the system is checking whether the transmission connection of the data source is enabled, so which can be classified into two conditions; the follow-up steps of one of the two conditions are as follows: 
         [0057]    Step S 504 : the first indication flag shows that the transmission connection has been enabled; and 
         [0058]    Step S 505 : the access status unit of the system uploads the file “M” to the data source via the data source access unit. 
         [0059]    The follow-up steps of the other of the two conditions are as follows: 
         [0060]    Step S 506 : the first indication flag shows that the transmission connection has yet to be enabled; 
         [0061]    Step S 507 : the access status unit of the system modifies the third indication flag as “Need to enable the transmission connection”; 
         [0062]    Step S 508 : the data source actively checks the third indication flag of the usage status data from the access status unit of the system; 
         [0063]    Step S 509 : after the data source knows it is necessary to enable the transmission connection, the data source actively enables the transmission connection with the data source access unit; and 
         [0064]    Step S 510 : the access status unit uploads the file “M” to the data source via the data source access unit of the system. 
         [0065]    The step is for the client device to upload a file to the data source via the system according to the cloud data storage method of the present invention. If the data source has yet to receive the access request within a predetermined time period after the data source enables the transmission connection, the data source disables the transmission connection. 
         [0066]    It will be apparent to those skilled in the art that various modifications and variations can be made to the disclosed embodiments. It is intended that the specification and examples be considered as exemplary only, with a true scope of the invention being indicated by the following claims and their equivalents. 
         [0067]    According to the above exemplary embodiments and system structure, the present invention provides a data storage system and method which will not occupy the resources of the system, and the storage device will actively make a request to connect to the system. 
         [0068]    The present invention further provides a system and method which can avoid additional cost because users do not need to purchase physical storage devices. 
         [0069]    The present invention also provides a system and method which will notify the client device that the physical storage device is in connection status and usable again after the physical storage device is temporarily disconnected or shut down, and support the transmission resuming function. 
         [0070]    In summation of the description above, the present invention can provide unpredictable technical effects which the prior art cannot provide, so completely conforms to the novelty and the obviousness regulated by Patent Act. Thus, Applicant files the invention application according to Patent Act; please grant the patent right of the invention application to encourage inventions and creations.