[Huawei Developers] John Wo:
[IMG="https://communityfile-dre.op.hicloud.com/FileServer/getFile/cmtybbs/024/539/114/0070090000024539114.20201001124935.72341882743546028491206445428760:50511022024446:2800:C515E6CED6754C74326F800FE79020DA8BDF50E5F715D603002B110FEA69B8BC.png"]https://communityfile-dre.op.hicloud.com/FileServer/getFile/cmtybbs/024/539/114/0070090000024539114.20201001124935.72341882743546028491206445428760:50511022024446:2800:C515E6CED6754C74326F800FE79020DA8BDF50E5F715D603002B110FEA69B8BC.png[/IMG]​

When mobile or web developers designing their applications from scratch, one of the most important thing is deciding what type of data storage to use beside database. The way to decide is to choose the one with optimum efficiency in the balance of cost and performance according to your application scenario. There are 3 types of Cloud Storage as File Storage, Block Storage and Object Storage. There are some points that separates each of these types. Today, my first aim will be introduce these different type of Cloud Storage, based on my research then it may help you to choose the most appropriate one. After then will develop a demo application using AGC Cloud Storage and explain the features that offers.

Agenda

▹ Brief introduction to Cloud Storage, What it offers?

▹ Types of Cloud Storage in base

File Storage

Block Storage

Object Storage

▹ Introduction of AGC Cloud Storage and demo application

▹ What is Cloud Storage and what it offers?

Cloud storage is the process of storing digital data in an online space that spans multiple servers and locations, and it is usually maintained by a hosting company.

It’s delivered on demand with just-in-time capacity and costs, and eliminates buying and managing your own data storage infrastructure. This gives you agility, global scale and durability, with “anytime, anywhere” data access. Cloud storage is purchased from a third party cloud vendor who owns and operates data storage capacity and delivers it over the Internet in a pay-as-you-go model. These cloud storage vendors manage capacity, security and durability to make data accessible to your applications all around the world.

▹ Types Of Cloud Storage

File Storage

File-based storage means, organizing data in a hierarchical, simple, and accessible platform. Data stored in files is organized and retrieved using a limited amount of metadata that tells the computer exactly where the file itself is kept. When you need access to data, your computer system needs to know the path to find it.

Actually we are using this type of storage mechanism for decades when we insert/update/delete a file in our computers. The data is stored in folders and sub-folders, forming a tree structure overall.

Limited amount of flash memory is aimed at serving frequently accessed data and metadata quickly. Caching mechanism is also a plus for File System but it can become complex to manage when capacity increases.

[IMG="https://communityfile-dre.op.hicloud.com/FileServer/getFile/cmtybbs/024/539/114/0070090000024539114.20201001125554.39445033910928997633768999076865:50511022024446:2800:BD0F5A1045B8A57EED01737D08B719F37FF43ECA4F738E08DDE6C783B0B78E61.png"]https://communityfile-dre.op.hicloud.com/FileServer/getFile/cmtybbs/024/539/114/0070090000024539114.20201001125554.39445033910928997633768999076865:50511022024446:2800:BD0F5A1045B8A57EED01737D08B719F37FF43ECA4F738E08DDE6C783B0B78E61.png[/IMG]​

Block Storage

