There is many reason to use Master detail (MD) and also to use LookUp --
If you need RollUp summary then use MD
If you need cascade delete then use MD
If you want parent field required in child record then use MD
If you want only one Owner of both parent and Child then use MD. ( Because in MD child have no Owner filed )
If you need to use same sharing rules in both object Because child has inherit from parent.
If you need that without parent detail record is never being created.
Now why LookUp
If you don't need cascade delete.
Lookups are generally for use where you may or may need to have a relationship between two objects (but not always).
Lookups are generally used to reference commonly shared data, such as reference data.
Lookups are used to link two objects together when you don't want the behaviour of the master-detail - particularly around sharing rules, profile permissions and cascade delete.
There is many reason to use Master detail (MD) and also to use LookUp --
-
If you need RollUp summary then use MD
-
If you need cascade delete then use MD
-
If you want parent field required in child record then use MD
-
If you want only one Owner of both parent and Child then use MD. ( Because in MD child have no Owner filed )
-
If you need to use same sharing rules in both object Because child has inherit from parent.
-
If you need that without parent detail record is never being created.
Now why LookUp-
If you don't need cascade delete.
-
Lookups are generally for use where you may or may need to have a relationship between two objects (but not always).
-
Lookups are generally used to reference commonly shared data, such as reference data.
-
Lookups are used to link two objects together when you don't want the behaviour of the master-detail - particularly around sharing rules, profile permissions and cascade delete.
RegardsVirendra