SAP-C02 Amazon AWS Certified Solutions Architect Professional – New Domain 5 – Continuous Improvement for Existing Solutions part 4
- Understanding ElasticTranscoder
Hey everyone, and welcome back to the Knowledge full video series. And in today’s lecture we’ll be looking into the Elastic transcoder service. So this is typically quite a recent AWS service which is launched and it is quite important for us to understand about elastic transcoder as well as the exams are concerned. So let’s go ahead and understand more about what it is. So AWS elastics transcoder is a media transcoding platform on the cloud. So in a very simple term, it basically is a service which allows us to convert media files from their source format to a different destination format. So I’ll give you one of the quite real world scenarios. I would say long, long time back. So there was a phone call as Motor l Nine. So I used to have this phone around eleven years back and you see it has quite a small display.
So eleven years back there were phones which had smaller displays and whenever you try to play a video in these kind of phones, the videos would not play because of the resolution related issue. So what I used to do is I used to convert the videos to a smaller resolution so that I could play them on my phone. So let me show you, there was a very nice, in fact there is a nice tool called Aloof video converter and I downloaded the trial version just to show you guys. So what really happens is let me quickly add a file. So I have an astronomy video and basically it is showing me the resolution. And what I can do is I can convert this specific video file into different formats depending upon the media device where I am going to play this video at.
So I can convert it to Apple based, to Sony base, to BlackBerry mobile phone devices and many more. Along with that, you can do a lot of things like you can adjust the video quality, you can adjust the audio quality as well as you can look into the aspect ratio as well as the frame rate. So basically, this is a video converter which allows you to transcode a video file from one format to another. So elastic transcoder is a very similar service which allows us to do that. Now, one of the difference between the Aloof video converter and the elastic transcriptor service is that this follows the cloud principles. So you have to pay only for what you use. Let’s assume that I just have one video which I want to convert from format A to format B. If I go through a media converter, then I actually have to buy a license instead of that.
What I can do is I can use elastic transcoder and I can just pay for the amount of time it takes for the video to get transcoded. And this is one of the very simple solutions that can be achieved. So when you talk about elastic transcoder, we have already discussed that it allows us to convert the media files from a source format to a destination format. So there are certain transcoder terminology that we need to understand for the exams as well as for the real world scenarios. The very first thing that we generally do is we create a pipeline where we put the details related to the input and the output s three bucket. So generally when we use the alloc video converter, you see there is an option called as add files and then we add whatever video files that we have.
Now, similarly, in elastic transcoder, what we can do is we can upload our video files in a s three bucket and we have to define that input s three bucket from which the elastic transcoder will fetch the video file from. And we also have to put the output s three bucket where the outputted video file will be stored, which means the converted video file will be stored. So, this configuration is generally done in the pipeline phase. So once we have configured the input and the output s three bucket. Now it is important for us to put various aspects like let me just show you with the Aloe video terminology itself. So, the very first thing that we do here is we define the video file. So once we define the video file, next thing that we need to do is we can adjust based on video quality, audio quality, we can change the format of the video file which needs to be converted.
Now, similarly, once we have specified the input and the output essay bucket, next job is to specify to which format we need to convert the video into. And this is specified in the job section. And once the job is created, the last thing is we execute the job that does the processing. So, this is a nice diagram from the AWS documentation. All credit goes to the documentation. So if you see on the left hand side, first thing we do is we specify the input s three bucket. The second point is we specify the output s three bucket. Then this creates the pipeline. So once this pipeline gets created, we create a job which basically specifies the output format for the video to be converted.
Once we specify the job, we execute it and the video gets converted. So this is about the theoretical part. Let me just quickly show you before we go ahead and implement all of these steps. So I’ll go to the elastic transcoder, let me go to the elastic transcoder and within this, you see I have one pipeline which is created. So you have pipeline and then you have jobs. So within this pipeline, let me click on Edit. Within this pipeline you will see that first thing that we are doing is we are configuring the input bucket. So this input s three bucket is where the video file is. So if I just quickly go to the s three. So you see, the input bucket name is video hyphen s three bucket.
Let me go here. And this contains a video file which we want to convert. So this is the input s three bucket. Then what we do is we also specify the output s three buckets. So this is where the output hyphen KP lab. So this is the output s three bucket which is configured and we can also specify the buckets where thumbnail related data is stored. So this is as far as the pipeline is concerned, which is the first step. So in this step we specify mainly the input and the output s three bucket. Once we do that, once we specify the input and the output s three bucket, the next part is the creation of a job. Now, I already have a job which is created. So let me just show you that job.
So this is the job which is created. So if I click on Edit, it basically tells you what exactly had happened. So within the input, you see there is an OpenVPN MP4, which is this specific file. And we converted that OpenVPN MP4 which had this specific resolution of 1364 x 768 into a specific output format which is HLS two MB. And the output resolution is one zero twenty four x five hundred and seventy six. And now you see the new file size is 97. 7 MB. So what we basically did in this job is we converted this OpenVPN MP4 file from a specific format to a destination format based on HLS. So we had already seen that this specific pipeline had the output bucket as output kplabs.
So if I just go to output hyphen kplabs, you see this is the converted file. So OpenVPN MP4 got converted into a destination HLS based output media files. So this is what elastic transcoder can actually do. Now, elastic transcoder actually supports a lot of formats for converting various files. So you see there are a lot of formats which are available. So you can even do a jiff. You can have a flash video. If I go down, you have one thousand and eighty P, seven hundred and twenty P, three hundred and sixty p HLS and many more. So these are all the formats, or I would say the output formats that elastic transcoder will allow us to convert to. So this is it about elastic transcoder. I hope you understood the basic idea on what elastic transcoder service is all about.
- Implementing first transcoding job with Elastic Transcoder
Hey everyone and welcome back to the Knowledgeable Video series. Now in the earlier lecture we discussed the basics about what elastic transporter is all about. And in today’s lecture we will look into the practical aspects and we’ll create our first elastic transporter job. So the very first thing that you will see when you go to the transcoder service is similar to so the very first thing that you need to do is you have to create a new pipeline. So let me give it a pipeline name. I’ll say KP. Labs. Hyphen. Transcoder. Now the next option is the input bucket. So in elastic transcoder you have to upload a video to a specific s three bucket. So let me just show you. I have a video which is uploaded in video hyphen s three hyphen bucket.
So this is the bucket name where I have a video called as OpenVPN MP4 and I want to convert this specific video into a new format. So this is my requirement. So since this video is part of the video hyphen s three bucket. In the input bucket section, I will be putting the video hyphen s three bucket. Now the next part is the IAM role. So since the video is stored in the s three bucket and s three bucket might be private, you need to configure the IAM role. So this im role will allow the elastic transcoder pipeline to access the videos file which is present over here. It also allows to put. So if you look into the policy, there are various policy. One is s three hyphen get. So this allows the transcoder to fetch the video file. There is also s three put. So we can put the converted video file to a destination s three bucket.
So this is what I am rule is all about. So in the next screen you see you have to configure the output bucket. So once you give a video file to the transcoder, you also have to put the bucket name where the transcoder will put the converted video. So since I have the OpenVPN MP4 which will be converted and that converted video file will be stored to a destination S three bucket. So for the destination s three bucket, let me just select output hyphen kplabs. So let’s just quickly see what is present over here. So this is output hyphen kplabs. So this is where the destination converted video will be stored. Now you also have to give the thumbnail bucket. So thumbnail is basically the image of a specific video. So just select a thumbnail.
Let me just select output hyphen kplabs for here the storage class I’ll select standard and you can also have a notification. So once the video is converted, you can maybe receive an email or an SMS with that specific notification. So now we have configured the basic pipeline. I’ll go ahead and click on create pipeline. Perfect. So once the pipeline is created, the next thing that you need to do is you have to click on Create a New Job. So this is the second and the very important part. So within the Create a New Job, you have to define the pipeline name, which is Kplab’s transcoder Demo. Now, within the input key, you have to specify because there can be a possibility that this bucket can have multiple video files. So which video file that you want to convert is up to you.
So that configuration you specify within the input key. So since I have only one video, I’ll select that over here, OpenVPN MP4. So once this is configured, now the most important part is to which video format we want to convert it into. So these are the various video formats that Elastic Transcoder is currently supporting. So let me do one thing. Let me convert it to four ATP. So I’ll convert it this specific OpenVPN NP four to a four ATP page video and you can just click on Create a New Job Oops. You have to specify the output key as well. So let me just say OVPN MP4. Perfect. So I’ll just Create a New Job, and this is the job which is created. Now, within this you will be able to see that the input is OpenVPN MP4 and output preset is generic four at AP four.
So this is the format which will be converted. So once you have completed this, let’s go back. So once you have completed this, if you go into the job, click on the job which is Kplab’s transcoder demo, click on Search and this will basically give you the status of progressing. So it takes some amount of time for the video file to be converted. Let’s do one thing. I’ll just pause the video and I’ll resume it once the status is completed. Perfect. So it took around a minute for the status to get completed. So if I just click on the job now, you will see it will actually give you a lot of detailed information related to the input resolution, which was 1364 x 768, and the output resolution which is 640 x 360, along with the earlier file size as well as the destination file size.
So since this specific file was supposed to be in the output hyphen KP latch, let me just click on this bucket. And now you see you have the OVPN MP4 file which got converted by the elastic transcoder. So this is what Elastic transcoder is all about. Now, again, since this is the AWS service, it can be integrated with the API. So in online there are various service which allows like online services which allows you to upload your video file, it will transcode it and it will show you the output video file. So all of those things can be done with the help of Elastic Transcoder and its supported APIs. So this is it. About this lecture, I hope this has been informative for you and I’ll really encourage you to try this out. Quite interesting and simple to use. So this is it. I hope this has been informative and I look forward to seeing you in the next lecture.
- S3 Transfer Acceleration
Hey everyone and welcome back. In today’s video, we will be discussing about the s three transfer acceleration. Now the s three transfer acceleration basically utilizes the cloud front edge network to accelerate your uploads that you make towards your s three buckets. Now, instead of uploading directly to s three, you can use a unique URL to directly upload to the edge location, which will then transfer the file to s three. So let’s understand this in an animated way so that it becomes easier for us to grasp. So let’s say that you have s three bucket over here and you have multiple users which are across different continents. So either they might be putting things to the s three bucket or they might be fetching it.
So let’s assume that if they are uploading certain files to your s three bucket, they have to upload it across the continent and there might be a lot of latencies which would be involved if you’re uploading across the continents or if your remote users are quite far from where your infrastructure is. So in the way of s three transfer acceleration, what really happens is that you have edge location across various countries and now users are present. Now instead of users uploading the data directly to the s three bucket, what they can do is they can put it to the nearest edge location which is present. Now, edge location will in turn upload the data to the s three bucket. Now internally, AWS has a very strong backbone network and they have optimized network in such a way that the data transfer from the edge location to the s three bucket will typically be much more faster.
So in this way of s three transfer acceleration, it becomes much more easier because all the user has to do is they will send it to the edge location. Edge location are near to the user, so the amount of latency will reduce and then edge location will take care of fetching or putting data to the s three bucket. So this is what s three transfer acceleration is all about. So let’s understand this in a practical manner so that it really makes sense. Now I’m in my AWS management console and we’ll go to the s three bucket. So there are a lot of buckets right now. Each one is used for a specific demo within our courses. So what we’ll do is we’ll create a bucket called as Kplabs transfer acceleration and let’s create it in North Virginia. All right, North Virginia, sounds good.
So this is the name of bucket. I’ll go ahead and I’ll do a create. So once the bucket is created, let’s quickly do a search on that. I’ll say creepy. Labs. Transfer. Acceleration. I’ll click here and we’ll go to Properties. Now within Properties, if you go a bit down within the advanced settings, there is an option for transfer acceleration. So let’s click here and we’ll go ahead and we’ll enable the transfer acceleration and you can also do a comparison on the data transfer speed by region. So if you just click here, it will basically give you on how much speed difference you might typically see if the data is transferred across various regions. So it might happen right? The user might be present in different countries. So it will basically give you an overview about what is the speed difference that you might get when it comes to the estate transfer acceleration versus the direct uploads.
So this will take little amount of time to complete. Meanwhile, let’s do one thing. Let’s go ahead and enable the S three transfer acceleration. So once you have clicked on Enable, you can click on Save. Perfect. So once you have saved it, you see you have received a unique endpoint which is kplabs hyphen transfer hyphenacceleration s three accelerate Amazona. com. So let’s do one thing. Let’s upload a sample picture to our S three bucket in order to see how it might work in a high level overview. So I have uploaded a photo, zero, one, dot jpg and I’ll do a upload. Great. So our photo is now uploaded. So what we’ll do is let’s quickly make this picture as public. So I’ll do a make public and I’ll do a save and it seems that there is an error. Let’s look into it. It says as access denied. Interesting.
And I suspect that this is something to do with one of the new feature which AWS has released related to S Three. Anyways, we’ll be discussing this in a relevant section if this starts to come for the exams. But for the time being I’ll do a save. Let me type confirm. So basically it blocks the objects for being public. This is actually a good feature that AWS has launched. Let’s try it out once again. I’ll make it as public. I’ll do a make public. Perfect. So now you have a success over here. So our photo is now public. So let’s do one thing. Let’s copy the link associated with this picture. I’ll copy this up and let’s do a quick curl on this. If I quickly paste the URL, you would typically see the Http response headers in case we have a dedicated course on NGINX which explains each one of these in detail. But for the time being, we are more interested in this server part.
So now it says the server which basically responded is the Amazon S three. Now, typically if you put this URL, let me copy it again. Let me put it here. You’ll typically see the photo within the browser. So this is the ATR that I recently was traveling in. Now this is basically through S three. We are still going through the S Three. So that means if the S three path like I am sitting in say, India, and the S Three bucket is in North Virginia, so there will always be that latency which would be involved. So we had enabled transfer acceleration. So ideally we should make use of transfer acceleration here. So in order to do that, let’s quickly go to the properties or we would have to go to the bucket properties, not the object properties. And within the transfer acceleration, we already got a unique URL over here.
Let’s copy this unique URL and this time if you do a cold request, the only thing that you need to do is you have to change this specific path. I’ll paste the new path and I’ll press Enter and this time the server is still s three. But if you see the X cache is missed from Cloud Front, that means there is a Cloud Front edge location which is involved over here. You also have the Cloud Front ID associated with this specific request. So in case if you put the same link in the browser, let me just copy it once more and if I paste it here, typically you will see the same image. However, this time the image came from the Cloud Front and not directly from the stage. Now definitely first time it will always be a miss and a second time when you query it’s would be the hit. If the edge location has been caching it.