1 00:00:00,980 --> 00:00:04,340 So, now let's talk about Amazon S3 versioning. 2 00:00:04,340 --> 00:00:06,687 So your files in Amazon S3 can be versioned, 3 00:00:06,687 --> 00:00:10,440 but it has to be enable first at the bucket level. 4 00:00:10,440 --> 00:00:11,784 So we'll do this in the hands on. 5 00:00:11,784 --> 00:00:15,430 So that means that if you re upload a file version 6 00:00:15,430 --> 00:00:16,808 with the same key, 7 00:00:16,808 --> 00:00:19,028 then it will overwrite it, 8 00:00:19,028 --> 00:00:20,450 but it won't overwrite it, 9 00:00:20,450 --> 00:00:23,520 actually it will create a new version of that file. 10 00:00:23,520 --> 00:00:26,030 So instead of overwriting the file that already exists, 11 00:00:26,030 --> 00:00:27,580 it will create a new file version 12 00:00:27,580 --> 00:00:29,180 and I'm simplifying it here, 13 00:00:29,180 --> 00:00:30,230 but it will be version one, 14 00:00:30,230 --> 00:00:31,220 then version two, 15 00:00:31,220 --> 00:00:32,210 then version three, 16 00:00:32,210 --> 00:00:33,640 et cetera, et cetera. 17 00:00:33,640 --> 00:00:36,532 So, it is best practice to version your buckets 18 00:00:36,532 --> 00:00:39,180 in Amazon S3 in order to be able to 19 00:00:39,180 --> 00:00:41,240 have all the file versions for a while, 20 00:00:41,240 --> 00:00:44,060 because you can get protected against unintended deletes 21 00:00:44,060 --> 00:00:47,270 because you're able to restore a previous version. 22 00:00:47,270 --> 00:00:48,960 And also, you can easily rollback 23 00:00:48,960 --> 00:00:51,120 to any previous versions you wanted. 24 00:00:51,120 --> 00:00:52,994 So, you need to know a few things though. 25 00:00:52,994 --> 00:00:55,940 Any file that is not versioned prior to enabling 26 00:00:55,940 --> 00:00:58,400 versioning will have the version null. 27 00:00:58,400 --> 00:01:01,410 And if you suspend versioning in your bucket, 28 00:01:01,410 --> 00:01:03,570 it does not delete the previous versions, 29 00:01:03,570 --> 00:01:05,129 it will just make sure that the future files 30 00:01:05,129 --> 00:01:07,220 do not have a version assigned to it. 31 00:01:07,220 --> 00:01:09,633 So lets go in the hands on and see how that works.