I am new to powerapps, Recently, I have created Canvas app in powerapp with Sharepoint as data source. Also we can create or design UI as per our requirement. But I am unsure when to use Model driven apps or what are there purpose. Can someone explain in what scenario shall I use model driven apps
A Model-drive PowerApp is a quick and easy way to generate a PowerApp, potentially without having to write any code. This is a great option if your data model is very well defined with business entities, fields, and relationships completed in the Common Data Service.
Unlike canvas app development where the designer has complete control over app layout, with model-driven apps much of the layout is determined for you and largely designated by the components you add to the app.
If you have not already invested the time and effort to build out your enterprise metadata in the Common Data Service, a model-driven app will certainly Not be the correct approach for you. If you anticipate multiple PowerApps being needed, both now and in the future, as well as PowerBI analytics, all being driven on a common set of business data, then it is worth the effort to define your Common Data Model for your enterprise, which will then greatly speed the process of generating new apps to meet business needs. If you are targeting an isolated use case in one specific SharePoint site, you will likely be able to build your PowerApp faster, and have more control over its development by sticking with a canvas app developed solution.
For more details on Model Driven Apps and the decision making process, see the following: