US20190065061A1 - Apparatus and method for providing storage for providing cloud services - Google Patents
Apparatus and method for providing storage for providing cloud services Download PDFInfo
- Publication number
- US20190065061A1 US20190065061A1 US16/057,717 US201816057717A US2019065061A1 US 20190065061 A1 US20190065061 A1 US 20190065061A1 US 201816057717 A US201816057717 A US 201816057717A US 2019065061 A1 US2019065061 A1 US 2019065061A1
- Authority
- US
- United States
- Prior art keywords
- storage
- data
- providing
- cloud
- unit
- Prior art date
- Legal status (The legal status 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 status listed.)
- Granted
Links
- 238000003860 storage Methods 0.000 title claims abstract description 514
- 238000000034 method Methods 0.000 title claims abstract description 33
- 238000007726 management method Methods 0.000 claims abstract description 48
- 238000009826 distribution Methods 0.000 claims abstract description 30
- 230000004044 response Effects 0.000 claims description 13
- 238000007906 compression Methods 0.000 claims description 8
- 230000006835 compression Effects 0.000 claims description 8
- 230000006870 function Effects 0.000 description 38
- 238000010586 diagram Methods 0.000 description 14
- 238000013144 data compression Methods 0.000 description 7
- 238000011084 recovery Methods 0.000 description 6
- 238000013500 data storage Methods 0.000 description 5
- 238000001514 detection method Methods 0.000 description 4
- 230000007246 mechanism Effects 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 238000013523 data management Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000010076 replication Effects 0.000 description 2
- 244000166124 Eucalyptus globulus Species 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- LBDSXVIYZYSRII-BJUDXGSMSA-N helion Chemical compound [3He+2] LBDSXVIYZYSRII-BJUDXGSMSA-N 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 238000010223 real-time analysis Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0604—Improving or facilitating administration, e.g. storage management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
- G06F3/0611—Improving I/O performance in relation to response time
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0626—Reducing size or complexity of storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
- G06F3/0631—Configuration or reconfiguration of storage systems by allocating resources to storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0659—Command handling arrangements, e.g. command buffers, queues, command scheduling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0662—Virtualisation aspects
- G06F3/0665—Virtualisation aspects at area level, e.g. provisioning of virtual or logical volumes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/067—Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols 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]
Definitions
- the present invention relates generally to cloud-computing technology, and more particularly to a storage integration method for combining cloud storage and non-cloud storage.
- Cloud computing may provide network, storage, and computing services desired by users using the Internet, without the need to provide hardware and software for each user.
- a user may request to store data using a secure and convenient service interface provided by the system.
- a cloud-integrated storage system that stores data in cloud-integrated storage that appears as a single storage space even though both on-premises storage and public cloud storage are integrated therein has been developed.
- the cloud-integrated storage system may manage and operate on-premises public storage that appears as a single storage space while making use of the advantages both of on-premises storage possessed by companies and organizations and of public cloud storage provided by a cloud provider.
- the cloud-integrated storage system may provide a converged storage infrastructure service that secures the flexibility and cost efficiencies of a storage space and guarantees reliability and control over sensitive data.
- the cloud-integrated storage system may extend the use of cloud services to various fields and use the cloud services in order to create new business models.
- IDC's 3rd Platform aims to support the extension of computing resources by unifying various cloud models and to improve automation and computing environment management efficiency.
- HP provides infrastructure management functions using a RESTful API based on OpenStack and provides a Helion Eucalyptus platform, which is open-source software designed to be compatible with Amazon Web Services (AWS).
- AWS Amazon Web Services
- vCHS vCloud Hybrid Service
- Rackspace focuses on the extension of cloud infrastructure and integrates a cloud server with an enterprise Storage Area Network (SAN). Also, Rackspace supports data protection by deploying Cisco ASA firewalls.
- SAN Storage Area Network
- Avere FlashCloud of Avere Systems and StorSimple of Microsoft have cloud storage gateway capabilities for storage tiering, based on which data is stored in local or cloud storage depending on the frequency of use of the data, in order to provide data backup, archiving, and applications for a tier 2 level, as well as a disaster recovery service.
- Data replication for storing the same data in both local storage and public storage may be performed through copying in a cloud storage gateway, and a cloud storage gateway solution of CTERA Networks is a representative example thereof.
- the solution additionally provides file distribution, synchronization and sharing services.
- Korean Patent No. 10-1212778 titled “Cloud-computing-based smart office system and server and method for operating the same”, discloses a smart office system, including a cloud-based mobile web server and an on-premises mobile web server, and a server and method for operating the smart office system.
- An object of the present invention is to improve the performance of read/write operations in integrated storage that combines cloud storage and on-premises storage.
- Another object of the present invention is to enable cloud storage and on-premises storage included in integrated storage to provide a data storage service with the same performance.
- a further object of the present invention is to move data of a user based on the flexibility of a storage space and cost efficiencies.
- Yet another object of the present invention is to support various types of cloud storage services, such as Amazon S3, Microsoft Azure, and the like, thereby providing an integrated storage service that meets user requirements.
- cloud storage services such as Amazon S3, Microsoft Azure, and the like
- Still another object of the present invention is to enable data in cloud storage to be accessed at a speed close to the speed at which data in on-premises storage is accessed.
- Still another object of the present invention is to provide a service interface through which a user may access cloud-integrated storage using various service protocols.
- Still another object of the present invention is to provide various types of storage services, such as a storage service for storing conventional files or data blocks, a storage service for storing objects, which has recently come to be provided by cloud storage providers, and the like.
- Still another object of the present invention is to guarantee secure data transfer between on-premises storage and cloud storage, thereby guaranteeing the confidentiality of user data.
- Still another object of the present invention is to prevent data loss caused due to system errors.
- Still another object of the present invention is to provide a multi-tenant function for simultaneously performing multiple cloud services.
- an apparatus for providing storage for providing a cloud service includes a data distribution and storage unit for distributing data in order to store the data in integrated storage, including on-premises storage and cloud storage; a backend storage management unit for connecting to the integrated storage in order to store the data and providing information about storage tiering pertaining to the data; a data manipulation unit for providing the integrated storage as virtual data storage regardless of a location at which the data is actually stored; and a storage connection unit for providing a user with an interface for the virtual data storage as a single virtual storage unit.
- the data distribution and storage unit may minimize time taken to write and access data by optimizing the data to be written to the integrated storage, and may perform compression or encryption of the data.
- the data manipulation unit may provide a write buffer function or a read cache function for the data and decrease a response time of a write operation or a read operation for the data using high-speed storage.
- the apparatus may further include a provisioning and policy management unit for providing metadata for storing and distributing the data
- the metadata may include first metadata for data operations and second metadata for storage operations.
- a method for providing storage for providing a cloud service performed by an apparatus for providing storage for providing a cloud service, includes distributing data in order to store the data in integrated storage, including on-premises storage and cloud storage; and managing the data by providing the integrated storage as virtual data storage regardless of a location at which the data is actually stored and by providing a user with an interface for the virtual data storage as a single virtual storage unit.
- managing the data may include connecting to the integrated storage in order to store the data, and providing information about storage tiering pertaining to the data.
- distributing the data may be configured to minimize time taken to write and access data by optimizing the data to be written to the integrated storage; and to perform compression or encryption of the data.
- managing the data may be configured to provide a write buffer function or a read cache function for the data and to decrease a response time of a write operation or a read operation for the data using high-speed storage.
- the method may further include performing provisioning by providing metadata for storing and distributing the data
- the metadata may include first metadata for data operations and second metadata for storage operations.
- FIG. 1 is a block diagram that shows an integrated storage system according to an embodiment of the present invention
- FIG. 2 is a block diagram that shows an apparatus for providing storage for providing a cloud service according to an embodiment of the present invention
- FIG. 3 is a block diagram that specifically shows an example of the storage connection unit illustrated in FIG. 2 ;
- FIG. 4 is a block diagram that specifically shows an example of the data manipulation unit illustrated in FIG. 2 ;
- FIG. 5 is a view that shows an example of a RAM disk according to an embodiment of the present invention.
- FIG. 6 is a view that specifically shows the operations of a data distribution and storage unit and a backend storage management unit according to an embodiment of the present invention
- FIG. 7 is a flowchart that shows a method for providing storage for providing a cloud service according to an embodiment of the present invention
- FIG. 8 is a view that shows the relationship between a service provider and an apparatus for providing storage for providing a cloud service according to an embodiment of the present invention
- FIG. 9 is a flowchart that shows a storage provision method for registering a storage service according to an embodiment of the present invention.
- FIG. 10 is a block diagram that shows an apparatus for providing storage for providing a cloud service according to an embodiment of the present invention.
- FIG. 11 is a block diagram that shows an apparatus for providing storage for providing a cloud service using a backend connection daemon according to an embodiment of the present invention
- FIG. 12 is a flowchart that shows a method for providing storage according to an embodiment of the present invention.
- FIG. 13 is a block diagram that shows a computer system according to an embodiment of the present invention.
- FIG. 1 is a block diagram that shows an integrated storage system according to an embodiment of the present invention.
- an integrated storage system may include a user client device 10 , a storage provision apparatus 100 for providing a cloud service, and integrated storage 20 .
- the user client device 10 enables a user to request and receive the service of the integrated storage 20 using the storage provision apparatus 100 .
- the integrated storage may include cloud storage 21 and non-cloud storage 22 .
- the cloud storage 21 may be public cloud storage provided by a cloud provider.
- the non-cloud storage 22 may be on-premises storage possessed by companies and organizations.
- the storage provision apparatus 100 may manage and operate the cloud storage 21 and the non-cloud storage 22 included in the integrated storage 20 as unified storage.
- the storage provision apparatus 100 may provide a cloud service with consistent performance so that a user may not be able to distinguish access to the cloud storage 21 from access to the non-cloud storage 22 .
- FIG. 2 is a block diagram that shows an apparatus for providing storage for providing a cloud service according to an embodiment of the present invention.
- FIG. 3 is a block diagram that specifically shows an example of the storage connection unit illustrated in FIG. 2 .
- FIG. 4 is a block diagram that specifically shows an example of the data manipulation unit illustrated in FIG. 2 .
- the apparatus 100 for providing storage for providing a cloud service includes a storage connection unit 110 , a data manipulation unit 120 , a data distribution and storage unit 130 , a backend storage management unit 140 , and a provisioning and policy management unit 150 .
- the storage connection unit 110 may provide the service of the integrated storage 20 to a user by operating in conjunction with the integrated storage 20 .
- the storage connection unit 110 may include a virtual block device service engine 111 , a file-system service engine 112 , and an object storage service engine 113 .
- the storage connection unit 110 may process the protocols of block storage, file storage, and object storage and may provide an I/O interface and an acceleration function for improving processing of the protocols.
- the storage connection unit 110 may basically provide a user with block device and file system services, which are conventional storage service interfaces, and may also provide an object storage interface that has recently emerged.
- the data manipulation unit 120 may provide a single storage view of the entire storage system by providing a virtual disk pool to a user.
- the data manipulation unit 120 may form a virtual disk pool using a fast storage resource, and may provide a user with storage devices as a virtual disk.
- the data manipulation unit 120 may provide the integrated storage 20 as virtual data storage regardless of the location at which data is actually stored.
- the storage connection unit 110 may provide a user with an interface for the virtual data storage as a single virtual storage unit.
- the data manipulation unit 120 may provide at least one of a write buffer function and a read cache function for data and may improve the response time of read and write operations for the data using high-speed storage.
- the data manipulation unit 120 may provide data management functions, such as snapshots, fast replication, a distributed transaction log, and the like.
- the data manipulation unit 120 may provide a write buffer function or a read cache function to a user when a data write operation or a data read operation is performed.
- the data manipulation unit 120 may use memory, a Solid-State Drive (SSD), and a PCIe flash card to guarantee a fast response time to a user.
- SSD Solid-State Drive
- PCIe flash card PCIe flash card
- the data manipulation unit 120 may provide a read/write cache for data using a RAM disk in order to provide the service of the integrated storage.
- the data manipulation unit 120 may provide the function of caching the data stored in public cloud storage, which is the cloud storage 21 . Because data stored in the public cloud storage is transferred using an Internet network, the data access speed is slower than that of on-premises storage, which is the non-cloud storage 22 .
- the data manipulation unit 120 caches data stored in the public cloud storage to a storage device within the cloud-integrated storage operating platform, whereby the data in the public cloud storage may be accessed at a speed close to the speed at which data in the on-premises storage is accessed.
- the data manipulation unit 120 may include an in-memory namespace block 121 , a read cache unit 122 , a write cache unit 123 , an in-memory deduplication engine 124 , and an in-memory data compression engine 125 .
- the in-memory namespace block 121 may store information that is periodically and repeatedly read and written in order to access actual data, and may guarantee high access speed.
- the in-memory namespace block 121 stores information that is necessary for access to data in high-speed main memory, thereby providing the function of storing and managing the data.
- the in-memory namespace block 121 is a volatile storage medium and has a limited capacity. Therefore, the namespace block is backed up in real time, and the namespace block that is backed up may provide high availability through clustering of multiple nodes (virtual machines or physical servers).
- the data manipulation unit 120 may use the in-memory namespace block 121 and run both the in-memory deduplication engine 124 and the in-memory data compression engine 125 , which reduce the amount of data, in the in-memory block.
- the data manipulation unit 120 is required to guarantee a high speed when a global namespace for accessing actual data is accessed, and may provide a high-speed processing method in order to quickly write and read data.
- Each of the read cache unit 122 and the write cache unit 123 is in the form of a RAM disk, and may be configured as a single disk, which includes RAM, corresponding to main memory, and a Solid-State Drive (SSD).
- SSD Solid-State Drive
- the read cache unit 122 and the write cache unit 123 may back up data in real time in the SSD because the RAM is volatile.
- the read cache unit 122 and the write cache unit 123 may automatically make the SSD-based cache area replace the RAM-based cache area.
- the read cache unit 122 and the write cache unit 123 may return a result immediately after writing the data in a memory area for a fast response thereto.
- the in-memory deduplication engine 124 and the in-memory data compression engine 125 may correspond to the data distribution and storage unit 130 , which will be described later.
- the data distribution and storage unit 130 may be included in the data manipulation unit 120 .
- the in-memory deduplication engine 124 may provide the function of storing data in multiple physical devices in a distributed manner in order to prevent data loss.
- the in-memory deduplication engine 124 applies error detection and recovery code for detecting the occurrence of errors in data and correcting the errors, thereby responding to data and system errors.
- the in-memory data compression engine 125 compresses actual data to be stored in the backend storage, thereby reducing the size of the data. Particularly, the in-memory data compression engine 125 reduces the size of the data to be stored in the public cloud storage through compression, thereby reducing the size of the data to be transferred over a network.
- the data distribution and storage unit 130 may distribute data in order to store the data in the integrated storage 20 , which includes the on-premises storage and the cloud storage.
- the data distribution and storage unit 130 may provide an optimization function for the received data to be written such that the data may always be accessed with the minimum overhead.
- the data distribution and storage unit 130 optimizes the data to be written in the integrated storage 20 in order to minimize the time taken to write and access the data, and may perform at least one of compression and encryption of the data.
- the data distribution and storage unit 130 partitions each object into multiple segments in order to efficiently manage data, and may store the partitioned segments in another node or a data center in a distributed manner in order to improve reliability.
- the data distribution and storage unit 130 may optionally encrypt or compress the partitioned segments and enact a policy decision therefor.
- the data distribution and storage unit 130 applies error detection and recovery code for detecting the occurrence of errors in data and correcting the errors, thereby responding to data and system errors.
- the backend storage management unit 140 may provide a storage interface of the cloud storage 21 and the non-cloud storage 22 in order to store data created in the data distribution and storage unit 130 in the final resource.
- the backend storage management unit 140 may be connected with the integrated storage in order to store data and provide information about storage tiering pertaining to the data to be stored.
- the backend storage management unit 140 may provide the function of automatically or manually storing data using storage tiering based on performance, time, and the frequency of use according to the policy of a distributed storage hierarchy.
- the backend storage management unit 140 may provide the function of automatically distributing and storing data in various storage tiers.
- the backend storage management unit 140 may tier various types of storage based on the characteristics of the provided storage.
- the backend storage management unit 140 may initially store created data in high-speed storage, move the data to a lower tier of storage when the data is less frequently accessed, and finally store the data in the public cloud storage.
- the backend storage management unit 140 may automatically move data between various tiers of storage depending on the characteristics of the data.
- the provisioning and policy management unit 150 may manage the respective tiers and a user-based policy.
- the provisioning and policy management unit 150 may provide a hierarchical interface for disk provisioning requested by a user.
- the provisioning and policy management unit 150 may provide metadata for storing and distributing data.
- the metadata may include first metadata for data operations and second metadata for storage operations.
- the metadata is necessary in order to manage and access the data stored in the backend storage.
- the metadata of the present invention may be created when a user uses the client device 10 , or client metadata for an interface between the user client device 10 and the integrated-cloud management device, data management metadata that is necessary for data manipulation, and storage management metadata for backend storage may be used.
- FIG. 5 is a view that shows an example of a RAM disk according to an embodiment of the present invention.
- the read cache unit 122 and the write cache unit 123 which are the RAM disk of the data manipulation unit 120 , are specifically illustrated.
- the read cache unit 122 distributes data as multiple pieces of block data depending on hashes using a data deduplication engine 122 a.
- the write cache unit 123 manages a log for data recovery in the same node or another node connected therewith over a network using a data transaction log unit 123 a in preparation for the case in which data stored in a write cache is lost due to system errors.
- a log may save the location of data in a certain block and the hash value thereof, and may be maintained until the data is stored in backend storage.
- the write cache may be synchronized with the transaction log node when a log queue reaches a certain size or a certain time is exceeded, or whenever data is generated in response to a request to write the data.
- the block located in the write cache may be replicated to the transaction log node under a certain condition.
- the block in the write cache and the block in the transaction log node may be deleted therefrom because the data is removed from data to be managed.
- FIG. 6 is a view that specifically shows the operations of a data distribution and storage unit and a backend storage management unit according to an embodiment of the present invention.
- the data compression block 131 of the data distribution and storage unit 130 compresses the actual data to be stored in the backend storage, thereby reducing the size of the data.
- the data compression block 131 reduces the size of the data to be stored in the public cloud storage through compression, thereby reducing the size of the data to be transferred over a network.
- the data distribution block 132 may provide the function of storing data in multiple physical devices in a distributed manner in order to prevent data loss.
- the data distribution block 132 applies error detection and recovery code for detecting the occurrence of errors in data and correcting the errors, thereby responding to data and system errors.
- the backend storage management unit 140 may include a Hard Disk Drive (HDD), Serial Attached SCSI (SAS) storage, iSCSI storage, public cloud storage, and the like, and may provide an interface for finally storing data in the backend storage.
- HDD Hard Disk Drive
- SAS Serial Attached SCSI
- iSCSI iSCSI storage
- public cloud storage public cloud storage
- the backend storage management unit 140 uses various types of storage, ranging from memory storage for guaranteeing fast response time to cloud storage for managing a large volume of data, through a data distribution strategy, a parallel I/O engine, and a multi-path I/O engine, thereby providing a high-availability service related to the connected storage and data management.
- the backend storage management unit 140 may store data in storage in the same node or storage in multiple nodes configured as a cluster such that the data is distributed, and may adjust the data size and the number of nodes across which the data is distributed, whereby data loss caused by system errors may be prevented.
- the backend storage management unit 140 provides the function of automatically distributing and storing data in various tiers of storage. Here, based on the characteristics of the provided storage, various types of storage may be tiered. Initially, created data is stored in high-speed storage, data is moved to a lower tier of storage when the data is less frequently accessed, and the data is finally stored in the public cloud storage. The backend storage management unit 140 may automatically move data between various tiers of storage depending on the characteristics of the data.
- FIG. 7 is a flowchart that shows a method for providing storage for providing a cloud service according to an embodiment of the present invention.
- data may be accessed at step S 210 .
- data may be accessed at step S 210 in order to provide the service of integrated storage 20 .
- a virtual disk pool is provided to a user, whereby a single storage view of the entire storage system may be provided.
- the integrated storage 20 is provided as virtual data storage regardless of the location at which data is actually stored, and an interface for the virtual data storage as a single virtual storage unit may be provided to a user.
- data may be read or written at step S 220 .
- a read/write cache for data may be provided using a RAM disk in order to provide the service of the integrated storage.
- step S 220 at least one of a write buffer function and a read cache function for data is provided, and the response time of write and read operations for the data may be improved using high-speed storage.
- step S 220 data stored in the public cloud storage is cached to a storage device within the cloud-integrated storage operating platform, whereby the data in the public cloud storage may be accessed at a speed close to the speed at which data in on-premises storage is accessed.
- step S 220 data read and write operations are performed using a RAM disk configured as a single disk, which includes RAM, corresponding to main memory, and an SSD.
- the SSD-based cache area may automatically replace the RAM-based cache area.
- data may be distributed and stored at step S 230 .
- the object of the data may be distributed and stored, and the distributed object may be encrypted and compressed.
- step S 230 error detection and recovery code for detecting the occurrence of errors in data and correcting the errors is applied, whereby it is possible to respond to data and system errors.
- data may be distributed in order to store the data in the integrated storage 20 , including the on-premises storage and the cloud storage.
- the received data to be written may be optimized such that the data may always be accessed with the minimum overhead.
- the data to be written to the integrated storage 20 is optimized in order to minimize the time taken to write and access the data.
- at least one of compression and encryption of the data may be performed.
- each object is partitioned into multiple segments in order to efficiently manage data, and the partitioned segments may be stored in another node or a data center in a distributed manner in order to improve reliability.
- the partitioned segments may be optionally encrypted or compressed, and a policy decision therefor may be reflected.
- data may be stored in the final resource at step S 240 .
- the final data created at step S 230 may be stored in the final resource.
- step S 240 the integrated storage is connected in order to store the data, and information about storage tiering pertaining to the data to be stored may be provided.
- the function of automatically or manually storing data may be provided using storage tiering based on performance, time, and the frequency of use according to the policy of a distributed storage hierarchy.
- step S 240 the function of automatically distributing and storing data in various tiers of storage may be provided.
- step S 240 various types of storage may be tiered based on the characteristics of the provided storage.
- step S 240 created data is initially stored in high-speed storage, the data is moved to a lower tier of storage when the data is less frequently accessed, and the data may be finally stored in the public cloud storage.
- step S 240 data may be automatically moved between various tiers of storage depending on the characteristics of the data.
- FIG. 8 is a view that shows the relationship between a service provider and an apparatus for providing storage according to an embodiment of the present invention.
- the storage provision apparatus 100 may enable multiple Distributed File System (DFS) service providers to register their data storage services A to N in the storage provision apparatus 100 .
- DFS Distributed File System
- a DFS service administrator may provide the registered multiple storage services to users through the storage provision apparatus 100 .
- DFS service customers that is, clients or users, may be provided with the multiple storage services using the storage provision apparatus 100 .
- the storage provision apparatus 100 may manage integrated storage 20 based on multi-tenant architecture in order to provide multiple storage services.
- FIG. 9 is a flowchart that shows a storage provision method for registration of a storage service according to an embodiment of the present invention.
- the storage provision apparatus 100 may process the login of a provider at step S 310 .
- the provider may log on to the storage provision apparatus 100 using his or her ID and password, which have been registered in advance.
- step S 310 if the ID and password of the provider are not registered, a new ID and password may be created.
- a storage service may be registered in the storage at step S 320 .
- step S 320 cloud storage 21 and non-cloud storage 22 are checked in order to register a storage service, and the storage service may be registered.
- a registration method may be provided to the provider using a GUI so that the provider may easily register a storage service.
- a storage service name, the specifications of storage (the size, whether caching is supported, the number of tiers, whether encryption is supported, whether on-premises storage is supported, and the like), a data storage service protocol, the name and type of cloud storage, and the like are input by the provider via the GUI, and the service may be registered in the storage corresponding to the input information.
- the information input via the GUI may be registered in advance when a new provider registers his or her ID and password.
- storage may be configured at step S 330 .
- step S 330 virtual storage corresponding to the storage in which the storage service is registered may be created.
- the virtual storage may be registered in a virtual disk pool.
- a single storage view for providing a storage service may be provided to users.
- FIG. 10 is a block diagram that shows an apparatus for providing storage according to an embodiment of the present invention.
- the apparatus for providing storage is configured as multi-tenant storage by including as many storage connection units 110 , as many data manipulations units 120 , as many data distribution and storage units 130 , and as many backend storage management units 140 as the number of storage services registered by DFS service providers A to C.
- the respective units become the components of each layer or main components of the storage provision apparatus 100 .
- the storage provision apparatus 100 may support a multi-tenant function for simultaneously performing multiple services.
- a provisioning and policy management unit 150 may provide an administration GUI to an administrator, and may provide and manage a multi-tenant storage service.
- FIG. 11 is a block diagram that shows a storage provision apparatus using a backend connection daemon according to an embodiment of the present invention.
- the storage provision apparatus using a backend connection daemon includes a single provisioning and policy management unit 150 , multiple storage connection units 110 , multiple data manipulation units 120 , multiple data distribution and storage units 130 , and multiple backend storage units 140 .
- the multiple storage connection units 110 , the multiple data manipulation units 120 , the multiple data distribution and storage units 130 , and the multiple backend storage units 140 are provided for respective storage services provided by service providers 31 , 32 and 33 .
- the storage connection unit 110 may provide the storage service of integrated storage 20 by operating in connection with the integrated storage 20 .
- the integrated storage 20 may include non-cloud storage 22 and at least one cloud storage unit 21 .
- the data manipulation unit 120 may create a virtual disk pool of the integrated storage 20 , thereby providing a single storage view using at least one virtual disk.
- the data manipulation unit 120 may provide the integrated storage 20 as virtual data storage regardless of the location at which data is actually stored.
- the storage connection unit 110 may provide a user with an interface for using the virtual data storage as a single virtual storage unit.
- the storage connection unit 110 may provide information about the configuration of the single virtual storage unit and interface management information to a user in response to a request from the user.
- the storage connection unit 110 may provide an access mechanism through which a user may use the single virtual storage unit.
- the storage connection unit 110 provides registered information that matches user requirements, and the user requirements may include at least one of the capacity of storage, an access mechanism, and the storage type of the single virtual storage unit.
- the data distribution and storage unit 130 may provide a data distribution and encryption function such that the received data to be written may always be accessed with the minimum overhead.
- the data distribution and storage unit 130 may distribute the data in order to store the data in the integrated storage 20 , including on-premises storage and cloud storage.
- the backend storage management unit 140 may interface with the integrated storage 20 using a connection daemon in the form of software.
- the backend storage management unit 140 may include an interface for storage (an object storage interface or a block storage interface) and a backend connection daemon configured to interface with various types of storage, and may provide a proxy interface for easy registration of multiple storage devices.
- an interface for storage an object storage interface or a block storage interface
- a backend connection daemon configured to interface with various types of storage, and may provide a proxy interface for easy registration of multiple storage devices.
- the proxy interface of the backend storage management unit 140 may register a cloud service by detecting the storage area interface of the first daemon, which is connected to the cloud storage 21 , or of the second daemon, which is connected to the non-cloud storage 22 .
- the backend storage proxy may register a service in such a way that the backend connection daemon, which stores an object storage interface daemon or a block storage interface driver therein, automatically detects the storage area interface.
- the backend connection daemon may be run through a virtual machine or a container, excluding a block device, whereby the connection with object storage may be made.
- the backend storage management unit 140 may output information about the connected storage as storage in which a storage service may be registered.
- the backend storage management unit 140 may manage information for access by a user to a system and provide a secure path for access for registration of a storage service.
- the backend storage management unit 140 may create a backend connection daemon whenever a single storage device is connected therewith, and may connect the backend connection daemon with a proxy server.
- the proxy server (not illustrated) may store and manage data of a user using a driver interface that is connected with a virtual disk pool (vPool) through the data manipulation unit 120 .
- vPool virtual disk pool
- the backend storage management unit 140 is connected with the integrated storage 20 in order to store data therein, and may provide information about storage tiering pertaining to the data.
- the storage provision apparatus 100 may create a single virtual disk (Vdisk) when a registered service provider connects to the storage provision apparatus 100 , and the created virtual disk may be managed in the virtual disk pool.
- Vdisk virtual disk
- a user may be provided with multiple storage services from the storage in which the storage services are registered.
- the provisioning and policy management unit 150 may manage provision of storage services based on multi-tenant architecture by receiving registration of the storage services from multiple service providers.
- the provisioning and policy management unit 150 enables an administrator to register cloud storage 21 and non-cloud storage 22 for providing a storage service and to configure a new service in the storage provision apparatus 100 using an administration GUI.
- the provisioning and policy management unit 150 may create a cloud account, and the uploaded file may be stored in the cloud storage 21 or non-cloud storage 22 at the discretion of the administrator.
- the provisioning and policy management unit 150 may also provide the function of displaying, writing, modifying and deleting the content of a cloud service registered in the cloud storage 21 and the non-cloud storage 22 , which are integrated into the integrated storage 20 , using the administration GUI.
- the service of the cloud storage 21 may be provided along with the basic configuration thereof.
- the provisioning and policy management unit 150 may configure the functions of logical components as individual servers, virtual systems, or containers having a connection network by taking the form of a module or function having each of the logical component functions.
- the provisioning and policy management unit 150 may register the storage service in a storage device that matches service registration information input by a service provider, among the storage devices included in the integrated storage 20 .
- the provisioning and policy management unit 150 may provide the storage service by configuring virtual storage in the storage in which the storage service is registered.
- the provisioning and policy management unit 150 may manage the storage service using a first path, which is a data path along which data is moved, and a second path, which is a control path for controlling data, in order to prevent the I/O performance of the storage service from being degraded.
- FIG. 12 is a flowchart that shows a method for providing storage according to an embodiment of the present invention.
- data may be accessed at step S 410 .
- data may be accessed at step S 410 .
- the integrated storage 20 may include non-cloud storage 22 and at least one cloud storage unit 21 .
- the non-cloud storage 22 may be on-premises storage.
- a single storage view may be provided at step S 420 .
- a virtual disk pool of the integrated storage 20 is created, whereby a single storage view may be provided using at least one virtual disk.
- the integrated storage 20 may be provided as virtual data storage regardless of where data is actually stored.
- an interface for using the virtual data storage as a single virtual storage unit may be provided to the user.
- step S 420 information about the configuration of the single virtual storage unit and interface management information may be provided to a user in response to a request from the user.
- step S 420 an access mechanism through which a user may use the single virtual storage unit may be provided.
- step S 420 registered information matching user requirements is provided, and the user requirements may include at least one of the capacity of storage, an access mechanism, and the storage type of the single virtual storage unit.
- a data distribution and encryption function may be provided such that the received data to be written is accessed always with the minimum overhead.
- the data may be distributed so as to be stored in the integrated storage 20 , including the on-premises storage and the cloud storage.
- interfacing is performed at step S 430 .
- interfacing with the integrated storage 20 may be performed using a connection daemon in the form of software.
- an interface for storage (an object storage interface or a block storage interface), a backend connection daemon configured to interface with various types of storage, and a proxy interface for easy registration of multiple storage devices may be provided.
- a proxy interface may register a cloud service by detecting the storage area interface of the first daemon, which is connected with the cloud storage 21 , and of the second daemon, which is connected with the non-cloud storage 22 .
- the backend storage proxy may register a service in such a way that the backend connection daemon, which stores an object storage interface daemon or a block storage interface driver therein, automatically detects the storage area interface.
- the backend connection daemon may be run through a virtual machine or a container, excluding a block device, whereby the connection with object storage may be made.
- step S 430 information about the connected storage may be output as storage in which a storage service may be registered.
- step S 430 information for access by a user to a system may be managed, and a secure path for access for registration of a storage service may be provided.
- a single backend connection daemon may be created whenever a single storage device is connected, and the backend connection daemon may be connected with a proxy server.
- the proxy server may store and manage data of a user using a driver interface connected with a virtual disk pool through the data manipulation unit 120 .
- step S 430 the integrated storage 20 is connected in order to store data therein, and the storage tiering information pertaining to the data may be provided.
- the storage provision apparatus 100 may create a single virtual disk in response to access by a registered service provider thereto, and the created virtual disk may be managed in the virtual disk pool.
- the individual virtual disk pool a user may be provided with multiple storage services from the storage in which the storage services are registered.
- a storage service may be provided at step S 440 .
- the provision of a storage service may be managed based on multi-tenant architecture by receiving registration of storage services from multiple service providers.
- an administrator may register cloud storage 21 and non-cloud storage 22 for providing a storage service in the storage provision apparatus 100 and configure a new service using an administration GUI.
- step S 440 when a service provider signs up for the service and uploads and creates a file, a cloud account may be created, and the uploaded file may be stored in the cloud storage 21 or the non-cloud storage 22 at the discretion of the administrator.
- step S 440 the function of displaying, writing, modifying and deleting content of a cloud service registered in the cloud storage 21 and the non-cloud storage 22 , which are integrated into the integrated storage 20 , may be provided using the administration GUI.
- the service of the cloud storage 21 may be provided along with the basic configuration thereof, separately from the non-cloud storage 22 .
- the individual functions of logical components may be configured as servers, virtual systems, or containers having a connection network by implementing modules or functions having the respective logical component functions.
- the storage service may be registered in a storage device that matches service registration information input by the service provider, among the storage devices included in the integrated storage 20 .
- the storage service may be provided by configuring virtual storage in the storage in which the storage service is registered.
- the storage service may be managed using a first path, which is a data path along which data is moved, and a second path, which is a control path for controlling data, in order to prevent I/O performance of the storage service from being degraded.
- FIG. 13 is a block diagram that shows a computer system according to an embodiment of the present invention.
- the user client device 10 and the storage provision apparatus 100 may be implemented in a computer system 1100 including a computer-readable recording medium.
- the computer system 1100 may include at least one processor 1110 , memory 1130 , a user interface input device 1140 , a user interface output device 1150 , and storage 1160 , which communicate with each other via a bus 1120 .
- the computer system 1100 may further include a network interface 1170 connected with a network 1180 .
- the processor 1110 may be a central processing unit or a semiconductor device for executing processing instructions stored in the memory 1130 or the storage 1160 .
- the memory 1130 and the storage 1160 may be various types of volatile or nonvolatile storage media.
- the memory may include ROM 1131 or RAM 1132 .
- the present invention may improve the performance of read and write operations in integrated storage that combines cloud storage and on-premises storage.
- the present invention may enable cloud storage and on-premises storage included in integrated storage to provide a data storage service with the same performance.
- the present invention may enable data of a user to be moved based on the flexibility of a storage space and cost efficiencies.
- the present invention may support various types of cloud storage services, such as Amazon S3, Microsoft Azure, and the like, thereby providing an integrated storage service that meets user requirements.
- cloud storage services such as Amazon S3, Microsoft Azure, and the like
- the present invention may enable data in cloud storage to be accessed at a speed close to the speed at which data in on-premises storage is accessed.
- the present invention may provide a service interface through which a user may access cloud-integrated storage using various service protocols.
- the present invention may provide various types of storage services, such as a storage service for storing conventional files or data blocks, a storage service for storing objects, which has recently come to be provided by cloud storage providers, and the like.
- the present invention may guarantee secure data transfer between on-premises storage and cloud storage, thereby guaranteeing the confidentiality of user data.
- the present invention may prevent data loss caused due to system errors.
- the present invention may make it easy to construct a system by providing cloud-integrated storage in the form of an appliance in which storage hardware and software are integrated for user convenience.
- the present invention may provide a multitenant function for simultaneously performing multiple cloud services.
- the apparatus and method for providing storage for providing a cloud service are not limitedly applied to the configurations and operations of the above-described embodiments, but all or some of the embodiments may be selectively combined and configured, so that the embodiments may be modified in various ways.
Abstract
Description
- This application claims the benefit of Korean Patent Application No. 10-2017-0109957, filed Aug. 30, 2017, No. 10-2017-0137712, filed Oct. 23, 2017, No. 10-2018-0054966, filed May 14, 2018, and No. 10-2018-0054951, filed May 14, 2018, which are hereby incorporated by reference in their entirety into this application.
- The present invention relates generally to cloud-computing technology, and more particularly to a storage integration method for combining cloud storage and non-cloud storage.
- These days, the development of technology for cloud computing, which enables a user to use a desired service without restrictions as to time and place, is accelerated, and market demand therefor continues to increase. Cloud computing may provide network, storage, and computing services desired by users using the Internet, without the need to provide hardware and software for each user.
- In the case of a storage system related to a data storage service, among cloud-computing techniques, a user may request to store data using a secure and convenient service interface provided by the system. In this regard, a cloud-integrated storage system that stores data in cloud-integrated storage that appears as a single storage space even though both on-premises storage and public cloud storage are integrated therein has been developed.
- Particularly, the cloud-integrated storage system may manage and operate on-premises public storage that appears as a single storage space while making use of the advantages both of on-premises storage possessed by companies and organizations and of public cloud storage provided by a cloud provider.
- Using on-premises public storage appearing as a single storage space, the cloud-integrated storage system may provide a converged storage infrastructure service that secures the flexibility and cost efficiencies of a storage space and guarantees reliability and control over sensitive data.
- Accordingly, the cloud-integrated storage system may extend the use of cloud services to various fields and use the cloud services in order to create new business models.
- Trends of existing similar systems are as follows.
- In order to support operations for ‘IDC's 3rd Platform’, for example, real-time analysis, IoT, AI computing, and the like, there is a strong demand to construct and adopt a hybrid cloud-computing service.
- Also, IDC's 3rd Platform aims to support the extension of computing resources by unifying various cloud models and to improve automation and computing environment management efficiency.
- HP provides infrastructure management functions using a RESTful API based on OpenStack and provides a Helion Eucalyptus platform, which is open-source software designed to be compatible with Amazon Web Services (AWS).
- VMware launched vCloud Hybrid Service (vCHS), which provides virtualization of servers, storage, and networking in an integrated manner based on existing virtualization solutions and infrastructure of VMware.
- Rackspace focuses on the extension of cloud infrastructure and integrates a cloud server with an enterprise Storage Area Network (SAN). Also, Rackspace supports data protection by deploying Cisco ASA firewalls.
- Avere FlashCloud of Avere Systems and StorSimple of Microsoft have cloud storage gateway capabilities for storage tiering, based on which data is stored in local or cloud storage depending on the frequency of use of the data, in order to provide data backup, archiving, and applications for a tier 2 level, as well as a disaster recovery service.
- Data replication for storing the same data in both local storage and public storage may be performed through copying in a cloud storage gateway, and a cloud storage gateway solution of CTERA Networks is a representative example thereof. The solution additionally provides file distribution, synchronization and sharing services.
- Meanwhile, Korean Patent No. 10-1212778, titled “Cloud-computing-based smart office system and server and method for operating the same”, discloses a smart office system, including a cloud-based mobile web server and an on-premises mobile web server, and a server and method for operating the smart office system.
- An object of the present invention is to improve the performance of read/write operations in integrated storage that combines cloud storage and on-premises storage.
- Another object of the present invention is to enable cloud storage and on-premises storage included in integrated storage to provide a data storage service with the same performance.
- A further object of the present invention is to move data of a user based on the flexibility of a storage space and cost efficiencies.
- Yet another object of the present invention is to support various types of cloud storage services, such as Amazon S3, Microsoft Azure, and the like, thereby providing an integrated storage service that meets user requirements.
- Still another object of the present invention is to enable data in cloud storage to be accessed at a speed close to the speed at which data in on-premises storage is accessed.
- Still another object of the present invention is to provide a service interface through which a user may access cloud-integrated storage using various service protocols.
- Still another object of the present invention is to provide various types of storage services, such as a storage service for storing conventional files or data blocks, a storage service for storing objects, which has recently come to be provided by cloud storage providers, and the like.
- Still another object of the present invention is to guarantee secure data transfer between on-premises storage and cloud storage, thereby guaranteeing the confidentiality of user data.
- Still another object of the present invention is to prevent data loss caused due to system errors.
- Still another object of the present invention is to provide a multi-tenant function for simultaneously performing multiple cloud services.
- In order to accomplish the above objects, an apparatus for providing storage for providing a cloud service according to an embodiment of the present invention includes a data distribution and storage unit for distributing data in order to store the data in integrated storage, including on-premises storage and cloud storage; a backend storage management unit for connecting to the integrated storage in order to store the data and providing information about storage tiering pertaining to the data; a data manipulation unit for providing the integrated storage as virtual data storage regardless of a location at which the data is actually stored; and a storage connection unit for providing a user with an interface for the virtual data storage as a single virtual storage unit.
- Here, the data distribution and storage unit may minimize time taken to write and access data by optimizing the data to be written to the integrated storage, and may perform compression or encryption of the data.
- Here, the data manipulation unit may provide a write buffer function or a read cache function for the data and decrease a response time of a write operation or a read operation for the data using high-speed storage.
- Here, the apparatus may further include a provisioning and policy management unit for providing metadata for storing and distributing the data, and the metadata may include first metadata for data operations and second metadata for storage operations.
- Also, in order to accomplish the above objects, a method for providing storage for providing a cloud service, performed by an apparatus for providing storage for providing a cloud service, according to an embodiment of the present invention includes distributing data in order to store the data in integrated storage, including on-premises storage and cloud storage; and managing the data by providing the integrated storage as virtual data storage regardless of a location at which the data is actually stored and by providing a user with an interface for the virtual data storage as a single virtual storage unit.
- Here, managing the data may include connecting to the integrated storage in order to store the data, and providing information about storage tiering pertaining to the data.
- Here, distributing the data may be configured to minimize time taken to write and access data by optimizing the data to be written to the integrated storage; and to perform compression or encryption of the data.
- Here, managing the data may be configured to provide a write buffer function or a read cache function for the data and to decrease a response time of a write operation or a read operation for the data using high-speed storage.
- Here, the method may further include performing provisioning by providing metadata for storing and distributing the data, and the metadata may include first metadata for data operations and second metadata for storage operations.
- The above and other objects, features and advantages of the present invention will be more clearly understood from the following detailed description taken in conjunction with the accompanying drawings, in which:
-
FIG. 1 is a block diagram that shows an integrated storage system according to an embodiment of the present invention; -
FIG. 2 is a block diagram that shows an apparatus for providing storage for providing a cloud service according to an embodiment of the present invention; -
FIG. 3 is a block diagram that specifically shows an example of the storage connection unit illustrated inFIG. 2 ; -
FIG. 4 is a block diagram that specifically shows an example of the data manipulation unit illustrated inFIG. 2 ; -
FIG. 5 is a view that shows an example of a RAM disk according to an embodiment of the present invention; -
FIG. 6 is a view that specifically shows the operations of a data distribution and storage unit and a backend storage management unit according to an embodiment of the present invention; -
FIG. 7 is a flowchart that shows a method for providing storage for providing a cloud service according to an embodiment of the present invention; -
FIG. 8 is a view that shows the relationship between a service provider and an apparatus for providing storage for providing a cloud service according to an embodiment of the present invention; -
FIG. 9 is a flowchart that shows a storage provision method for registering a storage service according to an embodiment of the present invention; -
FIG. 10 is a block diagram that shows an apparatus for providing storage for providing a cloud service according to an embodiment of the present invention; -
FIG. 11 is a block diagram that shows an apparatus for providing storage for providing a cloud service using a backend connection daemon according to an embodiment of the present invention; -
FIG. 12 is a flowchart that shows a method for providing storage according to an embodiment of the present invention; and -
FIG. 13 is a block diagram that shows a computer system according to an embodiment of the present invention. - The present invention will be described in detail below with reference to the accompanying drawings. Repeated descriptions and descriptions of known functions and configurations which have been deemed to unnecessarily obscure the gist of the present invention will be omitted below. The embodiments of the present invention are intended to fully describe the present invention to a person having ordinary knowledge in the art to which the present invention pertains. Accordingly, the shapes, sizes, etc. of components in the drawings may be exaggerated in order to make the description clearer.
- Throughout this specification, the terms “comprises” and/or “comprising” and “includes” and/or “including” specify the presence of stated elements but do not preclude the presence or addition of one or more other elements unless otherwise specified.
- Hereinafter, a preferred embodiment of the present invention will be described in detail with reference to the accompanying drawings.
-
FIG. 1 is a block diagram that shows an integrated storage system according to an embodiment of the present invention. - Referring to
FIG. 1 , an integrated storage system according to an embodiment of the present invention may include auser client device 10, astorage provision apparatus 100 for providing a cloud service, andintegrated storage 20. - The
user client device 10 enables a user to request and receive the service of theintegrated storage 20 using thestorage provision apparatus 100. - The integrated storage may include
cloud storage 21 andnon-cloud storage 22. - The
cloud storage 21 may be public cloud storage provided by a cloud provider. - The
non-cloud storage 22 may be on-premises storage possessed by companies and organizations. - The
storage provision apparatus 100 may manage and operate thecloud storage 21 and thenon-cloud storage 22 included in theintegrated storage 20 as unified storage. - Here, the
storage provision apparatus 100 may provide a cloud service with consistent performance so that a user may not be able to distinguish access to thecloud storage 21 from access to thenon-cloud storage 22. -
FIG. 2 is a block diagram that shows an apparatus for providing storage for providing a cloud service according to an embodiment of the present invention.FIG. 3 is a block diagram that specifically shows an example of the storage connection unit illustrated inFIG. 2 .FIG. 4 is a block diagram that specifically shows an example of the data manipulation unit illustrated inFIG. 2 . - Referring to
FIG. 2 , theapparatus 100 for providing storage for providing a cloud service according to an embodiment of the present invention includes astorage connection unit 110, adata manipulation unit 120, a data distribution andstorage unit 130, a backendstorage management unit 140, and a provisioning andpolicy management unit 150. - The
storage connection unit 110 may provide the service of theintegrated storage 20 to a user by operating in conjunction with theintegrated storage 20. - Referring to
FIG. 3 , thestorage connection unit 110 may include a virtual blockdevice service engine 111, a file-system service engine 112, and an objectstorage service engine 113. - Here, the
storage connection unit 110 may process the protocols of block storage, file storage, and object storage and may provide an I/O interface and an acceleration function for improving processing of the protocols. - Here, the
storage connection unit 110 may basically provide a user with block device and file system services, which are conventional storage service interfaces, and may also provide an object storage interface that has recently emerged. - The
data manipulation unit 120 may provide a single storage view of the entire storage system by providing a virtual disk pool to a user. - That is, the
data manipulation unit 120 may form a virtual disk pool using a fast storage resource, and may provide a user with storage devices as a virtual disk. - Here, the
data manipulation unit 120 may provide theintegrated storage 20 as virtual data storage regardless of the location at which data is actually stored. - Here, the
storage connection unit 110 may provide a user with an interface for the virtual data storage as a single virtual storage unit. - Therefore, even though data is physically distributed across various types of storage, a user may be provided with a single storage configuration regardless of the location at which the data is actually stored.
- The
data manipulation unit 120 may provide at least one of a write buffer function and a read cache function for data and may improve the response time of read and write operations for the data using high-speed storage. - Here, the
data manipulation unit 120 may provide data management functions, such as snapshots, fast replication, a distributed transaction log, and the like. - Here, the
data manipulation unit 120 may provide a write buffer function or a read cache function to a user when a data write operation or a data read operation is performed. - Here, the
data manipulation unit 120 may use memory, a Solid-State Drive (SSD), and a PCIe flash card to guarantee a fast response time to a user. - Here, the
data manipulation unit 120 may provide a read/write cache for data using a RAM disk in order to provide the service of the integrated storage. - The
data manipulation unit 120 may provide the function of caching the data stored in public cloud storage, which is thecloud storage 21. Because data stored in the public cloud storage is transferred using an Internet network, the data access speed is slower than that of on-premises storage, which is thenon-cloud storage 22. - Also, because data is automatically distributed across public cloud storage in the state in which a user cannot recognize the distribution of the data, a function for quickly accessing data stored in the public cloud storage is required.
- The
data manipulation unit 120 caches data stored in the public cloud storage to a storage device within the cloud-integrated storage operating platform, whereby the data in the public cloud storage may be accessed at a speed close to the speed at which data in the on-premises storage is accessed. - Referring to
FIG. 4 , thedata manipulation unit 120 may include an in-memory namespace block 121, aread cache unit 122, awrite cache unit 123, an in-memory deduplication engine 124, and an in-memorydata compression engine 125. - The in-
memory namespace block 121 may store information that is periodically and repeatedly read and written in order to access actual data, and may guarantee high access speed. - Here, the in-
memory namespace block 121 stores information that is necessary for access to data in high-speed main memory, thereby providing the function of storing and managing the data. - Here, the in-
memory namespace block 121 is a volatile storage medium and has a limited capacity. Therefore, the namespace block is backed up in real time, and the namespace block that is backed up may provide high availability through clustering of multiple nodes (virtual machines or physical servers). - Here, in order to provide fast performance of the integrated storage, the
data manipulation unit 120 may use the in-memory namespace block 121 and run both the in-memory deduplication engine 124 and the in-memorydata compression engine 125, which reduce the amount of data, in the in-memory block. - Here, the
data manipulation unit 120 is required to guarantee a high speed when a global namespace for accessing actual data is accessed, and may provide a high-speed processing method in order to quickly write and read data. - Each of the
read cache unit 122 and thewrite cache unit 123 is in the form of a RAM disk, and may be configured as a single disk, which includes RAM, corresponding to main memory, and a Solid-State Drive (SSD). - The
read cache unit 122 and thewrite cache unit 123 may back up data in real time in the SSD because the RAM is volatile. - Here, when the RAM-based cache area is exhausted, the
read cache unit 122 and thewrite cache unit 123 may automatically make the SSD-based cache area replace the RAM-based cache area. - Here, when a user writes data, the
read cache unit 122 and thewrite cache unit 123 may return a result immediately after writing the data in a memory area for a fast response thereto. - The in-
memory deduplication engine 124 and the in-memorydata compression engine 125 may correspond to the data distribution andstorage unit 130, which will be described later. - That is, the data distribution and
storage unit 130 may be included in thedata manipulation unit 120. - The in-
memory deduplication engine 124 may provide the function of storing data in multiple physical devices in a distributed manner in order to prevent data loss. - Here, the in-
memory deduplication engine 124 applies error detection and recovery code for detecting the occurrence of errors in data and correcting the errors, thereby responding to data and system errors. - The in-memory
data compression engine 125 compresses actual data to be stored in the backend storage, thereby reducing the size of the data. Particularly, the in-memorydata compression engine 125 reduces the size of the data to be stored in the public cloud storage through compression, thereby reducing the size of the data to be transferred over a network. - The data distribution and
storage unit 130 may distribute data in order to store the data in theintegrated storage 20, which includes the on-premises storage and the cloud storage. - Here, the data distribution and
storage unit 130 may provide an optimization function for the received data to be written such that the data may always be accessed with the minimum overhead. - Here, the data distribution and
storage unit 130 optimizes the data to be written in theintegrated storage 20 in order to minimize the time taken to write and access the data, and may perform at least one of compression and encryption of the data. - Here, the data distribution and
storage unit 130 partitions each object into multiple segments in order to efficiently manage data, and may store the partitioned segments in another node or a data center in a distributed manner in order to improve reliability. - Here, the data distribution and
storage unit 130 may optionally encrypt or compress the partitioned segments and enact a policy decision therefor. - Here, the data distribution and
storage unit 130 applies error detection and recovery code for detecting the occurrence of errors in data and correcting the errors, thereby responding to data and system errors. - The backend
storage management unit 140 may provide a storage interface of thecloud storage 21 and thenon-cloud storage 22 in order to store data created in the data distribution andstorage unit 130 in the final resource. - Here, the backend
storage management unit 140 may be connected with the integrated storage in order to store data and provide information about storage tiering pertaining to the data to be stored. - Here, the backend
storage management unit 140 may provide the function of automatically or manually storing data using storage tiering based on performance, time, and the frequency of use according to the policy of a distributed storage hierarchy. - Here, the backend
storage management unit 140 may provide the function of automatically distributing and storing data in various storage tiers. - Here, the backend
storage management unit 140 may tier various types of storage based on the characteristics of the provided storage. - Here, the backend
storage management unit 140 may initially store created data in high-speed storage, move the data to a lower tier of storage when the data is less frequently accessed, and finally store the data in the public cloud storage. - Here, the backend
storage management unit 140 may automatically move data between various tiers of storage depending on the characteristics of the data. - The provisioning and
policy management unit 150 may manage the respective tiers and a user-based policy. Here, the provisioning andpolicy management unit 150 may provide a hierarchical interface for disk provisioning requested by a user. - Here, the provisioning and
policy management unit 150 may provide metadata for storing and distributing data. - Here, the metadata may include first metadata for data operations and second metadata for storage operations.
- Here, the metadata is necessary in order to manage and access the data stored in the backend storage. The metadata of the present invention may be created when a user uses the
client device 10, or client metadata for an interface between theuser client device 10 and the integrated-cloud management device, data management metadata that is necessary for data manipulation, and storage management metadata for backend storage may be used. -
FIG. 5 is a view that shows an example of a RAM disk according to an embodiment of the present invention. - Referring to
FIG. 5 , theread cache unit 122 and thewrite cache unit 123, which are the RAM disk of thedata manipulation unit 120, are specifically illustrated. - The
read cache unit 122 distributes data as multiple pieces of block data depending on hashes using adata deduplication engine 122 a. - The
write cache unit 123 manages a log for data recovery in the same node or another node connected therewith over a network using a datatransaction log unit 123 a in preparation for the case in which data stored in a write cache is lost due to system errors. - A log may save the location of data in a certain block and the hash value thereof, and may be maintained until the data is stored in backend storage.
- The write cache may be synchronized with the transaction log node when a log queue reaches a certain size or a certain time is exceeded, or whenever data is generated in response to a request to write the data. The block located in the write cache may be replicated to the transaction log node under a certain condition. When data in the corresponding block is stored in the backend storage, the block in the write cache and the block in the transaction log node may be deleted therefrom because the data is removed from data to be managed.
-
FIG. 6 is a view that specifically shows the operations of a data distribution and storage unit and a backend storage management unit according to an embodiment of the present invention. - Referring to
FIG. 6 , thedata compression block 131 of the data distribution andstorage unit 130 compresses the actual data to be stored in the backend storage, thereby reducing the size of the data. Particularly, thedata compression block 131 reduces the size of the data to be stored in the public cloud storage through compression, thereby reducing the size of the data to be transferred over a network. - The
data distribution block 132 may provide the function of storing data in multiple physical devices in a distributed manner in order to prevent data loss. - Here, the
data distribution block 132 applies error detection and recovery code for detecting the occurrence of errors in data and correcting the errors, thereby responding to data and system errors. - The backend
storage management unit 140 may include a Hard Disk Drive (HDD), Serial Attached SCSI (SAS) storage, iSCSI storage, public cloud storage, and the like, and may provide an interface for finally storing data in the backend storage. - Here, the backend
storage management unit 140 uses various types of storage, ranging from memory storage for guaranteeing fast response time to cloud storage for managing a large volume of data, through a data distribution strategy, a parallel I/O engine, and a multi-path I/O engine, thereby providing a high-availability service related to the connected storage and data management. - Here, the backend
storage management unit 140 may store data in storage in the same node or storage in multiple nodes configured as a cluster such that the data is distributed, and may adjust the data size and the number of nodes across which the data is distributed, whereby data loss caused by system errors may be prevented. - The backend
storage management unit 140 provides the function of automatically distributing and storing data in various tiers of storage. Here, based on the characteristics of the provided storage, various types of storage may be tiered. Initially, created data is stored in high-speed storage, data is moved to a lower tier of storage when the data is less frequently accessed, and the data is finally stored in the public cloud storage. The backendstorage management unit 140 may automatically move data between various tiers of storage depending on the characteristics of the data. -
FIG. 7 is a flowchart that shows a method for providing storage for providing a cloud service according to an embodiment of the present invention. - Referring to
FIG. 7 , in the method for providing storage for providing a cloud service according to an embodiment of the present invention, first, data may be accessed at step S210. - That is, data may be accessed at step S210 in order to provide the service of
integrated storage 20. - Here, at step S210, a virtual disk pool is provided to a user, whereby a single storage view of the entire storage system may be provided.
- Here, at step S210, the
integrated storage 20 is provided as virtual data storage regardless of the location at which data is actually stored, and an interface for the virtual data storage as a single virtual storage unit may be provided to a user. - In the method for providing storage for providing a cloud service according to an embodiment of the present invention, data may be read or written at step S220.
- That is, at step S220, a read/write cache for data may be provided using a RAM disk in order to provide the service of the integrated storage.
- Here, at step S220, at least one of a write buffer function and a read cache function for data is provided, and the response time of write and read operations for the data may be improved using high-speed storage.
- Here, at step S220, data stored in the public cloud storage is cached to a storage device within the cloud-integrated storage operating platform, whereby the data in the public cloud storage may be accessed at a speed close to the speed at which data in on-premises storage is accessed.
- Here, at step S220, data read and write operations are performed using a RAM disk configured as a single disk, which includes RAM, corresponding to main memory, and an SSD. Here, when the RAM-based cache area is exhausted, the SSD-based cache area may automatically replace the RAM-based cache area.
- In the method for providing storage according to an embodiment of the present invention, data may be distributed and stored at step S230.
- That is, at step S230, the object of the data may be distributed and stored, and the distributed object may be encrypted and compressed.
- Here, at step S230, error detection and recovery code for detecting the occurrence of errors in data and correcting the errors is applied, whereby it is possible to respond to data and system errors.
- Here, at step S230, data may be distributed in order to store the data in the
integrated storage 20, including the on-premises storage and the cloud storage. - Here, at step S230, the received data to be written may be optimized such that the data may always be accessed with the minimum overhead.
- Here, at step S230, the data to be written to the
integrated storage 20 is optimized in order to minimize the time taken to write and access the data. To this end, at least one of compression and encryption of the data may be performed. - Here, at step S230, each object is partitioned into multiple segments in order to efficiently manage data, and the partitioned segments may be stored in another node or a data center in a distributed manner in order to improve reliability.
- Here, at step S230, the partitioned segments may be optionally encrypted or compressed, and a policy decision therefor may be reflected.
- In the method for providing storage according to an embodiment of the present invention, data may be stored in the final resource at step S240.
- That is, at step S240, the final data created at step S230 may be stored in the final resource.
- Here, at step S240, the integrated storage is connected in order to store the data, and information about storage tiering pertaining to the data to be stored may be provided.
- Here, at step S240, the function of automatically or manually storing data may be provided using storage tiering based on performance, time, and the frequency of use according to the policy of a distributed storage hierarchy.
- Here, at step S240, the function of automatically distributing and storing data in various tiers of storage may be provided.
- Here, at step S240, various types of storage may be tiered based on the characteristics of the provided storage.
- Here, at step S240, created data is initially stored in high-speed storage, the data is moved to a lower tier of storage when the data is less frequently accessed, and the data may be finally stored in the public cloud storage.
- Here, at step S240, data may be automatically moved between various tiers of storage depending on the characteristics of the data.
-
FIG. 8 is a view that shows the relationship between a service provider and an apparatus for providing storage according to an embodiment of the present invention. - Referring to
FIG. 8 , thestorage provision apparatus 100 according to an embodiment of the present invention may enable multiple Distributed File System (DFS) service providers to register their data storage services A to N in thestorage provision apparatus 100. - Here, a DFS service administrator may provide the registered multiple storage services to users through the
storage provision apparatus 100. - Here, DFS service customers, that is, clients or users, may be provided with the multiple storage services using the
storage provision apparatus 100. - Here, the
storage provision apparatus 100 may manageintegrated storage 20 based on multi-tenant architecture in order to provide multiple storage services. -
FIG. 9 is a flowchart that shows a storage provision method for registration of a storage service according to an embodiment of the present invention. - Referring to
FIG. 9 , in the storage provision method for registration of a storage service according to an embodiment of the present invention, first, thestorage provision apparatus 100 may process the login of a provider at step S310. - Here, at step S310, in order to register a storage service, the provider may log on to the
storage provision apparatus 100 using his or her ID and password, which have been registered in advance. - Here, at step S310, if the ID and password of the provider are not registered, a new ID and password may be created.
- Also, in the storage provision method for registration of a storage service according to an embodiment of the present invention, a storage service may be registered in the storage at step S320.
- That is, at step S320,
cloud storage 21 andnon-cloud storage 22 are checked in order to register a storage service, and the storage service may be registered. - Here, at step S320, a registration method may be provided to the provider using a GUI so that the provider may easily register a storage service.
- Here, at step S320, a storage service name, the specifications of storage (the size, whether caching is supported, the number of tiers, whether encryption is supported, whether on-premises storage is supported, and the like), a data storage service protocol, the name and type of cloud storage, and the like are input by the provider via the GUI, and the service may be registered in the storage corresponding to the input information.
- Here, the information input via the GUI may be registered in advance when a new provider registers his or her ID and password.
- Also, in the storage provision method for registration of a storage service according to an embodiment of the present invention, storage may be configured at step S330.
- That is, at step S330, virtual storage corresponding to the storage in which the storage service is registered may be created.
- Here, at step S330, the virtual storage may be registered in a virtual disk pool. Using the virtual disk pool, a single storage view for providing a storage service may be provided to users.
-
FIG. 10 is a block diagram that shows an apparatus for providing storage according to an embodiment of the present invention. - Referring to
FIG. 10 , the apparatus for providing storage according to an embodiment of the present invention is configured as multi-tenant storage by including as manystorage connection units 110, as manydata manipulations units 120, as many data distribution andstorage units 130, and as many backendstorage management units 140 as the number of storage services registered by DFS service providers A to C. Here, the respective units become the components of each layer or main components of thestorage provision apparatus 100. - That is, the
storage provision apparatus 100 may support a multi-tenant function for simultaneously performing multiple services. - Here, a provisioning and
policy management unit 150 may provide an administration GUI to an administrator, and may provide and manage a multi-tenant storage service. -
FIG. 11 is a block diagram that shows a storage provision apparatus using a backend connection daemon according to an embodiment of the present invention. - Referring to
FIG. 11 , the storage provision apparatus using a backend connection daemon according to an embodiment of the present invention includes a single provisioning andpolicy management unit 150, multiplestorage connection units 110, multipledata manipulation units 120, multiple data distribution andstorage units 130, and multiplebackend storage units 140. Here, the multiplestorage connection units 110, the multipledata manipulation units 120, the multiple data distribution andstorage units 130, and the multiplebackend storage units 140 are provided for respective storage services provided byservice providers - The
storage connection unit 110 may provide the storage service ofintegrated storage 20 by operating in connection with theintegrated storage 20. - Here, the
integrated storage 20 may includenon-cloud storage 22 and at least onecloud storage unit 21. - The
data manipulation unit 120 may create a virtual disk pool of theintegrated storage 20, thereby providing a single storage view using at least one virtual disk. - Here, the
data manipulation unit 120 may provide theintegrated storage 20 as virtual data storage regardless of the location at which data is actually stored. - Here, the
storage connection unit 110 may provide a user with an interface for using the virtual data storage as a single virtual storage unit. - Here, the
storage connection unit 110 may provide information about the configuration of the single virtual storage unit and interface management information to a user in response to a request from the user. - Here, the
storage connection unit 110 may provide an access mechanism through which a user may use the single virtual storage unit. - Here, the
storage connection unit 110 provides registered information that matches user requirements, and the user requirements may include at least one of the capacity of storage, an access mechanism, and the storage type of the single virtual storage unit. - The data distribution and
storage unit 130 may provide a data distribution and encryption function such that the received data to be written may always be accessed with the minimum overhead. - Here, the data distribution and
storage unit 130 may distribute the data in order to store the data in theintegrated storage 20, including on-premises storage and cloud storage. - The backend
storage management unit 140 may interface with theintegrated storage 20 using a connection daemon in the form of software. - Here, the backend
storage management unit 140 may include an interface for storage (an object storage interface or a block storage interface) and a backend connection daemon configured to interface with various types of storage, and may provide a proxy interface for easy registration of multiple storage devices. - Here, the proxy interface of the backend
storage management unit 140 may register a cloud service by detecting the storage area interface of the first daemon, which is connected to thecloud storage 21, or of the second daemon, which is connected to thenon-cloud storage 22. - The backend storage proxy may register a service in such a way that the backend connection daemon, which stores an object storage interface daemon or a block storage interface driver therein, automatically detects the storage area interface.
- For connection with the
integrated storage 20, the backend connection daemon may be run through a virtual machine or a container, excluding a block device, whereby the connection with object storage may be made. - Here, the backend
storage management unit 140 may output information about the connected storage as storage in which a storage service may be registered. - Here, the backend
storage management unit 140 may manage information for access by a user to a system and provide a secure path for access for registration of a storage service. - Here, the backend
storage management unit 140 may create a backend connection daemon whenever a single storage device is connected therewith, and may connect the backend connection daemon with a proxy server. The proxy server (not illustrated) may store and manage data of a user using a driver interface that is connected with a virtual disk pool (vPool) through thedata manipulation unit 120. - Here, the backend
storage management unit 140 is connected with theintegrated storage 20 in order to store data therein, and may provide information about storage tiering pertaining to the data. - Accordingly, the
storage provision apparatus 100 may create a single virtual disk (Vdisk) when a registered service provider connects to thestorage provision apparatus 100, and the created virtual disk may be managed in the virtual disk pool. Here, using the individual virtual disk pool, a user may be provided with multiple storage services from the storage in which the storage services are registered. - The provisioning and
policy management unit 150 may manage provision of storage services based on multi-tenant architecture by receiving registration of the storage services from multiple service providers. - Here, the provisioning and
policy management unit 150 enables an administrator to registercloud storage 21 andnon-cloud storage 22 for providing a storage service and to configure a new service in thestorage provision apparatus 100 using an administration GUI. - Here, when a service provider signs up for the service and uploads and creates a file, the provisioning and
policy management unit 150 may create a cloud account, and the uploaded file may be stored in thecloud storage 21 ornon-cloud storage 22 at the discretion of the administrator. - Here, the provisioning and
policy management unit 150 may also provide the function of displaying, writing, modifying and deleting the content of a cloud service registered in thecloud storage 21 and thenon-cloud storage 22, which are integrated into theintegrated storage 20, using the administration GUI. - Separately from the
non-cloud storage 22, the service of thecloud storage 21 may be provided along with the basic configuration thereof. - Here, the provisioning and
policy management unit 150 may configure the functions of logical components as individual servers, virtual systems, or containers having a connection network by taking the form of a module or function having each of the logical component functions. - Here, the provisioning and
policy management unit 150 may register the storage service in a storage device that matches service registration information input by a service provider, among the storage devices included in theintegrated storage 20. - Here, the provisioning and
policy management unit 150 may provide the storage service by configuring virtual storage in the storage in which the storage service is registered. - Here, the provisioning and
policy management unit 150 may manage the storage service using a first path, which is a data path along which data is moved, and a second path, which is a control path for controlling data, in order to prevent the I/O performance of the storage service from being degraded. -
FIG. 12 is a flowchart that shows a method for providing storage according to an embodiment of the present invention. - Referring to
FIG. 12 , in the method for providing storage according to an embodiment of the present invention, first, data may be accessed at step S410. - That is, in order to provide a user with the storage service of
integrated storage 20, data may be accessed at step S410. - Here, the
integrated storage 20 may includenon-cloud storage 22 and at least onecloud storage unit 21. - The
non-cloud storage 22 may be on-premises storage. - In the method for providing storage according to an embodiment of the present invention, a single storage view may be provided at step S420.
- That is, at step S420, a virtual disk pool of the
integrated storage 20 is created, whereby a single storage view may be provided using at least one virtual disk. - Here, at step S420, the
integrated storage 20 may be provided as virtual data storage regardless of where data is actually stored. - Here, at step S420, an interface for using the virtual data storage as a single virtual storage unit may be provided to the user.
- Here, at step S420, information about the configuration of the single virtual storage unit and interface management information may be provided to a user in response to a request from the user.
- Here, at step S420, an access mechanism through which a user may use the single virtual storage unit may be provided.
- Here, at step S420, registered information matching user requirements is provided, and the user requirements may include at least one of the capacity of storage, an access mechanism, and the storage type of the single virtual storage unit.
- Here, at step S420, a data distribution and encryption function may be provided such that the received data to be written is accessed always with the minimum overhead.
- Here, at step S420, the data may be distributed so as to be stored in the
integrated storage 20, including the on-premises storage and the cloud storage. - Also, in the method for providing storage according to an embodiment of the present invention, interfacing is performed at step S430.
- That is, at step S430, interfacing with the
integrated storage 20 may be performed using a connection daemon in the form of software. - Here, at step S430, an interface for storage (an object storage interface or a block storage interface), a backend connection daemon configured to interface with various types of storage, and a proxy interface for easy registration of multiple storage devices may be provided.
- Here, at step S430, a proxy interface may register a cloud service by detecting the storage area interface of the first daemon, which is connected with the
cloud storage 21, and of the second daemon, which is connected with thenon-cloud storage 22. - The backend storage proxy may register a service in such a way that the backend connection daemon, which stores an object storage interface daemon or a block storage interface driver therein, automatically detects the storage area interface.
- For connection with the
integrated storage 20, the backend connection daemon may be run through a virtual machine or a container, excluding a block device, whereby the connection with object storage may be made. - Here, at step S430, information about the connected storage may be output as storage in which a storage service may be registered.
- Here, at step S430, information for access by a user to a system may be managed, and a secure path for access for registration of a storage service may be provided.
- Here, at step S430, a single backend connection daemon may be created whenever a single storage device is connected, and the backend connection daemon may be connected with a proxy server. The proxy server may store and manage data of a user using a driver interface connected with a virtual disk pool through the
data manipulation unit 120. - Here, at step S430, the
integrated storage 20 is connected in order to store data therein, and the storage tiering information pertaining to the data may be provided. - Accordingly, the
storage provision apparatus 100 may create a single virtual disk in response to access by a registered service provider thereto, and the created virtual disk may be managed in the virtual disk pool. Here, using the individual virtual disk pool, a user may be provided with multiple storage services from the storage in which the storage services are registered. - Also, in the method for providing storage according to an embodiment of the present invention, a storage service may be provided at step S440.
- That is, at step S440, the provision of a storage service may be managed based on multi-tenant architecture by receiving registration of storage services from multiple service providers.
- Here, at step S440, an administrator may register
cloud storage 21 andnon-cloud storage 22 for providing a storage service in thestorage provision apparatus 100 and configure a new service using an administration GUI. - Here, at step S440, when a service provider signs up for the service and uploads and creates a file, a cloud account may be created, and the uploaded file may be stored in the
cloud storage 21 or thenon-cloud storage 22 at the discretion of the administrator. - Here, at step S440, the function of displaying, writing, modifying and deleting content of a cloud service registered in the
cloud storage 21 and thenon-cloud storage 22, which are integrated into theintegrated storage 20, may be provided using the administration GUI. - In the configuration of storage, the service of the
cloud storage 21 may be provided along with the basic configuration thereof, separately from thenon-cloud storage 22. - Here, at step S440, the individual functions of logical components may be configured as servers, virtual systems, or containers having a connection network by implementing modules or functions having the respective logical component functions.
- Here, at step S440, the storage service may be registered in a storage device that matches service registration information input by the service provider, among the storage devices included in the
integrated storage 20. - Here, at step S440, the storage service may be provided by configuring virtual storage in the storage in which the storage service is registered.
- Here, the storage service may be managed using a first path, which is a data path along which data is moved, and a second path, which is a control path for controlling data, in order to prevent I/O performance of the storage service from being degraded.
-
FIG. 13 is a block diagram that shows a computer system according to an embodiment of the present invention. - Referring to
FIG. 13 , theuser client device 10 and thestorage provision apparatus 100 according to an embodiment of the present invention may be implemented in acomputer system 1100 including a computer-readable recording medium. As shown inFIG. 13 , thecomputer system 1100 may include at least oneprocessor 1110,memory 1130, a userinterface input device 1140, a userinterface output device 1150, andstorage 1160, which communicate with each other via abus 1120. Also, thecomputer system 1100 may further include anetwork interface 1170 connected with anetwork 1180. Theprocessor 1110 may be a central processing unit or a semiconductor device for executing processing instructions stored in thememory 1130 or thestorage 1160. Thememory 1130 and thestorage 1160 may be various types of volatile or nonvolatile storage media. For example, the memory may includeROM 1131 orRAM 1132. - The present invention may improve the performance of read and write operations in integrated storage that combines cloud storage and on-premises storage.
- Also, the present invention may enable cloud storage and on-premises storage included in integrated storage to provide a data storage service with the same performance.
- Also, the present invention may enable data of a user to be moved based on the flexibility of a storage space and cost efficiencies.
- Also, the present invention may support various types of cloud storage services, such as Amazon S3, Microsoft Azure, and the like, thereby providing an integrated storage service that meets user requirements.
- Also, the present invention may enable data in cloud storage to be accessed at a speed close to the speed at which data in on-premises storage is accessed.
- Also, the present invention may provide a service interface through which a user may access cloud-integrated storage using various service protocols.
- Also, the present invention may provide various types of storage services, such as a storage service for storing conventional files or data blocks, a storage service for storing objects, which has recently come to be provided by cloud storage providers, and the like.
- Also, the present invention may guarantee secure data transfer between on-premises storage and cloud storage, thereby guaranteeing the confidentiality of user data.
- Also, the present invention may prevent data loss caused due to system errors.
- Also, the present invention may make it easy to construct a system by providing cloud-integrated storage in the form of an appliance in which storage hardware and software are integrated for user convenience.
- Also, the present invention may provide a multitenant function for simultaneously performing multiple cloud services.
- As described above, the apparatus and method for providing storage for providing a cloud service according to the present invention are not limitedly applied to the configurations and operations of the above-described embodiments, but all or some of the embodiments may be selectively combined and configured, so that the embodiments may be modified in various ways.
Claims (9)
Applications Claiming Priority (8)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2017-0109957 | 2017-08-30 | ||
KR20170109957 | 2017-08-30 | ||
KR10-2017-0137712 | 2017-10-23 | ||
KR20170137712 | 2017-10-23 | ||
KR10-2018-0054966 | 2018-05-14 | ||
KR1020180054951A KR102376152B1 (en) | 2017-08-30 | 2018-05-14 | Apparatus and method for providing storage for providing cloud services |
KR10-2018-0054951 | 2018-05-14 | ||
KR1020180054966A KR20190024613A (en) | 2017-08-30 | 2018-05-14 | Apparatus and method for providing storage for providing cloud services |
Publications (2)
Publication Number | Publication Date |
---|---|
US20190065061A1 true US20190065061A1 (en) | 2019-02-28 |
US10782880B2 US10782880B2 (en) | 2020-09-22 |
Family
ID=65436944
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US16/057,717 Active 2038-08-21 US10782880B2 (en) | 2017-08-30 | 2018-08-07 | Apparatus and method for providing storage for providing cloud services |
Country Status (1)
Country | Link |
---|---|
US (1) | US10782880B2 (en) |
Cited By (67)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190187908A1 (en) * | 2017-12-19 | 2019-06-20 | Robin Systems, Inc. | Encoding Tags For Metadata Entries In A Storage System |
US10423344B2 (en) | 2017-09-19 | 2019-09-24 | Robin Systems, Inc. | Storage scheme for a distributed storage system |
US10430105B2 (en) | 2017-09-13 | 2019-10-01 | Robin Systems, Inc. | Storage scheme for a distributed storage system |
US10430292B2 (en) | 2017-12-19 | 2019-10-01 | Robin Systems, Inc. | Snapshot deletion in a distributed storage system |
US10430110B2 (en) | 2017-12-19 | 2019-10-01 | Robin Systems, Inc. | Implementing a hybrid storage node in a distributed storage system |
US10452267B2 (en) | 2017-09-13 | 2019-10-22 | Robin Systems, Inc. | Storage scheme for a distributed storage system |
US10534549B2 (en) | 2017-09-19 | 2020-01-14 | Robin Systems, Inc. | Maintaining consistency among copies of a logical storage volume in a distributed storage system |
US10579276B2 (en) | 2017-09-13 | 2020-03-03 | Robin Systems, Inc. | Storage scheme for a distributed storage system |
US10579364B2 (en) | 2018-01-12 | 2020-03-03 | Robin Systems, Inc. | Upgrading bundled applications in a distributed computing system |
US10599622B2 (en) * | 2018-07-31 | 2020-03-24 | Robin Systems, Inc. | Implementing storage volumes over multiple tiers |
US10620871B1 (en) | 2018-11-15 | 2020-04-14 | Robin Systems, Inc. | Storage scheme for a distributed storage system |
US10628235B2 (en) | 2018-01-11 | 2020-04-21 | Robin Systems, Inc. | Accessing log files of a distributed computing system using a simulated file system |
US10642697B2 (en) | 2018-01-11 | 2020-05-05 | Robin Systems, Inc. | Implementing containers for a stateful application in a distributed computing system |
US10642694B2 (en) | 2018-01-12 | 2020-05-05 | Robin Systems, Inc. | Monitoring containers in a distributed computing system |
US10782887B2 (en) | 2017-11-08 | 2020-09-22 | Robin Systems, Inc. | Window-based prority tagging of IOPs in a distributed storage system |
US10817380B2 (en) | 2018-07-31 | 2020-10-27 | Robin Systems, Inc. | Implementing affinity and anti-affinity constraints in a bundled application |
US10831387B1 (en) | 2019-05-02 | 2020-11-10 | Robin Systems, Inc. | Snapshot reservations in a distributed storage system |
US10846001B2 (en) | 2017-11-08 | 2020-11-24 | Robin Systems, Inc. | Allocating storage requirements in a distributed storage system |
US10845997B2 (en) | 2018-01-12 | 2020-11-24 | Robin Systems, Inc. | Job manager for deploying a bundled application |
US10846137B2 (en) | 2018-01-12 | 2020-11-24 | Robin Systems, Inc. | Dynamic adjustment of application resources in a distributed computing system |
US10877684B2 (en) | 2019-05-15 | 2020-12-29 | Robin Systems, Inc. | Changing a distributed storage volume from non-replicated to replicated |
US10896102B2 (en) | 2018-01-11 | 2021-01-19 | Robin Systems, Inc. | Implementing secure communication in a distributed computing system |
US10908848B2 (en) | 2018-10-22 | 2021-02-02 | Robin Systems, Inc. | Automated management of bundled applications |
US10976938B2 (en) | 2018-07-30 | 2021-04-13 | Robin Systems, Inc. | Block map cache |
US11023328B2 (en) | 2018-07-30 | 2021-06-01 | Robin Systems, Inc. | Redo log for append only storage scheme |
US11036439B2 (en) | 2018-10-22 | 2021-06-15 | Robin Systems, Inc. | Automated management of bundled applications |
US11086725B2 (en) | 2019-03-25 | 2021-08-10 | Robin Systems, Inc. | Orchestration of heterogeneous multi-role applications |
US11099937B2 (en) | 2018-01-11 | 2021-08-24 | Robin Systems, Inc. | Implementing clone snapshots in a distributed storage system |
US11108638B1 (en) * | 2020-06-08 | 2021-08-31 | Robin Systems, Inc. | Health monitoring of automatically deployed and managed network pipelines |
US11113158B2 (en) | 2019-10-04 | 2021-09-07 | Robin Systems, Inc. | Rolling back kubernetes applications |
US11226847B2 (en) | 2019-08-29 | 2022-01-18 | Robin Systems, Inc. | Implementing an application manifest in a node-specific manner using an intent-based orchestrator |
US11249851B2 (en) | 2019-09-05 | 2022-02-15 | Robin Systems, Inc. | Creating snapshots of a storage volume in a distributed storage system |
US11256434B2 (en) | 2019-04-17 | 2022-02-22 | Robin Systems, Inc. | Data de-duplication |
US11271895B1 (en) | 2020-10-07 | 2022-03-08 | Robin Systems, Inc. | Implementing advanced networking capabilities using helm charts |
US11327686B2 (en) | 2019-09-30 | 2022-05-10 | Electronics And Telecommunications Research Institute | Apparatus and method for managing integrated storage supporting hierarchical structure |
US11347684B2 (en) | 2019-10-04 | 2022-05-31 | Robin Systems, Inc. | Rolling back KUBERNETES applications including custom resources |
US20220179718A1 (en) | 2020-12-09 | 2022-06-09 | Dell Products L.P. | Composable information handling systems in an open network using access control managers |
US11392363B2 (en) | 2018-01-11 | 2022-07-19 | Robin Systems, Inc. | Implementing application entrypoints with containers of a bundled application |
US11403188B2 (en) | 2019-12-04 | 2022-08-02 | Robin Systems, Inc. | Operation-level consistency points and rollback |
US11456914B2 (en) | 2020-10-07 | 2022-09-27 | Robin Systems, Inc. | Implementing affinity and anti-affinity with KUBERNETES |
US11514317B2 (en) * | 2020-03-25 | 2022-11-29 | EMC IP Holding Company LLC | Machine learning based resource availability prediction |
US11520650B2 (en) | 2019-09-05 | 2022-12-06 | Robin Systems, Inc. | Performing root cause analysis in a multi-role application |
US11528186B2 (en) | 2020-06-16 | 2022-12-13 | Robin Systems, Inc. | Automated initialization of bare metal servers |
US11556361B2 (en) | 2020-12-09 | 2023-01-17 | Robin Systems, Inc. | Monitoring and managing of complex multi-role applications |
US11582168B2 (en) | 2018-01-11 | 2023-02-14 | Robin Systems, Inc. | Fenced clone applications |
US11604595B2 (en) | 2020-12-09 | 2023-03-14 | Dell Products L.P. | Data mirroring and data migration between storage volumes using system control processors |
US11675625B2 (en) | 2020-12-09 | 2023-06-13 | Dell Products L.P. | Thin provisioning of resources using SCPS and a bidding system |
US11675916B2 (en) | 2021-01-28 | 2023-06-13 | Dell Products L.P. | Method and system for limiting data accessibility in composed systems |
US11675665B2 (en) | 2020-12-09 | 2023-06-13 | Dell Products L.P. | System and method for backup generation using composed systems |
US11687280B2 (en) * | 2021-01-28 | 2023-06-27 | Dell Products L.P. | Method and system for efficient servicing of storage access requests |
US11693703B2 (en) | 2020-12-09 | 2023-07-04 | Dell Products L.P. | Monitoring resource utilization via intercepting bare metal communications between resources |
US11704159B2 (en) | 2020-12-09 | 2023-07-18 | Dell Products L.P. | System and method for unified infrastructure architecture |
US11743188B2 (en) | 2020-10-01 | 2023-08-29 | Robin Systems, Inc. | Check-in monitoring for workflows |
US11740980B2 (en) | 2020-09-22 | 2023-08-29 | Robin Systems, Inc. | Managing snapshot metadata following backup |
US11750451B2 (en) | 2020-11-04 | 2023-09-05 | Robin Systems, Inc. | Batch manager for complex workflows |
US11748203B2 (en) | 2018-01-11 | 2023-09-05 | Robin Systems, Inc. | Multi-role application orchestration in a distributed storage system |
US11768612B2 (en) | 2021-01-28 | 2023-09-26 | Dell Products L.P. | System and method for distributed deduplication in a composed system |
US11797341B2 (en) | 2021-01-28 | 2023-10-24 | Dell Products L.P. | System and method for performing remediation action during operation analysis |
US11803485B2 (en) | 2021-03-11 | 2023-10-31 | International Business Machines Corporation | Microservice system with global context cache |
US11809912B2 (en) | 2020-12-09 | 2023-11-07 | Dell Products L.P. | System and method for allocating resources to perform workloads |
US11809911B2 (en) | 2020-12-09 | 2023-11-07 | Dell Products L.P. | Resuming workload execution in composed information handling system |
US11853782B2 (en) | 2020-12-09 | 2023-12-26 | Dell Products L.P. | Method and system for composing systems using resource sets |
US11928506B2 (en) | 2021-07-28 | 2024-03-12 | Dell Products L.P. | Managing composition service entities with complex networks |
US11928515B2 (en) | 2020-12-09 | 2024-03-12 | Dell Products L.P. | System and method for managing resource allocations in composed systems |
US11934875B2 (en) | 2020-12-09 | 2024-03-19 | Dell Products L.P. | Method and system for maintaining composed systems |
US11947697B2 (en) | 2021-07-22 | 2024-04-02 | Dell Products L.P. | Method and system to place resources in a known state to be used in a composed information handling system |
US11947489B2 (en) | 2017-09-05 | 2024-04-02 | Robin Systems, Inc. | Creating snapshots of a storage volume in a distributed storage system |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11303545B2 (en) * | 2019-09-06 | 2022-04-12 | Ebay Inc. | Rate-limiting based on cardinality computation |
US20230152992A1 (en) * | 2021-11-15 | 2023-05-18 | Vmware, Inc. | Force provisioning virtual objects in degraded stretched clusters |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130254326A1 (en) * | 2012-03-23 | 2013-09-26 | Egis Technology Inc. | Electronic device, cloud storage system for managing cloud storage spaces, method and tangible embodied computer readable medium thereof |
Family Cites Families (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9614924B2 (en) | 2008-12-22 | 2017-04-04 | Ctera Networks Ltd. | Storage device and method thereof for integrating network attached storage with cloud storage services |
US10783121B2 (en) | 2008-12-22 | 2020-09-22 | Ctera Networks, Ltd. | Techniques for optimizing data flows in hybrid cloud storage systems |
KR101626117B1 (en) | 2009-06-22 | 2016-05-31 | 삼성전자주식회사 | Client, brokerage sever and method for providing cloud storage |
KR101180288B1 (en) | 2010-05-11 | 2012-09-07 | 한국과학기술원 | Method for managing the read and write cache in the system comprising hybrid memory and ssd |
US8805951B1 (en) | 2011-02-08 | 2014-08-12 | Emc Corporation | Virtual machines and cloud storage caching for cloud computing applications |
CN104011691B (en) | 2011-12-29 | 2016-12-14 | 英特尔公司 | Non-volatile ram dish |
KR101212778B1 (en) | 2012-04-25 | 2012-12-18 | 정대영 | Cloud computing based smart office system and server for managing the same and method for managing the same |
CN103533006B (en) | 2012-07-06 | 2019-09-24 | 中兴通讯股份有限公司 | A kind of joint cloud disk client, server, system and joint cloud disk service method |
EP2706467A1 (en) | 2012-09-05 | 2014-03-12 | Awingu Nv | Method for accessing a content item in a cloud storage system, and a corresponding cloud broker, cloud cache agent and client application |
KR101839035B1 (en) | 2012-11-26 | 2018-03-19 | 한국전자통신연구원 | Apparatus for 3d reconstruction based on multiple gpus and method thereof |
US9268667B2 (en) | 2012-12-19 | 2016-02-23 | Dell Products, Lp | System and method to create a non-volatile bootable RAM disk |
US9274958B1 (en) | 2013-02-01 | 2016-03-01 | Parallels IP Holdings GmbH | System and method for cache management in systems that interface to cloud storage |
EP3143486A1 (en) | 2014-08-22 | 2017-03-22 | NEC Europe Ltd. | A method for storing of data within a cloud storage and a cloud storage system |
US9727470B1 (en) | 2014-09-30 | 2017-08-08 | EMC IP Holding Company LLC | Using a local cache to store, access and modify files tiered to cloud storage |
US10225245B2 (en) | 2014-11-18 | 2019-03-05 | Auth0, Inc. | Identity infrastructure as a service |
US9588901B2 (en) | 2015-03-27 | 2017-03-07 | Intel Corporation | Caching and tiering for cloud storage |
US9697376B2 (en) | 2015-04-01 | 2017-07-04 | Vmware, Inc. | Federated cloud storage system |
KR20170060675A (en) | 2015-11-24 | 2017-06-02 | 한국전자통신연구원 | Method for managing personal health records based on personal cloud and the apparatus thereof |
US10375032B2 (en) | 2016-01-06 | 2019-08-06 | Thomas Lorini | System and method for data segmentation and distribution across multiple cloud storage points |
US20170208052A1 (en) | 2016-01-19 | 2017-07-20 | Hope Bay Technologies, Inc | Hybrid cloud file system and cloud based storage system having such file system therein |
-
2018
- 2018-08-07 US US16/057,717 patent/US10782880B2/en active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130254326A1 (en) * | 2012-03-23 | 2013-09-26 | Egis Technology Inc. | Electronic device, cloud storage system for managing cloud storage spaces, method and tangible embodied computer readable medium thereof |
Cited By (69)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11947489B2 (en) | 2017-09-05 | 2024-04-02 | Robin Systems, Inc. | Creating snapshots of a storage volume in a distributed storage system |
US10579276B2 (en) | 2017-09-13 | 2020-03-03 | Robin Systems, Inc. | Storage scheme for a distributed storage system |
US10430105B2 (en) | 2017-09-13 | 2019-10-01 | Robin Systems, Inc. | Storage scheme for a distributed storage system |
US10452267B2 (en) | 2017-09-13 | 2019-10-22 | Robin Systems, Inc. | Storage scheme for a distributed storage system |
US10423344B2 (en) | 2017-09-19 | 2019-09-24 | Robin Systems, Inc. | Storage scheme for a distributed storage system |
US10534549B2 (en) | 2017-09-19 | 2020-01-14 | Robin Systems, Inc. | Maintaining consistency among copies of a logical storage volume in a distributed storage system |
US10846001B2 (en) | 2017-11-08 | 2020-11-24 | Robin Systems, Inc. | Allocating storage requirements in a distributed storage system |
US10782887B2 (en) | 2017-11-08 | 2020-09-22 | Robin Systems, Inc. | Window-based prority tagging of IOPs in a distributed storage system |
US10430110B2 (en) | 2017-12-19 | 2019-10-01 | Robin Systems, Inc. | Implementing a hybrid storage node in a distributed storage system |
US20190187908A1 (en) * | 2017-12-19 | 2019-06-20 | Robin Systems, Inc. | Encoding Tags For Metadata Entries In A Storage System |
US10452308B2 (en) * | 2017-12-19 | 2019-10-22 | Robin Systems, Inc. | Encoding tags for metadata entries in a storage system |
US10430292B2 (en) | 2017-12-19 | 2019-10-01 | Robin Systems, Inc. | Snapshot deletion in a distributed storage system |
US11392363B2 (en) | 2018-01-11 | 2022-07-19 | Robin Systems, Inc. | Implementing application entrypoints with containers of a bundled application |
US11582168B2 (en) | 2018-01-11 | 2023-02-14 | Robin Systems, Inc. | Fenced clone applications |
US10628235B2 (en) | 2018-01-11 | 2020-04-21 | Robin Systems, Inc. | Accessing log files of a distributed computing system using a simulated file system |
US10642697B2 (en) | 2018-01-11 | 2020-05-05 | Robin Systems, Inc. | Implementing containers for a stateful application in a distributed computing system |
US11748203B2 (en) | 2018-01-11 | 2023-09-05 | Robin Systems, Inc. | Multi-role application orchestration in a distributed storage system |
US10896102B2 (en) | 2018-01-11 | 2021-01-19 | Robin Systems, Inc. | Implementing secure communication in a distributed computing system |
US11099937B2 (en) | 2018-01-11 | 2021-08-24 | Robin Systems, Inc. | Implementing clone snapshots in a distributed storage system |
US10579364B2 (en) | 2018-01-12 | 2020-03-03 | Robin Systems, Inc. | Upgrading bundled applications in a distributed computing system |
US10845997B2 (en) | 2018-01-12 | 2020-11-24 | Robin Systems, Inc. | Job manager for deploying a bundled application |
US10846137B2 (en) | 2018-01-12 | 2020-11-24 | Robin Systems, Inc. | Dynamic adjustment of application resources in a distributed computing system |
US10642694B2 (en) | 2018-01-12 | 2020-05-05 | Robin Systems, Inc. | Monitoring containers in a distributed computing system |
US10976938B2 (en) | 2018-07-30 | 2021-04-13 | Robin Systems, Inc. | Block map cache |
US11023328B2 (en) | 2018-07-30 | 2021-06-01 | Robin Systems, Inc. | Redo log for append only storage scheme |
US10599622B2 (en) * | 2018-07-31 | 2020-03-24 | Robin Systems, Inc. | Implementing storage volumes over multiple tiers |
US10817380B2 (en) | 2018-07-31 | 2020-10-27 | Robin Systems, Inc. | Implementing affinity and anti-affinity constraints in a bundled application |
US10908848B2 (en) | 2018-10-22 | 2021-02-02 | Robin Systems, Inc. | Automated management of bundled applications |
US11036439B2 (en) | 2018-10-22 | 2021-06-15 | Robin Systems, Inc. | Automated management of bundled applications |
US10620871B1 (en) | 2018-11-15 | 2020-04-14 | Robin Systems, Inc. | Storage scheme for a distributed storage system |
US11086725B2 (en) | 2019-03-25 | 2021-08-10 | Robin Systems, Inc. | Orchestration of heterogeneous multi-role applications |
US11256434B2 (en) | 2019-04-17 | 2022-02-22 | Robin Systems, Inc. | Data de-duplication |
US10831387B1 (en) | 2019-05-02 | 2020-11-10 | Robin Systems, Inc. | Snapshot reservations in a distributed storage system |
US10877684B2 (en) | 2019-05-15 | 2020-12-29 | Robin Systems, Inc. | Changing a distributed storage volume from non-replicated to replicated |
US11226847B2 (en) | 2019-08-29 | 2022-01-18 | Robin Systems, Inc. | Implementing an application manifest in a node-specific manner using an intent-based orchestrator |
US11249851B2 (en) | 2019-09-05 | 2022-02-15 | Robin Systems, Inc. | Creating snapshots of a storage volume in a distributed storage system |
US11520650B2 (en) | 2019-09-05 | 2022-12-06 | Robin Systems, Inc. | Performing root cause analysis in a multi-role application |
US11327686B2 (en) | 2019-09-30 | 2022-05-10 | Electronics And Telecommunications Research Institute | Apparatus and method for managing integrated storage supporting hierarchical structure |
US11347684B2 (en) | 2019-10-04 | 2022-05-31 | Robin Systems, Inc. | Rolling back KUBERNETES applications including custom resources |
US11113158B2 (en) | 2019-10-04 | 2021-09-07 | Robin Systems, Inc. | Rolling back kubernetes applications |
US11403188B2 (en) | 2019-12-04 | 2022-08-02 | Robin Systems, Inc. | Operation-level consistency points and rollback |
US11514317B2 (en) * | 2020-03-25 | 2022-11-29 | EMC IP Holding Company LLC | Machine learning based resource availability prediction |
US11108638B1 (en) * | 2020-06-08 | 2021-08-31 | Robin Systems, Inc. | Health monitoring of automatically deployed and managed network pipelines |
US11528186B2 (en) | 2020-06-16 | 2022-12-13 | Robin Systems, Inc. | Automated initialization of bare metal servers |
US11740980B2 (en) | 2020-09-22 | 2023-08-29 | Robin Systems, Inc. | Managing snapshot metadata following backup |
US11743188B2 (en) | 2020-10-01 | 2023-08-29 | Robin Systems, Inc. | Check-in monitoring for workflows |
US11456914B2 (en) | 2020-10-07 | 2022-09-27 | Robin Systems, Inc. | Implementing affinity and anti-affinity with KUBERNETES |
US11271895B1 (en) | 2020-10-07 | 2022-03-08 | Robin Systems, Inc. | Implementing advanced networking capabilities using helm charts |
US11750451B2 (en) | 2020-11-04 | 2023-09-05 | Robin Systems, Inc. | Batch manager for complex workflows |
US11698821B2 (en) | 2020-12-09 | 2023-07-11 | Dell Products L.P. | Composable information handling systems in an open network using access control managers |
US11809911B2 (en) | 2020-12-09 | 2023-11-07 | Dell Products L.P. | Resuming workload execution in composed information handling system |
US11693703B2 (en) | 2020-12-09 | 2023-07-04 | Dell Products L.P. | Monitoring resource utilization via intercepting bare metal communications between resources |
US20220179718A1 (en) | 2020-12-09 | 2022-06-09 | Dell Products L.P. | Composable information handling systems in an open network using access control managers |
US11704159B2 (en) | 2020-12-09 | 2023-07-18 | Dell Products L.P. | System and method for unified infrastructure architecture |
US11675665B2 (en) | 2020-12-09 | 2023-06-13 | Dell Products L.P. | System and method for backup generation using composed systems |
US11556361B2 (en) | 2020-12-09 | 2023-01-17 | Robin Systems, Inc. | Monitoring and managing of complex multi-role applications |
US11675625B2 (en) | 2020-12-09 | 2023-06-13 | Dell Products L.P. | Thin provisioning of resources using SCPS and a bidding system |
US11604595B2 (en) | 2020-12-09 | 2023-03-14 | Dell Products L.P. | Data mirroring and data migration between storage volumes using system control processors |
US11934875B2 (en) | 2020-12-09 | 2024-03-19 | Dell Products L.P. | Method and system for maintaining composed systems |
US11928515B2 (en) | 2020-12-09 | 2024-03-12 | Dell Products L.P. | System and method for managing resource allocations in composed systems |
US11853782B2 (en) | 2020-12-09 | 2023-12-26 | Dell Products L.P. | Method and system for composing systems using resource sets |
US11809912B2 (en) | 2020-12-09 | 2023-11-07 | Dell Products L.P. | System and method for allocating resources to perform workloads |
US11687280B2 (en) * | 2021-01-28 | 2023-06-27 | Dell Products L.P. | Method and system for efficient servicing of storage access requests |
US11797341B2 (en) | 2021-01-28 | 2023-10-24 | Dell Products L.P. | System and method for performing remediation action during operation analysis |
US11768612B2 (en) | 2021-01-28 | 2023-09-26 | Dell Products L.P. | System and method for distributed deduplication in a composed system |
US11675916B2 (en) | 2021-01-28 | 2023-06-13 | Dell Products L.P. | Method and system for limiting data accessibility in composed systems |
US11803485B2 (en) | 2021-03-11 | 2023-10-31 | International Business Machines Corporation | Microservice system with global context cache |
US11947697B2 (en) | 2021-07-22 | 2024-04-02 | Dell Products L.P. | Method and system to place resources in a known state to be used in a composed information handling system |
US11928506B2 (en) | 2021-07-28 | 2024-03-12 | Dell Products L.P. | Managing composition service entities with complex networks |
Also Published As
Publication number | Publication date |
---|---|
US10782880B2 (en) | 2020-09-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10782880B2 (en) | Apparatus and method for providing storage for providing cloud services | |
US11200332B2 (en) | Passive distribution of encryption keys for distributed data stores | |
US10929428B1 (en) | Adaptive database replication for database copies | |
US10387673B2 (en) | Fully managed account level blob data encryption in a distributed storage environment | |
US20230086414A1 (en) | Elastic, ephemeral in-line deduplication service | |
US8769269B2 (en) | Cloud data management | |
US10659225B2 (en) | Encrypting existing live unencrypted data using age-based garbage collection | |
KR102288503B1 (en) | Apparatus and method for managing integrated storage | |
US10783121B2 (en) | Techniques for optimizing data flows in hybrid cloud storage systems | |
US11327686B2 (en) | Apparatus and method for managing integrated storage supporting hierarchical structure | |
US11797491B2 (en) | Inofile management and access control list file handle parity | |
US11907261B2 (en) | Timestamp consistency for synchronous replication | |
US20210365187A1 (en) | Freeing and utilizing unused inodes | |
US8612495B2 (en) | Computer and data management method by the computer | |
US11614901B2 (en) | Apparatus and method for processing sensitive data | |
US10831714B2 (en) | Consistent hashing configurations supporting multi-site replication | |
KR102376152B1 (en) | Apparatus and method for providing storage for providing cloud services | |
KR20200099065A (en) | Apparatus and method for processing sensitive data | |
US20190121899A1 (en) | Apparatus and method for managing integrated storage | |
US20140188952A1 (en) | Reading data without an indirection logical reference identifier in a system that uses indirection access | |
WO2014077451A1 (en) | Network distributed file system and method using iscsi storage system | |
KR20210038285A (en) | Apparatus and method for managing integrated storage supporting hierachical structure | |
US8356016B1 (en) | Forwarding filesystem-level information to a storage management system | |
US11966370B1 (en) | Pseudo-local multi-service enabled file systems using a locally-addressable secure compute layer |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
FEPP | Fee payment procedure |
Free format text: ENTITY STATUS SET TO UNDISCOUNTED (ORIGINAL EVENT CODE: BIG.); ENTITY STATUS OF PATENT OWNER: SMALL ENTITY |
|
AS | Assignment |
Owner name: ELECTRONICS AND TELECOMMUNICATIONS RESEARCH INSTIT Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:KIM, DAE-WON;KIM, SUN-WOOK;KIM, SEONG-WOON;AND OTHERS;REEL/FRAME:046583/0657 Effective date: 20180730 Owner name: ELECTRONICS AND TELECOMMUNICATIONS RESEARCH INSTITUTE, KOREA, REPUBLIC OF Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:KIM, DAE-WON;KIM, SUN-WOOK;KIM, SEONG-WOON;AND OTHERS;REEL/FRAME:046583/0657 Effective date: 20180730 |
|
FEPP | Fee payment procedure |
Free format text: ENTITY STATUS SET TO SMALL (ORIGINAL EVENT CODE: SMAL); ENTITY STATUS OF PATENT OWNER: SMALL ENTITY |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: NON FINAL ACTION MAILED |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: RESPONSE TO NON-FINAL OFFICE ACTION ENTERED AND FORWARDED TO EXAMINER |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: PUBLICATIONS -- ISSUE FEE PAYMENT VERIFIED |
|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
MAFP | Maintenance fee payment |
Free format text: PAYMENT OF MAINTENANCE FEE, 4TH YR, SMALL ENTITY (ORIGINAL EVENT CODE: M2551); ENTITY STATUS OF PATENT OWNER: SMALL ENTITY Year of fee payment: 4 |