Objects are the basic entities that you store in Cloud Storage. You can store an infinite number of objects in a bucket, so essentially, there is no limit.
Objects consist of object data and object metadata. Object data is typically a file and is opaque (a chunk of data) to Cloud storage. Object metadata is a set of key-value pairs that describe the object.
An object name should be unique in a bucket; however, different buckets can have objects with the same name. An object's name is a piece of object metadata in Cloud Storage. Object names can contain any combination of Unicode characters (UTF-8 encoded) and must be less than 1024 bytes in length.
Your object names must meet the following requirements:
- Object names must not contain Carriage Return or Line Feed characters
- Object names must not start with well-known/acme-challenge
You can include a common character slash (/) in your object names if you want to make it appear as though they are stored in a hierarchical structure, for example, /team.
A common character to include in object names is a slash (/). By using slashes, you can make objects appear as though they're stored in a hierarchical structure. For example, you can name one object /team/alpha/report1.jpg and another object/team/alpha/report2.jpg. They appear to be in a hierarchical directory structure based on the team when you list these objects; however, for Cloud Storage, objects are individual pieces of data and not a hierarchical structure.
Apart from the name, each object has an associated number called Generation Number. Whenever your object gets overwritten, its generation number changes. Cloud storage also supports a feature called Object Versioning that allows you to refer to the overwritten or deleted objects. Once you have object versioning enabled for a bucket, it creates an archived version of the object that is overwritten or deleted and associates a unique generation number to uniquely identify an object.