Why does Pimcore create multiple tables for a just single class?

#1

Why does Pimcore create multiple tables/views for a class?
What are the difference among them?
What are the tables/views that can be used in our custom raw sql queries and why?

#2

https://pimcore.com/docs/5.x/Development_Documentation/Development_Tools_and_Details/Database_Model.html