TheDeveloperBlog.com

Home | Contact Us

C-Sharp | Java | Python | Swift | GO | WPF | Ruby | Scala | F# | JavaScript | SQL | PHP | Angular | HTML

AWS | S3 Concepts

AWS | S3 Concepts with aws, tutorial, introduction, amazon web services, aws history, features of aws, aws global infrastructure, aws free tier, storage, database, network services, redshift, web services etc.

<< Back to AWS

Amazon S3 Concepts

Amazon S3 Concepts
  • Buckets
  • Objects
  • Keys
  • Regions
  • Data Consistency Model

  • Buckets
    • A bucket is a container used for storing the objects.
    • Every object is incorporated in a bucket.
    • For example, if the object named photos/tree.jpg is stored in the treeimage bucket, then it can be addressed by using the URL http://treeimage.s3.amazonaws.com/photos/tree.jpg.
    • A bucket has no limit to the amount of objects that it can store. No bucket can exist inside of other buckets.
    • S3 performance remains the same regardless of how many buckets have been created.
    • The AWS user that creates a bucket owns it, and no other AWS user cannot own it. Therefore, we can say that the ownership of a bucket is not transferrable.
    • The AWS account that creates a bucket can delete a bucket, but no other AWS user can delete the bucket.
  • Objects
    • Objects are the entities which are stored in an S3 bucket.
    • An object consists of object data and metadata where metadata is a set of name-value pair that describes the data.
    • An object consists of some default metadata such as date last modified, and standard HTTP metadata, such as Content type. Custom metadata can also be specified at the time of storing an object.
    • It is uniquely identified within a bucket by key and version ID.
  • Key
    • A key is a unique identifier for an object.
    • Every object in a bucket is associated with one key.
    • An object can be uniquely identified by using a combination of bucket name, the key, and optionally version ID.
    • For example, in the URL http://jtp.s3.amazonaws.com/2019-01-31/Amazons3.wsdl where "jtp" is the bucket name, and key is "2019-01-31/Amazons3.wsdl"
  • Regions
    • You can choose a geographical region in which you want to store the buckets that you have created.
    • A region is chosen in such a way that it optimizes the latency, minimize costs or address regulatory requirements.
    • Objects will not leave the region unless you explicitly transfer the objects to another region.
  • Data Consistency Model
    Amazon S3 replicates the data to multiple servers to achieve high availability.
    Two types of model:
    • Read-after-write consistency for PUTS of new objects.
      • For a PUT request, S3 stores the data across multiple servers to achieve high availability.
      • A process stores an object to S3 and will be immediately available to read the object.
      • A process stores a new object to S3, it will immediately list the keys within the bucket.
      • It does not take time for propagation, the changes are reflected immediately.
    • Eventual consistency for overwrite PUTS and DELETES
      • For PUTS and DELETES to objects, the changes are reflected eventually, and they are not available immediately.
      • If the process replaces an existing object with the new object, you try to read it immediately. Until the change is fully propagated, the S3 might return prior data.
      • If the process deletes an existing object, immediately try to read it. Until the change is fully propagated, the S3 might return the deleted data.
      • If the process deletes an existing object, immediately list all the keys within the bucket. Until the change is fully propagated, the S3 might return the list of the deleted key.

Next TopicCreating S3 Bucket




Related Links:


Related Links

Adjectives Ado Ai Android Angular Antonyms Apache Articles Asp Autocad Automata Aws Azure Basic Binary Bitcoin Blockchain C Cassandra Change Coa Computer Control Cpp Create Creating C-Sharp Cyber Daa Data Dbms Deletion Devops Difference Discrete Es6 Ethical Examples Features Firebase Flutter Fs Git Go Hbase History Hive Hiveql How Html Idioms Insertion Installing Ios Java Joomla Js Kafka Kali Laravel Logical Machine Matlab Matrix Mongodb Mysql One Opencv Oracle Ordering Os Pandas Php Pig Pl Postgresql Powershell Prepositions Program Python React Ruby Scala Selecting Selenium Sentence Seo Sharepoint Software Spellings Spotting Spring Sql Sqlite Sqoop Svn Swift Synonyms Talend Testng Types Uml Unity Vbnet Verbal Webdriver What Wpf