Welcome to this module on Oracle Functions. Functions is a serverless offering. You might wonder, what is serverless? Lets look into it. As you look at the journey on one axis, if you plot abstractions, and other axis, you plot this control and decreasing concern, it's a journey where you start with a bare metal machine, where you have the access to the full machine. Then there's virtual machines, where you take that big bare metal server and you divide it into smaller segments which could all be run independently of each other, so you have these VMs. Then there is a movement towards container. You took all the VMs were heavy, they took longer time to boot up, they lead to low resource utilization and lots of other issues. They were not portable, etc. So we took all that and then we created containers, where you have a container run-time. The containers share the OS kernel and they have a little bit weaker security isolation, but they have a good resource isolation in terms of CPU and memory. So they could drive your overall resource utilization, and at the same time, they are portable. So they're really help in DevOps adoption. You write once, you can deploy anywhere. That's why containers became really powerful. Then there is this journey towards Functions, where you really write your code in a particular run-time, and then you don't worry about servers, you don't worry about any of the infrastructure. You just provide the code and the Cloud Provider is responsible for executing that code. One of the greatest advantages here is it truly leads you to a consumption-based pricing model where you are only billed for the time your function is running, so you go from pay-as-you-go pricing to a completely consumption-based pricing. That's one of the reasons why Functions adoption is increasing day by day. Let's look at Oracle Functions and what are the key characteristics of this particular service. The first thing is it's function as a service. You write code and the code is executed. Some people also like to call it as event-driven architecture. Some kind of event happens when function is invoked. In reality, the Functions run inside a container. You are billed only for the duration the function runs, and it's capable of highly parallel execution. Now, one thing which is also relevant in Oracle's case is Oracle Functions is powered by the FN Project open source engine. Unlike some of the other Cloud vendors out there, this particular service builds on the open source FN engine. We talked about some of the things you see on the right-hand side. It's a truly consumption-based pricing model. The services are autonomous, it scales, it's capable of highly parallel execution , and it's event-driven. You invoke the function and the code runs based on that invocation. So how does it really work in reality? The process is really straightforward. Let me walk you through the process. At a high level, your uploaded code and configuration is packaged as a container image and stored in the OCI registry, then you set up trigger actions. You can invoke using CLI or API or OCI events can trigger it, and then Oracle Functions then executes the code in response to the trigger or invocation, which can then invoke any number of other integrations with other OCI Services or even external systems. The thing which makes it really interesting is it's a truly consumption-based pricing model. You pay for code execution time only. The other time when the function is just sitting there and not being called, you pay nothing for that. As I discussed, the functions have invocation. It can be triggered either directly or through something like an OCI events, and then it has integration to other OCI Services. This is a very simplified view and a lot of other details on how the service works. It's very powerful, a lot of advanced capabilities, given it's a foundational course, this helps you understand how Oracle Functions work and that's it, serverless. Next time somebody says serverless, remember, there are servers. They are running in the data center but you don't care. You give us your code and the code is executed. Even though it's called serverless, there are always servers running in the data center. I hope you found this lesson useful. Thanks for watching.