Can we have a bpmn diagram without endevent?

If we create a bpmn diagram without endevent, will process engine execute the processdefintion or it will throw exception? is it always need to have end event in bpmn diagram?

Best practice suggests that you should ALWAYS have one - but it was not cause an error if it isn’t there.

In this case status of all the process instances of processdefinition will be always active and the data will be available ACT_RU* tables. it will be huge load for runtime task right? and the process instance never goes to status called completed right?

No - it acts like an implicit end event. The process will not be in the Runtime DB