Alibaba Object Storage Service
The course is part of this learning path
This course is an introduction to the fundamental aspects of Alibaba’s Object Storage Service (OSS). It starts off by explaining the features and advantages of the service, before moving on to the concepts of OSS and security. You will then watch two demos that use real-life examples from the Alibaba Cloud platform to guide you through storage buckets and object operations.
If you have any feedback about this course, please contact us at firstname.lastname@example.org.
- Become familiar with buckets, regions, objects, and object lifecycle management in OSS
- Understand the advantages and billing models of OSS products
- Learn about the management, use, and operation of OSS buckets and objects
- Those who are starting out on their journey into Alibaba Cloud and who want to learn more about OSS
- Security engineers who secure and safeguard data within Alibaba
- Beginners who want to get certified in Alibaba
To get the most from this course, you should already have some basic knowledge of cloud computing. If you would like to brush up on your cloud knowledge before taking this course, please consider taking our What is Cloud Computing? course.
Hello, in this session we will focus on the basic concepts of the Object Storage Service. The first thing we will look at is the concept buckets. A bucket is a container for objects stored in OSS. Every object that is uploaded must be placed into a bucket. All objects or files are directly related to their corresponding bucket. OSS lacks the hierarchical structure of directories and subdirectories as in a file system, its file system is flat.
A bucket can contain an unlimited number of objects, the bucket size is infinite. A bucket name must be globally unique within OSS. No two bucket names in the world can be the same. The naming conventions for buckets are as follows. Names can only contain lowercase letters, numbers and hyphens. The name must start and end with a lowercase letter or number and must be between three and 63 characters in length.
To access a bucket, an endpoint for the bucket is created automatically. An endpoint is the domain name used to access the bucket. OSS provides external services through HTTPS, HTTP, and RESTful APIs. Each region has its own dedicated endpoint. Access to a bucket through an intranet connection uses a different endpoint than when accessing the same bucket through the internet.
For example, shown here, these endpoints for the UK London region for intranet and internet are slightly different. The intranet endpoint, oss-eu-west-1-internal.aliyuncs.com is slightly different from the internet endpoint in as much as it has the hyphen internal as part of the address. To access the contents of a bucket once it is created, the endpoint address is used to navigate to the bucket but access control must also be set at the bucket level. This is achieved by setting the access control list or ACL.
There are three options to choose from: private, only the owner or authorized users of the bucket can read and write files in the bucket. Public read, only the owner or authorized users of this bucket can write files in the bucket, other users including anonymous users can only read files in the bucket. And public read/write. Any users including anonymous users can read and write files in the bucket. The access control lists settings can be changed after the bucket is created.
For billing purposes, a bucket must utilize a storage class. Storage classes control the cost of storage. There are currently four storage classes available. Standard, standard storage provides highly reliable, highly available and high performance object storage services that can handle frequent data access. This is the default selection when creating a bucket and supports local redundant storage and zone redundant storage for redundancy.
Infrequent access. Infrequent access storage is suitable for storing objects with long life cycles that do not need to be frequently accessed, an average of once or twice per month. IA storage offers a storage unit price lower than that of standard storage, and is suitable for long term backup of various mobile apps, smart device data and enterprise data. It also supports real time data access. Objects of the IA storage class have a minimum storage period. If you delete an object that has been stored for less than 30 days, you will be charged an early deletion fee. Additionally, retrieving data also incurs fees. For redundancy, infrequent access storage supports local redundant storage and zone redundant storage.
Archive. OSS archive storage is suitable for storing objects with long life cycles, at least half a year that are in frequently accessed. Data can be restored in about a minute and then read. This storage option is suitable for data such as archival data, medical images, scientific material, and video footage. Objects of the archive storage class have a minimum storage period. If you delete an object that has been stored for less than 60 days, you will be charged an early deletion fee. Additionally, retrieving data also incurs fees. For redundancy, archive storage only supports local redundant storage.
Cold archive. OSS Cold Archive storage is suitable for storing extremely cold data with ultra-long life cycles. Data can be restored but it depends on the retrieval level selected when cold archived. There are three data retrieval levels, expedited, where the object is restored within one hour, standard, where the object is restored within two to five hours, and bulk, where the object is restored within five to 11 hours. This storage option is suitable for data that must be retained for an extended period of time due to compliance requirements.
Objects of the cold archive storage class have a minimum storage period. If you delete an object that has been stored for less than 180 days, you will be charged an early deletion fee and additionally, retrieving data also incurs fees. For redundancy, cold archive storage only supports local redundant storage. At the time of this recording, May, 2020, cold archive is currently in preview. The following table shows a comparison of the different storage classes. Once a bucket is created, the name and the storage class cannot be modified.
Regions. A region represents the physical location of a data center. You can choose the region where OSS will store the buckets you create. You may choose a region to optimize latency, minimize costs, or address regulatory requirements. Generally, the closer the user is in proximity to a region, the faster the access speed is. All objects that are contained in a bucket are stored in the same region. A region is chosen when a bucket is created and cannot be changed once it's created.
Objects. Objects, also known as files are the fundamental entities stored in OSS. An object is composed of three elements, a key, its data and metadata. The key is the unique object's name, the data is the file content and metadata defines the attributes of an object, such as the time created and the object size. The lifecycle of an object starts when it is uploaded and ends when it's deleted. During the lifecycle of an object, its contents cannot be changed.
If you want to modify an object, you must upload a new object with the same name as the existing one to replace it. Therefore, unlike the file system, OSS does not allow users to modify objects directly. OSS provides an Append Upload function, which allows you to continually append data to the end of an object. There are some limitations to objects stored in OSS. The naming conventions for objects are as follows. The object's name must use UTF-8 encoding, the object's names must be between one and 1023 characters in length. The object's name cannot start with a backslash or a forward slash.
File size limitations depend on how the data was uploaded. Using Object mode, the file size cannot exceed five gigabytes, using Multipart mode, the file size cannot exceed 48.8 terabytes. You can upload or delete up to 100 objects at a time from the console. To upload or delete more than 100 objects at a time, you must call an API operation or use an SDK. When uploading a file to a bucket, the access control list that was set at the bucket level will be selected by default but this can be changed prior to upload and after the file is uploaded and once an object is deleted, it cannot be restored.
This concludes the session on OSS concepts. In the next session, we will cover security features.
David has been a trainer with QA for over 12 years and has been training cloud technologies since 2017. Currently certified in Microsoft and Alibaba cloud technologies David has previously been a system and Network administrator amongst other roles.
Currently, he is a Principle Technology Learning Specialist (Cloud) at QA. He loves nothing more than teaching cloud-based courses and also has a passion for teaching PowerShell scripting.
Outside of work, his main love is flying Radio control airplanes, and teaching people to fly them.