US 12,189,648 B2
Apparatus and method for managing integrated storage
Dae-Won Kim, Daejeon (KR); Sun-Wook Kim, Hwaseong (KR); Seong-Woon Kim, Gyeryong (KR); Soo-Cheol Oh, Daejeon (KR); Jae-Geun Cha, Daejeon (KR); and Ji-Hyeok Choi, Daejeon (KR)
Assigned to ELECTRONICS AND TELECOMMUNICATIONS RESEARCH INSTITUTE, Daejeon (KR)
Filed by ELECTRONICS AND TELECOMMUNICATIONS RESEARCH INSTITUTE, Daejeon (KR)
Filed on Sep. 4, 2018, as Appl. No. 16/121,384.
Claims priority of application No. 10-2017-0137712 (KR), filed on Oct. 23, 2017; application No. 10-2018-0034861 (KR), filed on Mar. 27, 2018; application No. 10-2018-0054966 (KR), filed on May 14, 2018; and application No. 10-2018-0096889 (KR), filed on Aug. 20, 2018.
Prior Publication US 2019/0121899 A1, Apr. 25, 2019
Int. Cl. G06F 16/25 (2019.01); G06F 3/06 (2006.01); G06F 16/22 (2019.01); H04L 67/1097 (2022.01)
CPC G06F 16/258 (2019.01) [G06F 3/067 (2013.01); G06F 16/22 (2019.01); H04L 67/1097 (2013.01)] 8 Claims
OG exemplary drawing
 
1. An apparatus for managing an integrated storage, the apparatus comprising:
a data distribution and storage unit for distributing and storing user data in the integrated storage, the integrated storage including an on-premises storage and a cloud storage;
a storage management unit for connecting to the integrated storage and providing information about storage tiering pertaining to the user data;
a data manipulation unit for providing the integrated storage as a virtual data storage regardless of a location at which the user data is actually stored,
wherein the virtual data storage provides one or more virtual storage volumes in the virtual data storage,
wherein the virtual data storage includes a write cache or a read cache for the user data using a high-speed storage separated from the on-premises storage and the cloud storage,
wherein the virtual data storage includes a RAM-based cache area and a Solid-State Drive (SSD)-based cache area,
wherein when the RAM-based cache area is exhausted, the write cache or the read cache automatically expands to the SSD-based cache area,
wherein the data manipulation unit provides data recovery of the user data when a storage or connection failure occurs,
wherein the most-recently used user data are restored for preventing data loss due to errors from the storage or connection failure,
wherein the data manipulation unit backups the user data to recover the user data on the storage failure for supporting consistency for the user data being replicated, and
wherein the data manipulation unit provides a back-up of a global namespace, wherein the back-up of the global namespace is synchronized with the user data,
a storage connection unit for providing a user client with an interface for a single virtual storage unit in the virtual data storage,
wherein the information about the storage tiering varies depending on performance of storage, time during which the user data is used, and a frequency with which the user data is accessed,
wherein the storage management unit provides a function of storing the user data using the storage tiering based on storage performance, time of data usage, and data access frequency,
wherein the storage management unit initially stores the user data in the high-speed storage in the integrated storage and then moves the stored data to a lower tier of storage in the integrated storage based on a change of the data access frequency,
wherein the data manipulation unit provides a sharing data operation by updating a sharing status of the user data in a registry after checking the sharing status of the user data,
wherein during the sharing data operation, the user data is shared, the data manipulation unit provides capacity saving of the integrated storage using deduplication of the user data, and provides encryption or decryption of the user data for data transfer to the integrated storage,
wherein the sharing status indicates whether the user data is shared or not,
wherein the storage management unit automatically moves the user data between storage tiers of storage depending on characteristics of the user data;
wherein the apparatus further includes a policy management unit for providing metadata, wherein the metadata includes data operation metadata required to perform data operations and storage operation metadata required to perform storage operations,
wherein the data manipulation unit performs data management of the user data based on the data operation metadata, wherein the data management includes attributes of the virtual data storage and the single virtual storage unit and further includes transaction logs, snapshots, and replication of the user data,
wherein the storage management unit performs storage operations based on the data operation metadata, the data operation metadata providing a description for Application Program Interface (API) for customer data operation, reading or writing speed of the user data, and capacity of the virtual data storage,
wherein the storage management unit provides the interface to connect the integrated storage,
wherein the interface includes a proxy interface to configure various types of storage interfaces with a software program including one of an API for the integrated storage, a software agent, a daemon, and a web worker,
wherein the proxy interface connects the integrated storage by automatically detecting the storage interfaces with the software program,
wherein the storage connection unit provides translation between the data manipulation unit and the interface to connect the integrated storage,
wherein the storage connection unit provides a cloud service registered in the cloud storage and the on-premises storage of the integrated storage to the user client through the virtual data storage by operating in conjunction with the integrated storage, and
wherein, in the read cache, the data is broken into multiple pieces of block data depending on hashes using a data deduplication engine and
in the write cache, a log for data recovery in a node connected with over a network is recorded when the data stored in the write cache area is lost due to system failure.