Block storage chops data into blocks and stores them as separate pieces. Each block of data is given a unique identifier, which allows a storage system to place the smaller pieces of data wherever is most convenient. That means that some data can be stored in a Linux environment and some can be stored in a Windows unit.[https://www.redhat.com/en/topics/data-storage/file-block-object-storage]

Because block storage doesn’t rely on a single path to data — like file storage— it can be retrieved quickly. Each block lives on its own and can be partitioned so it can be accessed in a different operating system, which gives the user complete freedom to configure their data. It’s an efficient and reliable way to store data and is easy to use and manage.

Each partition runs a filesystem within it. In one sentence we can say that Block Storage is a type of Cloud Storage that data files divided into blocks.

This type of storage is very good for databases thanks to very high speed, virtual machines and more general for all those workloads that require low-latency.

Very high cost per giga-byte

[IMG="https://communityfile-dre.op.hicloud.com/FileServer/getFile/cmtybbs/024/539/114/0070090000024539114.20201001125815.75055445315580217582771325379562:50511022024446:2800:ED9C079DC135308F6F54F6BD73B4C6A60B46E08F20211A549535158146D3A744.png"]https://communityfile-dre.op.hicloud.com/FileServer/getFile/cmtybbs/024/539/114/0070090000024539114.20201001125815.75055445315580217582771325379562:50511022024446:2800:ED9C079DC135308F6F54F6BD73B4C6A60B46E08F20211A549535158146D3A744.png[/IMG]​

Object Storage

While the volume of data to be stored has grown continuously(exponentially) the limits of the file system have gradually appeared and this is where the need for Object storage is felt. Object-based storage is deployed to solve for unstructured data (videos, photos, audio, collaborative files, etc.). Contrary to File Storage, objects are stored in flat namespace and can be retrieved by searching metadata or knowing the unique key(ID).

Every object has 3 components;

ID (Unique Identifier)

Metadata(age, privacies/securities, etc.)

Data

[IMG="https://communityfile-dre.op.hicloud.com/FileServer/getFile/cmtybbs/024/539/114/0070090000024539114.20201001130118.39866119396745795760791663752014:50511022024446:2800:FD8B55C746EFE32C6CB789CB37067B229009000C8C66A26365DC20FE82F9C4AD.png"]https://communityfile-dre.op.hicloud.com/FileServer/getFile/cmtybbs/024/539/114/0070090000024539114.20201001130118.39866119396745795760791663752014:50511022024446:2800:FD8B55C746EFE32C6CB789CB37067B229009000C8C66A26365DC20FE82F9C4AD.png[/IMG]​

Object-based storage essentially bundles the data itself along with metadata tags and a unique identifier. Object storage requires a simple HTTP application programming interface (API), which is used by most clients in all languages.

It is good at storage of large sets unstructured data. However latency is not consistent at all.

Overall Summary

[IMG="https://communityfile-dre.op.hicloud.com/FileServer/getFile/cmtybbs/024/539/114/0070090000024539114.20201001130336.40843490210361101672189148426680:50511022024446:2800:CFCD8B217F4D38A6435ECA72D641E52B6B6F78C104D8CB762103FC11617FDC0F.png"]https://communityfile-dre.op.hicloud.com/FileServer/getFile/cmtybbs/024/539/114/0070090000024539114.20201001130336.40843490210361101672189148426680:50511022024446:2800:CFCD8B217F4D38A6435ECA72D641E52B6B6F78C104D8CB762103FC11617FDC0F.png[/IMG]

[IMG="https://communityfile-dre.op.hicloud.com/FileServer/getFile/cmtybbs/024/539/114/0070090000024539114.20201001130357.04818698342203646777393246441171:50511022024446:2800:2D35FB39A4222919AB08DAB647A15BBA444DA2233863A176262DF977F47AF51F.png"]https://communityfile-dre.op.hicloud.com/FileServer/getFile/cmtybbs/024/539/114/0070090000024539114.20201001130357.04818698342203646777393246441171:50511022024446:2800:2D35FB39A4222919AB08DAB647A15BBA444DA2233863A176262DF977F47AF51F.png[/IMG]​

▹ Introduction of AGC Cloud Storage and Demo Application

Currently, AGC Cloud Storage supports only File Storage model.

It is scalable and maintenance-free. Allows you to store high volumes of data such as images, audios, and videos generated by your users securely and economically with direct device access. Since AGC Cloud Storage is currently in beta version, you need to apply by sending email to agconnect@huawei.com. For more details please refer to guide whcih tells how to apply the service.

Apply for Cloud Storage

[IMG="https://communityfile-dre.op.hicloud.com/FileServer/getFile/cmtybbs/024/539/114/0070090000024539114.20201001130554.80762834958812538831563515767847:50511022024446:2800:C93219B5486C7C3109894D352112D5745AF680A4617325FB02A64488AE94FD80.png"]https://communityfile-dre.op.hicloud.com/FileServer/getFile/cmtybbs/024/539/114/0070090000024539114.20201001130554.80762834958812538831563515767847:50511022024446:2800:C93219B5486C7C3109894D352112D5745AF680A4617325FB02A64488AE94FD80.png[/IMG]

Basic Architecture Of AGC Cloud Storage​

There are 4 major features of AGC Cloud Storage Service. These are;

Stability

Reliability and Security

Auto-scaling

Cost Effectiveness

Stability: Cloud Storage offers stable file upload and download speeds, by using edge node, resumable transfer, and network acceleration technologies.

Reliability and Security: By working with AGC Auth Service and using the declarative security model, Cloud Storage ensures secure and convenient authentication and permission services.

Auto-scaling: When traffic surges, Cloud Storage can detect traffic changes in real time and quickly scale storage resources to maintain app services for Exabyte data storage.

Cost Effectiveness: Cloud Storage offers you to decrease your cost and saves your money. All developers get a free quota, and once that’s up, you’ll be charged for extra usage.

You can follow-up your usage and current quota from Cloud Storage window under your developer console as represented in below.

[IMG="https://communityfile-dre.op.hicloud.com/FileServer/getFile/cmtybbs/024/539/114/0070090000024539114.20201001130812.70305297015299157522735354991593:50511022024446:2800:96E7D2E97652E5C8AB4D22EEEDB9CCA693530B204A90A330E0FFACD70983DF6F.png"]https://communityfile-dre.op.hicloud.com/FileServer/getFile/cmtybbs/024/539/114/0070090000024539114.20201001130812.70305297015299157522735354991593:50511022024446:2800:96E7D2E97652E5C8AB4D22EEEDB9CCA693530B204A90A330E0FFACD70983DF6F.png[/IMG]​

For more information about this, you can visit https://forums.developer.huawei.com/forumPortal/en/topicview?tid=0201369414526420389&fid=0101187876626530001